SEI´S Software Product Line Tenets Linda M. Northrop Software Engineering Institute IEEE Software July/August 2002.

Slides:



Advertisements
Similar presentations
Software Quality Assurance Plan
Advertisements

Virtual University - Human Computer Interaction 1 © Imran Hussain | UMT Imran Hussain University of Management and Technology (UMT) Lecture 16 HCI PROCESS.
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.
Chapter 22 Product Line Engineering Week 1 CIS 673.
Software Reuse SEII-Lecture 28
Chapter 2 The Software Process
Case studies1. 2 Automating a law office Case studies3 Lessons learned Good intuition and technical skills are not enough to guarantee success Marketing.
Sponsored by the U.S. Department of Defense © 2004 by Carnegie Mellon University page 1 Pittsburgh, PA Integrating Domain Specific Modeling.
A framework for describing IT Project Management Processes and Tool Set Features Enterprise Project Management Framework.
Azad Madni Professor Director, SAE Program Viterbi School of Engineering Platform-based Engineering: Rapid, Risk-mitigated Development.
Interoperability. Martin Sykes Information architecture programs suffer from EA's worst problem: They have a strategic and enterprisewide focus that.
Software Product Lines
1 R&D SDM 1 Software Project Management Capability Maturity Model 2009 Theo Schouten.
Iterative development and The Unified process
Planning. SDLC Planning Analysis Design Implementation.
Software Product Lines Krishna Anusha, Eturi. Introduction: A software product line is a set of software systems developed by a company that share a common.
Product Line Approaches in Software Engineering April 29, 2013 Sophia Wu.
Architecture and Software Product Lines A software architecture represents a significant investment of time and effort, usually by senior talent. So it.
Computer Systems & Architecture Lesson Software Product Lines.
© 1998 Concept Five Technologies Enterprise Application Integration Capability Maturity Model.
® IBM Software Group © 2006 IBM Corporation PRJ480 Mastering the Management of Iterative Development v2 Module 3: Phase Management - Inception.
What is Business Analysis Planning & Monitoring?
Chapter : Software Process
CPSC 871 John D. McGregor Module 5 Session 2 Software Product Lines.
Integrated Capability Maturity Model (CMMI)
Don Von Dollen Senior Program Manager, Data Integration & Communications Grid Interop December 4, 2012 A Utility Standards and Technology Adoption Framework.
Introduction to RUP Spring Sharif Univ. of Tech.2 Outlines What is RUP? RUP Phases –Inception –Elaboration –Construction –Transition.
Investment Portfolio Methodologies Pertemuan Matakuliah: A Strategi Investasi IT Tahun: 2009.
What is Software Engineering?. Software engineering Multi-person construction of multi-version software (David Parnas) An engineering discipline whose.
Chapter 2 The process Process, Methods, and Tools
Institut Experimentelles Software Engineering Fraunhofer IESE Klaus Schmid Relating Product Line Adoption Mode and Transition Process.
Thirteenth Lecture Hour 8:30 – 9:20 am, Sunday, September 16 Software Management Disciplines Process Automation (from Part III, Chapter 12 of Royce’ book)
1 Chapter 2 The Process. 2 Process  What is it?  Who does it?  Why is it important?  What are the steps?  What is the work product?  How to ensure.
The Software Product Line Architectures
1 ISA&D7‏/8‏/ ISA&D7‏/8‏/2013 Systems Development Life Cycle Phases and Activities in the SDLC Variations of the SDLC models.
JVB-STC'97- 1 #*#* Successful Adoption and Use of Object Oriented Technologies STC ‘97 April 30, 1997 Jim Van Buren.
Introduction to Software Engineering LECTURE 2 By Umm-e-Laila 1Compiled by: Umm-e-Laila.
Software Engineering Lecture # 17
SOFTWARE REUSABILITY AJAYINDER SINGH CSC What is Software Reuse Software reuse is the process of implementing or updating software systems using.
Module 4: Systems Development Chapter 12: (IS) Project Management.
Product Documentation Chapter 5. Required Medical Device Documentation  Business proposal  Product specification  Design specification  Software.
Software process improvement Framework for SPI SPI support groups, maturity and immaturity models Assessment and gap analysis Education and training Selection.
Introducing Software Product Lines (SPL) Silvio Romero de Lemos Meira Eduardo Santana de Almeida
6/6/01 1 Copyright 2001 by Ralph R. Young Effective Requirements Practices Designed to improve individual, project, and organizational effectiveness. Based.
Software Product Line Material based on slides and chapter by Linda M. Northrop, SEI.
CEN5011, Fall CEN5011 Software Engineering Dr. Yi Deng ECS359, (305)
Rational Unified Process (RUP) Process Meta-model Inception Phase These notes adopted and slightly modified from “RUP Made Easy”, provided by the IBM Academic.
Software from Requirements Brent Haines April 12, 2007 Why Methodology Doesn’t Really Matter.
Introduction to Project Management.  Explain what a project is?  Describe project management.  Understand project management framework.  Discuss the.
An organizational structure is a mostly hierarchical concept of subordination of entities that collaborate and contribute to serve one common aim... Organizational.
Software Engineering (CSI 321) Software Process: A Generic View 1.
1 Lecture 2.4a: SEF SE Planning and the SEP (SEF Ch 16) Dr. John MacCarthy UMBC CMSC 615 Fall, 2006.
Software Packaging for Reuse James Marshall (INNOVIM), Code 614.5, NASA GSFC The Software Packaging for Reuse document (version 1.0), developed and recently.
SwCDR (Peer) Review 1 UCB MAVEN Particles and Fields Flight Software Critical Design Review Peter R. Harvey.
RUP RATIONAL UNIFIED PROCESS Behnam Akbari 06 Oct
Cmpe 589 Spring Fundamental Process and Process Management Concepts Process –the people, methods, and tools used to produce software products. –Improving.
IT-301 Project Management I: Unit 4: Cost Management.
Configuration Control (Aliases: change control, change management )
Product Line Architecture. Systems Systems often come in families: basic, regular, professional, enterprise,… Can we share components? Is architecture.
Strategic Information Systems Planning
Pragmatics 4 Hours.
Software Risk Management
Product Line Engineering Road Show
Chapter 25: Architecture and Product Lines
Software Architecture in Practice
Software Engineering I
Mumtaz Ali Rajput +92 – SOFTWARE PROJECTMANAGMENT– WEEK 4 Mumtaz Ali Rajput +92 – 301-
DOD’S PHASED SYSTEM DEVELOPMENT PROCESS
A Case Study of Variation Mechanism in an Industrial Product Line
Presentation transcript:

SEI´S Software Product Line Tenets Linda M. Northrop Software Engineering Institute IEEE Software July/August 2002

What is a Product Line? “A set of software-intensive systems that share a common, managed feature set satisfying a particular market segment´s specific needs or mission and that are developed from a common set of core assets in a prescribed way”.

Core Assets Basis for the software product line –Architeture –Reusable Components –Domain Models –Requirements –Schedules –Budgets –Test plans –Process descriptions –And more

Essential Product line activities

Management Technical management: core assets development and product development activities Organizational management: a funding model that ensures core asset evolution & orchestrates the technical activities and iterations between core asset development and product development. Important! PRODUCT LINE MANAGER

Software product line practice areas A practice area is a body of work or a collection of activities. Defines activities that are smaller and more tractable than a broad imperative such as “Develop core assets.”

Software Engineering practice areas Architecture Definition Architecture Evaluation Component Development COTS Utilization Mining Existing Assets Requirements Engineering Software System Integration Testing Understanding Relevant Domains

Technical management practice areas Configuration Management Data Collection, Metrics, and Tracking Make/Buy/Mine/Commission Analysis Process Definition Scoping Technical Planning Technical Risk Management Tool Support

Organizational management practice areas Building a Business Case Customer Interface Management Developing an Acquisition Strategy Funding Launching and Institutionalizing Market Analysis Operations Organizational Planning Organizational Risk Management Structuring the Organization Technology Forecasting Training

Product line practice patterns

Lessons learned defining the approach Product line business practices cannot be affected without explicit management commitment and involvement. Organization size doesn’t matter. Reuse has a bad reputation in many organizations owing to the failure of earlier small-grained reuse initiatives. Organizations often want an evaluation of their product line efforts. Process discipline is critical.

The Economic Impact of Product Line Adoption and Evolution Klaus Schmid, Fraunhofer IESE Martin Verlage, Market Maker Software AG

Big Bang approach X Incremental approach

Product Line line investment curves

Situations for adopting PLE Independent: from scratch Project-Integrating Reengineering-driven: Legacy systems, nontrivial effort Leveraged: a new product line based on a existent one

Independent Adoption Technical feasibility studies Detailed market analysis Control overall uncertainty Project-integration adoption Key components are sucessively generalized into reusable components When is impossible to derive new Products from available systems Reengineering-driven adoption Leveraged adoption Address a new market segment with low costs and few risks. Must perform risk and technical analysis

Product line evolution Infrastrucuture-based evolution : new requirements lead to generalization for PL infrastructure. Branch-and-unite : new version branch for a new variant and reunifies with the infrastructure after product release. Bulk : larger branching (avoid!)

Product line planning techniques  Product portfolio scoping : Which products shall be part of the product line?  Domain-based scoping : Which technical areas (domains) provide good opportunities for PL reuse?  Reuse infrastructure scoping : Which functionalities should the reuse infrastrucutre support?

Product Line Tenets Economic Impact Essential Product line activitiesProduct Line line investment curves Product Line evolutionPractice Areas Situations for adopting PLE Product Line PlanningPractice Areas Patterns