Verification of the rules for merging feature models using Alloy.
This project includes a set of alloy models (.als files) used to verify rules to merge feature models. Alloy is a formal language used to model and analyze different kinds of systems. We use it to represent each one of the merge rules and validate their semantics.
In scenarios where each stakeholder model the variability in product family of her concern, it is necessary to provide mechanisms to merge (compose or combine) these concern-specific feature models to produce a model for the whole product line. Severals proposal have been defined to perform these compositions.
Semantics for a Feature Model is the set of configurations that are compliant to the constraints defined in the model1. According to Schobbens et al.1, semantics for merging feature models can be defined in terms of the semantics of the constituent models: the resulting feature model may represent (a) the strict union or (b) the intersection of the sets of valid configurations of the input models. We have defined a set of rules for merging feature models supporting both semantics.
Several authors have proposed merge rules for feature models. However, they have defined different semantics for merging: Segura et al.2 proposed a set of rules, but their rules aims to produce a feature model that represent, as a minimum, the union of the products of both models. This means that their approach do not produce a strict union feature model and may include configurations that are not valid in any of the constituent models. Mannion et al.3 defined a different set of rules aimed to merge feature models using a different semantics. These rules were later revisited by Aydin et al.4 that correct some rules and proposed automatic solutions that the previous approach cannot solve. In contrast to these works, our proposal provides correct merging rules supporting both semantics (strict union and intersection).
Mannion et al.3 proposed a set of conflict resolution rules: rules that apply to merge feature models when they are different one to the other. While many of these rules correspond to a merge operation with intersection semantics, the other rules aims to a merge operation with different semantics. Our rules for intersection merge are different for those defined by Mannion et al. labeled as: 3(ii), 3(iii), 3(iv), 5(ii), 5(iii), 5(iv), 5(v), 5(vi), 5(vii), 5(ix) and 5(x). In addition, the rules labeled as 3(i), 4(ii), 4(iii), 5(iv), 5(v) and 5(vii) are modified to show that the iif does not distribute over the and operation.
Regarding the rules proposed by Aydin et al.4, we have different merge rules for intersection semantics for those labeled as 3(ii), 3(iii), 3(iv), 3(v), 5(ii), 5(iii), 5(iv), 5(v), 5(vi) and 5(ix). In addition, we have defined merge rules for strict union semantics. This project also includes alloy models for these rules.
Some rules produce feature models with cross-tree constraint relationships and propositional formulae constraints. The resulting feature may be simplified with the use of abstract features or features group cardinalities. For instance, the rules for strict union semantics labeled as 3(iv), 5(i), and 5(x) can be defined without including cross-tree constraints but including abstract features. We are exploring the impact of introducing abstract features during the merge to simplify the resulting feature models.
- Pierre-Yves Schobbens, Patrick Heymans, Jean-Christophe Trigaux and Yves Bontemps, Generic semantics of feature diagrams In Computer Networks, 51(2), 456--479, 2007
- Sergio Segura, David Benavides, Antonio Ruiz Cortés and Pablo Trinidad. Automated Merging of Feature Models Using Graph Transformations In Generative and Transformational Techniques in Software Engineering II, International Summer School, (GTTSE 2007), 489--505,
- Mike Mannion, Juha Savolainen and Timo Asikainen, Viewpoint-Oriented Variability Modeling In 33rd Annual IEEE International Computer Software and Applications Conference, (COMPSAC 2009), 67--72,
- Elcin Atilgan Aydin, Halit Oguztüzün, Ali H. Dogru and Ahmet Serkan Karatas. Merging Multi-view Feature Models by Local Rules In 9th International Conference on Software Engineering Research, Management and Applications, (SERA 2011), 140--147,
- Elcin Atilgan Aydin, Merging Multi-view Feature Models, Master Thesis, Middle East Technical University, Turkey, 2011.