Context Increase in market competition is one of the main reasons for developing and maintaining families of systems, termed Product Lines (PLs). Managing those PLs is challenging, let alone the management of several related PLs. Currently, those PLs are managed separately or their relations are analyzed assuming explicit specification of dependencies or use of an underlying terminology. Such assumptions may not hold when developing the PLs in different departments or companies applying various engineering processes. Objective In this work we call for utilizing the knowledge gained from developing and maintaining different PLs in the same domain in order to recommend on improvements to the management of PLs. Method The suggested approach conducts domain knowledge extraction and cross PL analysis on feature diagrams - the main aid for modeling PL variability. The domain knowledge is extracted by applying similarity metrics, clustering, and mining techniques. Based on the created domain models, the approach performs cross PL analysis that examines relations in the domain models and generates improvement recommendations to existing PLs and overall management recommendations (e.g., merging or splitting PLs). Results The approach outcomes were evaluated by humans in a domain of mobile phones. The evaluation results may provide evidence that the outcomes of the approach in general and its recommendations in particular meet human perception of the given domain. Conclusion We conclude that through domain knowledge extraction and cross PL analysis the suggested approach may generate recommendations useful to the management of individual PLs, as well as to the overall management of different PLs in the same domain.
|Number of pages||14|
|Journal||Information and Software Technology|
|State||Published - 1 Mar 2015|
Bibliographical notePublisher Copyright:
© 2014 Elsevier B.V. All rights reserved.
- Domain analysis
- Feature modeling
- Software product line engineering
- Variability management
ASJC Scopus subject areas
- Information Systems
- Computer Science Applications