Handling Constraints in Cardinality-Based Feature Models: The Cloud Environment Case Study
Clément Quinton, Daniel Romero, Laurence Duchien · LillOA (Université de Lille (University Of Lille)) · 2014
Feature modeling is a well-known approach to describe variability in Software Product Lines.Cardinality-based Feature Models (fms) is a type of fms where features can be instantiated several times in the configuration, contrarily to boolean fms where a feature is present or not.While boolean fms configuration is easily handled by current approaches, there is still a lack of support regarding cardinality-based fms.In particular, expressing constraints over the set of feature instances is not supported in current approaches, where cardinality involved in such constraints can not be specified.To face this limitation, we define in this paper cardinality-based expressions and provide the related formal syntax and semantics as well as the way to automate the underlying configuration.We study the need for such a support using cloud computing environment configurations as a motivating example.To evaluate the soundness of the proposed approach, we analyze a corpus of 10 cloud environments.Our empirical evaluation shows that constraints relying on our cardinality-based expressions are common and that our approach is effective and can provide an useful support to developers for modeling and reasoning about fms with cardinalities.