Skip to Main Content
Software product line (SPL) engineering is a cost-effective approach to developing families of similar products. Key to the success of this approach is to correctly scope the domain of the SPL, identifying the common and variable features of the products and the interdependencies between features. In this study, the authors show how the commonality of a feature (i.e. the reuse ratio of the feature among the products) can be used to detect scope flaws in the early stages of development. SPL domains are usually modelled by means of feature diagrams following the feature-oriented domain analysis (FODA) notation. The authors extend classical FODA trees with unrestricted cardinalities, and present an algorithm to compute the number of products modelled by a feature diagram and the commonality of the features. Finally, the authors compare the performance of their algorithm with two other approaches built on top of boolean logic satisfiability (SAT)-solver technology such as cachet and relsat.