The key to successful software product lines is systematic management of planned variations across the product line, while exploiting the commonalities. This commonality permits reuse of a multitude of shared assets, including everything from architecture and reusable components, schedules and budgets, test cases and performance modeling, training and documentation, to marketing plans and literature. When building a new product in a product line, programming is de-emphasized. Rather, composition or generation is the theme. Test and integration are much less treacherous than when building a new system from scratch.
Reliability is enhanced because the reusable parts have been used in systems before.
Cost and development time are slashed because the bulk of the development effort for any single product is largely accounted for in the reusable assets, whose cost is distributed across all members of the product line. Time to market goals are reachable. Systematic and strategic reuse are operative. It is essential to develop a business case that justifies the up-front investment based on a market analysis. Training and other personnel issues associated with adopting a new technology take on added importance.