Reasoning about edits to feature models


Features express the variabilities and commonalities among programs in a software product line (SPL). A feature model defines the valid combinations of features, where each combination corresponds to a program in an SPL. SPLs and their feature models evolve over time. We classify the evolution of a feature model via modifications as refactorings, specializations, generalizations, or arbitrary edits. We present an algorithm to reason about feature model edits to help designers determine how the program membership of an SPL has changed. Our algorithm takes two feature models as input (before and after edit versions), where the set of features in both models are not necessarily the same, and it automatically computes the change classification. Our algorithm is able to give examples of added or deleted products and efficiently classifies edits to even large models that have thousands of features.

DOI: 10.1109/ICSE.2009.5070526
View Slides

Extracted Key Phrases

10 Figures and Tables

Citations per Year

272 Citations

Semantic Scholar estimates that this publication has 272 citations based on the available data.

See our FAQ for additional information.

Cite this paper

@article{Thm2009ReasoningAE, title={Reasoning about edits to feature models}, author={Thomas Th{\"{u}m and Don S. Batory and Christian K{\"a}stner}, journal={2009 IEEE 31st International Conference on Software Engineering}, year={2009}, pages={254-264} }