Core assets of an organization

The goal of a software product line is to have reusable components, known as core assets, that share a common architecture. Some of the components that can be reused and designated as core assets include the following:

The core assets need to be built while keeping in mind that they will be used across multiple products in a product line. Each product will have variation, so to account for this, core assets should be built with variation points, places that provide an opportunity to take into consideration this variation and allow the team to tailor the asset for use in a specific product.

Once these assets have been compiled, it will require less effort, time, and cost to reuse the assets than to create them each time they are needed. Building a software system then requires the team to reuse the appropriate assets, using the variation points as appropriate, and building the system from there.