Goal-driven Product Derivation.

John D. McGregor · The Journal of Object Technology · 2009

The purpose of a software product line organization is to produce products.Some organizations adopt the software product line approach because they want better quality products, some want the products faster, and some want to produce the products using fewer resources.There are many different ways to produce products and which way is the best depends on which of many goals are the ultimate objective.In this issue of Strategic Software Engineering I will discuss how the specifications of goals for the production system during strategic planning affect how products are derived in a product line organization.(By the way, remember to visit www.splc.net to see what is happening at SPLC 2009) CONTEXTAs this column is published I will have just finished presenting a keynote address on product derivation at WIRE 2009.I am using the same topic for both this column and the address to provide myself the opportunity to examine derivation from the twin perspectives of strategy and implementation.In this issue of Strategic Software Engineering I will investigate the implication of "goal-driven" for how products are derived and I will bring several threads, which I have written about previously, together into a coherent whole.Goal-driven derivation seeks to optimize the set of specified goals of the derivation process and the resulting products.The production goals are derived from the goals stated in the business case by thinking of the qualities the production capability of the product line should possess.For example, "easily extended" is a generally desirable quality for the products derived from a product line.This is often addressed by a very modular design.The production capability must then have sufficient automation to manage a large number of modules that will be mixed and matched to derive a specific product.Product derivation is the focus of a software product line organization and its exact form contributes heavily to the achievement of targeted goals.Deelstra, Sinnema, and Bosch define product derivation by, "A product is said to be derived from a product family if it is developed using shared product family artifacts.The term product derivation therefore refers to the complete process of constructing a product from product family software assets.[Deelstra 05]" Interestingly, this definition emphasizes the

Read the paper · More papers on PaperTik