Institut Experimentelles Software Engineering Fraunhofer IESE Klaus Schmid Relating Product Line Adoption Mode and Transition Process.

Slides:



Advertisements
Similar presentations
JUNE 2007 page 1 EDS Proprietary Applications Modernization Services Modernizing the Applications Portfolio.
Advertisements

Unit 2. Software Lifecycle
The software process A software process is a set of activities and associated results which lead to the production of a software product. This may involve.
Building an Operational Enterprise Architecture and Service Oriented Architecture Best Practices Presented by: Ajay Budhraja Copyright 2006 Ajay Budhraja,
12 Inventory Management.
The Comparison of the Software Cost Estimating Methods
1 Independent Verification and Validation Current Status, Challenges, and Research Opportunities Dan McCaugherty IV&V Program Manager Titan Systems Corporation.
Copyright © 2003 Software Quality Research Laboratory Software Production Essentials Seeing Past the Buzz Words.
©2011 Rolls-Royce plc The information in this document is the property of Rolls-Royce plc and may not be copied or communicated to a third party, or used.
Software Engineering General Project Management Software Requirements
©Ian Sommerville 2000Software Engineering, 6th edition. Chapter 4 Slide 1 COMP201 Project Management.
1 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by.
Dr. Ralph R. Young Director of Software Engineering PRC, Inc. (703) Fifth IEEE International Symposium on Requirements Engineering.
Presentation Title: Utilizing Business Process Management (BPM) and Enterprise Architecture (EA) to Achieve and Maintain a Competitive Advantage Presented.
Testing Components in the Context of a System CMSC 737 Fall 2006 Sharath Srinivas.
1 SOFTWARE PRODUCTION. 2 DEVELOPMENT Product Creation Means: Methods & Heuristics Measure of Success: Quality f(Fitness of Use) MANAGEMENT Efficient &
SE 555 Software Requirements & Specification 1 SE 555 Software Requirements & Specification Prototyping.
Domain-Specific Software Engineering Alex Adamec.
Computer Systems & Architecture Lesson Software Product Lines.
Chapter 9 – Software Evolution and Maintenance
Developing Enterprise Architecture
Chapter : Software Process
SEI´S Software Product Line Tenets Linda M. Northrop Software Engineering Institute IEEE Software July/August 2002.
Pricing Personal Account Guarantees: A Simplified Approach October 21, 2006 Andrew Biggs, SSA Clark Burdick, SSA Kent Smetters, Wharton School.
©Ian Sommerville 2000Software Engineering, 7th edition. Chapter 5 Slide 1 Chapter 5 Project Management Modified by Randy K. Smith.
Institut Experimentelles Software Engineering Fraunhofe r IESE Andreas Birk Ulrike Becker-Kornstaedt Sauerwiesen 6 D Kaiserslautern Germany Experience.
Object-oriented Software Engineering with Reuse Contracts Koen De Hondt, Carine Lucas, Kim Mens, Tom Mens, Patrick Steyaert, Roel Wuyts Programming Technology.
Engineering, Operations & Technology | Information TechnologyAPEX | 1 Copyright © 2009 Boeing. All rights reserved. Architecture Concept UG D- DOC UG D-
Enhanced Annuities, Individual Underwriting, and Adverse Selection August 6, Enhanced Annuities, Individual Underwriting, and Adverse Selection.
Software Project Management Lecture # 8. Outline Earned Value Analysis (Chapter 24) Topics from Chapter 25.
CSE 303 – Software Design and Architecture
1 Process Engineering A Systems Approach to Process Improvement Jeffrey L. Dutton Jacobs Sverdrup Advanced Systems Group Engineering Performance Improvement.
The Challenge of IT-Business Alignment
The Software Product Line Architectures
©Ian Sommerville 2000 Software Engineering, 6th edition. Slide 1 Component-based development l Building software from reusable components l Objectives.
©Ian Sommerville 2000, Mejia-Alvarez 2009 Slide 1 Software Processes l Coherent sets of activities for specifying, designing, implementing and testing.
Capability Maturity Models Software Engineering Institute (supported by DoD) The problems of software development are mainly caused by poor process management.
PAPER PRESENTATION: EMPIRICAL ASSESSMENT OF MDE IN INDUSTRY Erik Wang CAS 703.
CSI - Introduction General Understanding. What is ITSM and what is its Value? ITSM is a set of specialized organizational capabilities for providing value.
EVALUATING PAPERS KMS quality- Impact on Competitive Advantage Proceedings of the 41 st Hawaii International Conference on System Sciences
© The McGraw-Hill Companies, Software Project Management 4th Edition Risk management Chapter 7.
Software Engineering Principles Principles form the basis of methods, techniques, methodologies and tools Principles form the basis of methods, techniques,
Architectural Design lecture 10. Topics covered Architectural design decisions System organisation Control styles Reference architectures.
©Ian Sommerville 2000 Slide 1 Project management l Organising, planning and scheduling software projects l Objectives To introduce software project management.
Assessing the influence on processes when evolving the software architecture By Larsson S, Wall A, Wallin P Parul Patel.
L8 - March 28, 2006copyright Thomas Pole , all rights reserved 1 Lecture 8: Software Asset Management and Text Ch. 5: Software Factories, (Review)
Chapter 10 Analysis and Design Discipline. 2 Purpose The purpose is to translate the requirements into a specification that describes how to implement.
Experiences with certification of reusable components in the GSN project in Ericsson, Norway Parastoo Mohagheghi and Reidar Conradi Dept. Computer and.
COOP Seminar – Fall 2008 Slide 1 HOUSTON COMMUNITY COLLEGE SYSTEM SAIGONTECH SAIGON INSTITUTE OF TECHNOLOGY Software Project Management.
Chapter 3 Project Management Chapter 3 Project Management Organising, planning and scheduling software projects.
The Role of Experience in Software Testing Practice Zahra Molaei Soheil Hedayatitezengi Comp 587 Prof. Lingard 1 of 21.
Software Product Line Material based on slides and chapter by Linda M. Northrop, SEI.
Frameworks CompSci 230 S Software Construction.
Chap 4. Project Management - Organising, planning and scheduling
1 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 5 Slide 1 Project management.
Copyright © , Dennis J. Frailey, All Rights Reserved Day 2, Part 1, Page 1 1/11/2004 Day 2, Part 1 Estimating Software Size Section 2 Calculating.
Continual Service Improvement Methods & Techniques.
Overview of Addressing Risk with COSYSMO Garry Roedler & John Gaffney Lockheed Martin March 17, 2008.
1 Requirements Engineering for Agile Methods Lecture # 41.
Enterprise Architectures Course Code : CPIS-352 King Abdul Aziz University, Jeddah Saudi Arabia.
Product Line Architecture. Systems Systems often come in families: basic, regular, professional, enterprise,… Can we share components? Is architecture.
Project Evaluation and Programme Management
Applications Modernization Services
Requirement Prioritization
Andy Nolan1, Silvia Abrahão2 Paul Clements3,
CS 425/625 Software Engineering Software Evolution
Assessing Risk Impact Factors affecting the consequences Nature Scope
Dependency Inversion principle
Presentation transcript:

Institut Experimentelles Software Engineering Fraunhofer IESE Klaus Schmid Relating Product Line Adoption Mode and Transition Process PLEES Workshop 23. September, 2003

Copyright © Fraunhofer IESE 2003 Relating Product Line Adoption Mode and Transition Process Erfurt, 2003 IESE Slide 1 Overview 1.Product Line Adoption Situations 2.Adoption Strategies –Adoption Patterns –Resulting Economic Patterns 3.Product Line Planning Techniques –PL Planning and its Relation to Adoption and Evolution 4.An Economic Model to Optimize Product Line Adoption 5.Summary

Copyright © Fraunhofer IESE 2003 Relating Product Line Adoption Mode and Transition Process Erfurt, 2003 IESE Slide 2 Product Line Adoption Situations Independent No previous systems Entering a new market / domain / sub-domain Willingness to develop systems from scratch Project-Integrating Systems exist System-Development needs to continue Reengineering-Driven Systems exist - but no basis for PL Knowledge is insufficient / other means are too costly Leveraged — characteristics of previous ones Product Line in Place Entering a new market / domain / sub-domain How to introduce product lines? Market 2 Market 1

Copyright © Fraunhofer IESE 2003 Relating Product Line Adoption Mode and Transition Process Erfurt, 2003 IESE Slide 3 Product Line Adoption Patterns Big Bang You plan it — You do it. Number of Products Effort Product Line Development Investment Incremental Product Line development Incremental You build it on your way Dimensions of Incrementality: products functional areas (sub-domains)

Copyright © Fraunhofer IESE 2003 Relating Product Line Adoption Mode and Transition Process Erfurt, 2003 IESE Slide 4 Product Line Adoption Economics Big Bang  Incremental Jumps in incremental –correspond to investments in migrating to product line assets –total sum higher than in big bang Lines –correspond to products built with partial infrastructure Number of Products Effort Optimal Curves Angle –reduced in each investment –final angle still steeper –go for best ROI first (if risk controllable) — best reduction of angle Endpoint –higher for incremental Why to go for incremental anyway? Risk control!!

Copyright © Fraunhofer IESE 2003 Relating Product Line Adoption Mode and Transition Process Erfurt, 2003 IESE Slide 5 How Do I Plan For Product Line Adoption?

Copyright © Fraunhofer IESE 2003 Relating Product Line Adoption Mode and Transition Process Erfurt, 2003 IESE Slide 6 Product Line Evolution Situations Relation to Evolution? How much deviation do I allow? Deviation  Re-adoption Types of Deviation Infrastructure-Based No deviation Everything goes through reuse infrastructure Branch-and-Unite Systems are split of the basis and re-integrated after being built Bulk Integration Product Line in Place Large diversions occur How to evolve product lines? Ideal Few systems, implications unclear Don’t Do It!

Copyright © Fraunhofer IESE 2003 Relating Product Line Adoption Mode and Transition Process Erfurt, 2003 IESE Slide 7 How Do I Plan For Product Line Evolution?

Copyright © Fraunhofer IESE 2003 Relating Product Line Adoption Mode and Transition Process Erfurt, 2003 IESE Slide 8 Product Line Planning Techniques Product Portfolio Planning Define what the products are Interface with product management / Market concerns Typically workshops Domain Potential Analysis Identify benefits and risks related them to functional sub-domains Assessment Approaches (e.g., PuLSE-B&R) Reuse Infrastructure Scoping Identify parts that should be packaged as reusable assets (  architecture impact) Rather fine-grained analysis Closest to implementation

Copyright © Fraunhofer IESE 2003 Relating Product Line Adoption Mode and Transition Process Erfurt, 2003 IESE Slide 9 PL Planning and Its Relation to Adoption

Copyright © Fraunhofer IESE 2003 Relating Product Line Adoption Mode and Transition Process Erfurt, 2003 IESE Slide 10 Value-Based Adoption and the Architecture Impact of product characteristics on the architecture: How often will we need a certain variation? How certain is it, we will need it? What are the costs of variation mechanisms? Assumptions: Adding variabilities costs effort (variability mechanism + effort capability) More generic code is more complex, thus more costly to maintain Late implementation is more costly than if it was planned right away The less „places“ a change impacts, the less costly Architecting for a functionality reduces the number of impacted positions Discounted Cash-Flow Analysis

Copyright © Fraunhofer IESE 2003 Relating Product Line Adoption Mode and Transition Process Erfurt, 2003 IESE Slide 11 Value-Based Adoption and the Architecture Example Some functionality (in our case distribution support) can be required: –We are not sure –The support is costly to build –It can not always be present What to do? The numbers are taken from the example, but the basic characteristics of the functions relate only to their structure

Copyright © Fraunhofer IESE 2003 Relating Product Line Adoption Mode and Transition Process Erfurt, 2003 IESE Slide 12 Value-Based Adoption and the Architecture Is up-front introduction of variability better? – The number of impacted positions (i.e., the architecture) is key to answer this question! VIP = variability impact point There is a gap between up-front and later introduction

Copyright © Fraunhofer IESE 2003 Relating Product Line Adoption Mode and Transition Process Erfurt, 2003 IESE Slide 13 Value-Based Adoption and the Architecture The effect of probability – Only for very low probabilities the total costs are reduced

Copyright © Fraunhofer IESE 2003 Relating Product Line Adoption Mode and Transition Process Erfurt, 2003 IESE Slide 14 Value-Based Adoption and the Architecture Changing the architecture changes the approach – Up-front architecting might be appropriate even if up-front implementation is not!! Architecture advantage

Copyright © Fraunhofer IESE 2003 Relating Product Line Adoption Mode and Transition Process Erfurt, 2003 IESE Slide 15 Conclusion and Further Work Conclusions Categorizations of product line adoption situations were given and different approaches for dealing with them were discussed Detailed recommendations for product line planning were given –Planning Look-Ahead –Relative Importance of Scoping Techniques A quantitative model was proposed that allows to derive more detailed guidelines –Amount of effort required for variability –Probability that it is needed –Characteristics of underlying development process (e.g., change effort)