Title: SEIS Software Product Line Tenets
1SEIS Software Product Line Tenets
- Linda M. Northrop
- Software Engineering Institute
- IEEE Software July/August 2002
2What is a Product Line?
- A set of software-intensive systems that share
a common, managed feature set satisfying a
particular market segments specific needs or
mission and that are developed from a common set
of core assets in a prescribed way.
3Core Assets
- Basis for the software product line
- Architeture
- Reusable Components
- Domain Models
- Requirements
- Schedules
- Budgets
- Test plans
- Process descriptions
- And more
4Essential Product line activities
5(No Transcript)
6(No Transcript)
7Management
- 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
8Software 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.
9Software Engineering practice areas
- Architecture Definition
- Architecture Evaluation
- Component Development
- COTS Utilization
- Mining Existing Assets
- Requirements Engineering
- Software System Integration
- Testing
- Understanding Relevant Domains
10(No Transcript)
11Technical 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
12Organizational 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
13Product line practice patterns
14Lessons learned defining the approach
- Product line business practices cannot be
affected without explicit management commitment
and involvement. - Organization size doesnt 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.
15The Economic Impact of Product Line Adoption and
Evolution
- Klaus Schmid, Fraunhofer IESE
- Martin Verlage, Market Maker Software AG
16Big Bang approach XIncremental approach
17Product Line line investment curves
18Situations for adopting PLE
- Independent from scratch
- Project-Integrating
- Reengineering-driven Legacy systems, nontrivial
effort - Leveraged a new product line based on a existent
one
19(No Transcript)
20Product 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!)
21(No Transcript)
22Product 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?
23(No Transcript)
24Product Line Tenets
Economic Impact
Situations for adopting PLE