CVSM Bibliography, Entry [ BuKL+2015JASE ]

Bürdek, Johannes; Kehrer, Timo; Lochau, Malte; Reuling, Dennis; Kelter, Udo; Schürr, Andy: Reasoning about Product-Line Evolution using Complex Feature Model Differences; J. Automated Software Engineering, DOI 10.1007/s10515-015-0185-3; 2015
Library Entries: Springer
Deskriptoren: CVSM, SPL, PI

Abstract: Features define common and variable parts of the members of a (software) product line. Feature models are used to specify the set of all valid feature combinations. Feature models not only enjoy an intuitive tree-like graphical syntax, but also a precise formal semantics, which can be denoted as propositional formulae over Boolean feature variables. A product line usually constitutes a long-term investment and, therefore, has to undergo continuous evolution to meet ever-changing requirements. First of all, product-line evolution leads to changes of the feature model due to its central role in the product-line paradigm. As a result, product-line engineers are often faced with the problems that (1) feature models are changed ad-hoc without proper documentation, and (2) the semantic impact of syntactic changes is unclear. In this article, we propose a comprehensive approach to tackle both challenges. For (1), our approach compares the old and new version of the diagram representation of a feature model and specifies the changes using complex edit operations on feature diagrams. In this way feature model changes are automatically detected and documented formally. For (2), we propose an approach for reasoning about the semantic impact of diagram changes. We give a set of edit operations on feature diagrams, the complex operations are primarily derived from evolution scenarios observed in a real-world case study, i.e., a product line from the automation engineering domain. We evaluated our approach to demonstrate its applicability with respect to the case study, as well as its scalability concerning experimental data sets.