Feature Model Interfaces: The Highway to Compositional Analyses of Highly Configurable Systems
Today's software systems are often customizable by means of load time or compile time configuration options. These options are typically not independent and their dependencies can be specified by means of feature models. As many industrial systems contain thousands of options, the maintenance and utilization of feature models is a challenge for all stakeholders. In the last two decades, numerous approaches have been presented to support stakeholders in analyzing feature models. Such analyses are commonly reduced to satisfiability problems, which suffer from the growing number of options. While first attempts have been made to decompose feature models into smaller parts, they still require to compose all parts for analysis. We propose the concept of a feature model interface that only consists of a subset of features, typically selected by experts, and hides all other features and dependencies. Based on a formalization of feature model interfaces, we prove compositionality properties. We evaluate feature model interfaces using a three month history of an industrial feature model from the automotive domain with 18,616 features. Our results indicate performance benefits especially under evolution as often only parts of the feature model need to be analyzed again.
2016 IEEE/ACM 38th International Conference on Software Engineering (ICSE)