Der Mythos vom Re-Use Was ist dran an der Wiederverwendung? Uwe Friedrichsen, codecentric GmbH SET 2009, Zürich, 5. Mai 2009
Uwe Friedrichsen Architect Consultant Project Manager Coach Software Architecture Enterprise Architecture Agility Manager Consulting codecentric GmbH 2
Agenda Promise & Reality Why doesn t it work? Why doesn t it matter? What s the real Issue? What do we learn from it? How do I explain it to my Boss/Customer? Summary 3
Reuse Promise Reality 4
Agenda Promise & Reality Why doesn t it work? Why doesn t it matter? What s the real Issue? What do we learn from it? How do I explain it to my Boss/Customer? Summary 5
Reasons for the Failure Corporate Organisation & Corporate Culture Fred Brooks Rule of 9 NIH-Syndrom (Not invented here) Efficiency of the Business Domain 6
Reuse Maturity Graph Business Domain Technical Concept Optimised Abstraction Level Business Service Technical Service Organisation Framework Collection Classes Code Ad hoc Coarse Granularity Fine Based on the Reuse Maturity Matrix, Don Kavanagh 1996 7
Agenda Promise & Reality Why doesn t it work? Why doesn t it matter? What s the real Issue? What do we learn from it? How do I explain it to my Boss/Customer? Summary 8
Lifecycle of IT Systems Construction Phase Production & Maintenance Phase Begin of Lifecycle Go Live Source: Koskinen, J. 2003. Software Maintenance Cost. http://www.cs.jyu.fi/~koskinen/smcosts.htm End of Lifecycle 15% 85% 9
Potential of Reuse Scope of Reuse 10
Agenda Promise & Reality Why doesn t it work? Why doesn t it matter? What s the real Issue? What do we learn from it? How do I explain it to my Boss/Customer? Summary 11
The big Leverage Unused Potential 12
Design for Maintenance Design must serve Maintenance in the first Place and not Construction 13
Agenda Promise & Reality Why doesn t it work? Why doesn t it matter? What s the real Issue? What do we learn from it? How do I explain it to my Boss/Customer? Summary 14
Doing it wrong Dynamics of Change Demands of Construction 15
Doing it wrong Dynamics of Change Demands of Construction 16
Doing it wrong Dynamics of Change Demands of Construction 17
Doing it right Dynamics of Change Demands of Construction 18
Doing it right Dynamics of Change Demands of Construction 19
Doing it right Dynamics of Change Demands of Construction 20
Summary Doing it right & wrong Dynamics of Change Dynamics of Change Demands of Construction Demands of Construction Dynamics of Change Dynamics of Change Demands of Construction Demands of Construction 21
Reality is not two-dimensional Dynamics of Change Demands of Construction 22
Keep the Balance Dynamics of Change Demands of Construction 23
Implementation Hints Business first Observe the Flow of the Change Requests Loose Coupling starts at the Business Level Decouple Business and Technology Be careful with Layer Architecture Be careful with generic Solutions Verify your Architecture on a regular Basis 24
Agenda Promise & Reality Why doesn t it work? Why doesn t it matter? What s the real Issue? What do we learn from it? How do I explain it to my Boss/Customer? Summary 25
Use the Leverage of the Potential 26
Agenda Promise & Reality Why doesn t it work? Why doesn t it matter? What s the real Issue? What do we learn from it? How do I explain it to my Boss/Customer? Summary 27
Summary Reuse usually does not work as advertised The real Issue are the Maintenance Costs Design for Maintenance Dynamics of Change There is no Silver Bullet 28
Discussion Backup 29
Contact Uwe Friedrichsen Manager Consulting codecentric GmbH Merscheider Straße 1 42699 Solingen Germany Phone +49 (0)212 233 628-66 Fax +49 (0)212 233 628-99 Mobile +49 (0)160 90 62 66 00 friedrichsen@codecentric.de http://www.codecentric.de 30
Thanks for your Attention! codecentric GmbH Merscheider Straße 1 42699 Solingen Phone +49-212-233628-0 Fax +49-212-233628-79 Email info@codecentric.de 31