100 likes | 232 Views
Three Case Studies on Initiating Product Lines: Enablers and Obstacles. Dr. Andreas Birk sd&m AG, Stuttgart, Germany Andreas.Birk@sdm.de PLEES 2002 Workshop Seattle, November 5, 2002. Hamburg. Berlin. Dusseldorf. Cologne/Bonn. Frankfurt. Stuttgart. Munich. Zurich. sd&m at a Glance.
E N D
Three Case Studies on Initiating Product Lines: Enablers and Obstacles Dr. Andreas Birk sd&m AG, Stuttgart, Germany Andreas.Birk@sdm.de PLEES 2002 Workshop Seattle, November 5, 2002
Hamburg Berlin Dusseldorf Cologne/Bonn Frankfurt Stuttgart Munich Zurich sd&m at a Glance • sd&m AG (corporation)software design & management • Founded in 1982 • 906 Employees (2001) • Revenues: 138 Million € (2001) • Shareholder: Cap Gemini Ernst & Young • sd&m developscustom software solutions for business information systems and technical applications • sd&m‘s core competence is to execute complex projects well • sd&m does not sell standard software packages
Examples of sd&m Development Projects Client Project Effort AOK Sales Management System 5 Bayerische Landesbank Re-engineering Foreign Currency Accounting 12 BMW Warranty System 15 Commerzbank Payment Transactions System 96 CTS Eventim Ticketing System 17 DaimlerChrysler Global Ordering 200 * DeTeMedien Internet Telephone Directory and Yellow Pages 15 Deutsche Telekom Network Management 35 Dresdner Bank Corporate Banking 30 * HypoVereinsbank Bond Trading 11 InFoScore Collection Processing 50 * REAL I.S. Real Estate Fund Management 15 Roche Diagnostics Laboratory Systems Manager 35 RWE Meter Management 40 * T-Mobile Mobile Telephone Order Processing 80 T-Online CMS Implementation and Corp. Portal Redesign 15 Thomas Cook Touristic Processing System 170 * ThyssenKrupp Stahl Integrated Order Management 120 Versicherungskammer Bayern Business Partner Management 12 Volkswagen Progressive Production Order Release 10 * * Effort expended (in total number of man-years, including client contribution), project management by sd&m.
Software Product Lines at sd&m • sd&m develops SPLs for its clients • sd&m maintains a SPL across different custom information systems • Different functionalities but common architectural properties • Three examples and case studies • UI framework components for SPL of embedded systems • National variants of corporate-wide information system • sd&m standard architecture for information systems (QUASAR)
Observations from sd&m Projects • There are many opportunities for SPL engineering across the industry • Clients might be unaware of SPL opportunities • High flexibility and SE competence needed to take SPL opportunities • Create SPL awareness at sponsor organization and in project team • Root SPL in the development practices of the project or organization
Incremental versus Pro-Active Scoping • When incremental scoping can be mandatory • New product: Core features might not be clear, initially • New technology: Architecture might not yet be stable • Pro-active scoping might be too expensive • Customers might not be available • Sponsors might not be aware of SPL opportunities
Incremental versus Pro-Active Scoping • How not to do incremental scoping • Never attempt to build a SPL core on one product variant only • How to do incremental scoping • Gradual „peeling“ of the SPL core from successive product variants • Outline an initial SPL core and refactor frequently • Develop process-related core assets in sync with code-related ones
Technical versus Functional Core Assets QUASAR: sd&m Quality Software Architecture • Generic architecture • Software components • Reusable documentation • Development practices • Education and training • Every custom information system has unique functionality • But most of them share common technical and architectural properties >>Technical Core Assets reuse architectural core assets abstract common architectural properties
Example of SPL Developed by sd&m for a Client Customer A Customer B Customer C Customer Requirements SW- System SW- System SW- System Client Delivery sd&m Framework- Components(Gen. 1) Framework- Components(Gen. 3) Framework- Components(Gen. 2)