Authors:
Raúl Mazo
1
;
Camille Salinesi
2
;
Daniel Diaz
2
and
Alberto Lora-Michiels
3
Affiliations:
1
Panthéon Sorbonne University and Universidad de Antioquia, France
;
2
Panthéon Sorbonne University, France
;
3
Baxter International Inc., Belgium
Keyword(s):
Requirement engineering, Product line models, Feature models, Transformation, Constraint programming.
Related
Ontology
Subjects/Areas/Topics:
Cross-Feeding between Data and Software Engineering
;
Requirements Engineering Frameworks and Models
;
Software Engineering
Abstract:
Product line models are important artefacts in product line engineering. One of the most popular languages to model the variability of a product line is the feature notation. Since the initial proposal of feature models in 1990, the notation has evolved in different aspects. One of the most important improvements allows specify the number of instances that a feature can have in a particular product. This improvement implies an important increase on the number of variables needed to represent a feature model. Another improvement consists in allowing features to have attributes, which can take values on a different domain than the boolean one. These two extensions have increased the complexity of feature models and therefore have made more difficult the manually or even automated reasoning on feature models. To the best of our knowledge, very few works exist in literature to address this problem. In this paper we show that reasoning on extended feature models is easy and scalable by us
ing constraint programming over integer domains. The aim of the paper is double (a) to show the rules for transforming extended feature models into constraint programs, and (b) to demonstrate, by means of 11 reasoning operations over feature models, the usefulness and benefits of our approach. We evaluated our approach by transforming 60 feature models of sizes up to 2000 features and by comparing it with 2 other approaches available in the literature. The evaluation showed that our approach is correct, useful and scalable to industry size models.
(More)