320 likes | 541 Views
Y Cathedral Bazaar and Bridge are competing Software Engineering Metaphors. SERG Software Engineering Research Group University of Auckland. Presentation by Wolfgang Fahl, BIT Plan 2008-11-28. Agenda. Introduction: W. Fahl/BITPlan What are Metaphors & Maxims?
E N D
Y Cathedral Bazaar and Bridge are competing Software Engineering Metaphors SERGSoftware Engineering Research GroupUniversity of Auckland Presentation by Wolfgang Fahl, BITPlan2008-11-28
Agenda • Introduction: W. Fahl/BITPlan • What are Metaphors & Maxims? • Software Engineering Metaphors & Maxims – a guided tour • Raffle • Summary & Conclusion • Discussion
Wolfgang Fahl • Wolfgang Fahl • Computer ScientistRWTH Aachen, Germany • President iSAQB • CEO BITPlan
Agenda • Introduction: W. Fahl/BITPlan • What are Metaphors & Maxims? • Software Engineering Metaphors & Maxims – a guided tour • Raffle • Summary & Conclusions • Discussion
What is a Metaphor? • describe one thing by using another thing (the metaphor) as a helping device to do so • knowledge of implicit and explicit attributes of the metaphor is used to „transfer“ this knowledge to the target subject • differences cause a dilemma – they can be useful if discussed and harmful if they are not recognized
What is a Maxim? • GuidelineNon mandatory streamline of particular processes according to a set routine • MoralMessage conveyed or learned from a story or event • MaximA principle or rule. A wise saying to advise a recommended course of conduct
Agenda • Introduction: W. Fahl/BITPlan • What are metaphors & guidelines? • Software Engineering Metaphors & Maxims – a guided tour • Raffle • Summary & Conclusions • Discussion
SE Metaphors & Maxims • It‘s broken anyway • Phaedrus‘s knife • Architecture • The Cathedral • Engineering • The Bridge • The Factory • The Y • The Bazaar
It‘s broken anyway • The software is broken anyway ... • How can we make sure it doesn‘t harm anybody?
Phaedrus‘s knife What is Analysis? Three methods of organization that pervade all human thinking: • Objects - Attributes • Whole - Part • Groups – Members
Phaedrus‘s knife:Analysis • Model – a representation of the real world • Model – a construction plan
Architecture • Loads • Materials • Style • Purpose • Optimization
The Cathedral „Have you drawn your plans, Tom Builder?“
In the 10 th century buildings where created using rough stones, which were put together to thick walls using mortar. Castles: rough stones
The stones are unevenly shaped and the individually distributed mortar creates the connection between them. Gaps are filled manually
Walls created from precisely cut stones are lighter and still more stable. This approach leads to higher, more beautiful and less costly* buildings Cathedrals - cut stones * it‘s possible to add more extra art and glass now
Before and during build time master builder and owner discuss details using models Planning leads to predictability and feasibility A style emerges Model, Planning, Style
What did the creators of the Eiffel tower know about the finished tower at the time when this picture was taken? Engineering
The Forth Bridge is overdesigned since the builders could not exactly tell how much material was necessary for a long term safe and reliable operation Too much of a good thing
The Bridge Bridge between man and computer
The abstraction trap More abstraction does not lead to closing the gap between humans and the computer
The Factory • Mass production • Lean production • Quality control • Built-to-order • Service centered selling
Domain specific Requirements Technical Requirements Y DomainModel ArchitectureModel Mapping rules ImplementationDomain code uses architecture code The Y-Principle PIM PDescM PSM (only implicit)
The Cathedral & the BazaarThe Linux success Homesteading the Nusphereproperty and ownership customs of the OSS community The magic cauldron Tragedy of the commons – the inverse commonsOSS economy The Bazaar
Agenda:Raffle • Introduction: W. Fahl/BITPlan • What are metaphors & guidelines? • Software Engineering Metaphors & Maxims – a guided tour • Raffle • Summary & Conclusions • Discussion
Agenda • Introduction: W. Fahl/BITPlan • What are metaphors & guidelines? • Software Engineering Metaphors & Guidelines – a guided tour • Raffle • Summary & Conclusions • Discussion
Summary • Shift towards Architecture / Engineering • Models as balance of analysis result & construction plan • „Real world“ projects don‘t seem to fit the methapors (yet?) • Metaphors are a common approach to describe complex interactions (Jazz-Band/Orchestra, ... Lego, ...)
Conclusions • Decision making is the key process in software engineering • The shown Maxims and Metaphors give an idea for possible decision making approaches
Agenda • Introduction: W. Fahl/BITPlan • What are metaphors & guidelines? • Software Engineering Metaphors & Maxims – a guided tour • Summary & Conclusions • Discussion
Enjoy your software project! Pater-Delp-Str. 1 D-47877 Willich Germany Fon +49 2154 811-480, Fax –481 http://www.bitplan.commailto:info@bitplan.com