A Framework for Software Product Line Practice, Version 5.0
A product line is a set of products that together address a particular market segment or fulfill a particular mission. Product flexibility is the anthem of the software marketplace, and product lines fulfill the promise of tailor-made systems built specifically for the needs of particular customers or customer groups. A product line succeeds because the commonalities shared by the software products can be exploited to achieve economies of production. The products are built from common assets in a prescribed way.
This document describes a framework for product line development. The framework describes the essential activities and practices, in both the technical and organizational areas, in which an organization must be competent before it can reap the maximum benefit from fielding a product line of software or software-intensive systems. The goals of this framework are to
- identify the foundational concepts underlying software product lines and the essential activities to consider before developing a product line
- identify practice areas that an organization developing software product lines must master
- define example practices in each practice area
- provide guidance to an organization about how to move to a product line approach for software