Software Product Lines
Framework Home
Introduction
Product Line Essential Activities
Core Asset Development
Product Development
Management
All Three Together
Product Line Practice Areas
Software Engineering
Practice Areas
Technical Management
Practice Areas
Organizational Management
Practice Areas
Frequently Asked Questions
Glossary
Bibliography

A Framework for Software Product Line Practice, Version 5.0

Next Section Table of Contents Previous Section

Product Line Essential Activities

At its essence, fielding a product line involves core asset development and product development using the core assets, both under the aegis of technical and organizational management. Core asset development and product development from the core assets can occur in either order: new products are built from core assets, or core assets are extracted from existing products. Often, products and core assets are built in concert with each other. The following figure illustrates this triad of essential activities.

The Three Essential Activities for Software Product Lines

Each rotating circle represents one of the essential activities. All three are linked together and in perpetual motion, showing that they are all essential, inextricably linked, and highly iterative, and can occur in any order.

The rotating arrows indicate not only that core assets are used to develop products, but also that revisions of existing core assets or even new core assets might, and most often do, evolve out of product development. The diagram above is neutral in regard to which part of the effort is launched first. In some contexts, already existing products are mined for generic assets–perhaps a requirements specification, an architecture, or software components–which are then migrated into the product line's core asset base. In other cases, the core assets may be developed or procured for later use in the production of products.

There is a strong feedback loop between the core assets and the products. Core assets are refreshed as new products are developed. The use of core assets is tracked, and the results are fed back to the core asset development activity. In addition, the value of the core assets is realized through the products that are developed from them. As a result, the core assets are made more generic by considering potential new products on the horizon. There is a constant need for strong, visionary management to invest resources in the development and sustainment of the core assets. Management must also precipitate the cultural change to view new products in the context of the available core assets. Either new products must align with the existing core assets, or the core assets must be updated to reflect the new products that are being marketed. Iteration is inherent in product line activities–that is, in turning out core assets and products and in coordinating the two. In the next three sections, we examine the three essential activities in greater detail.

Next Section Table of Contents Previous Section