On Preserving Variability Consistency in Multiple Models
Sandra Greiner, Bernhard Westfechtel · 2021
Model-driven software product line engineering (MDPLE) is a holistic approach to realize variability-intensive systems by using models. In MDPLE the usage of models aims to increase the level of automation by reducing the product derivation to a pure code derivation step. Since models are present at different development phases, they have to be kept consistent all over these phases, for example by storing information about corresponding elements in model transformations. Reasons why to use model transformations or similar automated mechanisms are manifold. For instance, if the product line is built in a forward-engineering process, model transformations will be beneficial to propagate the coarse-grained information of an early phase to the subsequent phase automatically. In contrast to single-variant engineering, in MDPLE there is not only the challenge to keep multiple models consistent but also their presence conditions. Since variability mechanisms and the ways how presence conditions across different models are maintained vary, this contribution categorizes the consistency maintenance of presence conditions in MDPLE approaches to give an overview of already existing techniques. As a result, we find that while several automated solutions to keep presence conditions across models consistent exist, they are not employed in the MDPLE tool landscape.