Authors:
Sandra Greiner
and
Bernhard Westfechtel
Affiliation:
Chair of Applied Computer Science I, University of Bayreuth, Universitätsstrasse 30, 95440 Bayreuth and Germany
Keyword(s):
Model-driven Software Engineering, Model Transformations, Software Product Lines, Multi-Variant Model Transformations, Annotative Approaches, Evaluating Commutativity.
Related
Ontology
Subjects/Areas/Topics:
Frameworks for Model-Driven Development
;
Methodologies, Processes and Platforms
;
Model Transformation
;
Model Transformations and Generative Approaches
;
Model-Driven Software Development
;
Models
;
Paradigm Trends
;
Software Engineering
Abstract:
Multi-variant model transformations (MVMTs) aim at automatically propagating variability annotations present in software product lines (SPL) when executing state-of-the-art model transformations. Variability annotations are boolean expressions used in annotative SPL engineering (SPLE) for expressing in which products model elements are visible. Developing the SPL in a model-driven way requires various model representations, e.g., database schemata for data storage or Java models for the code generation. Although model transformations are the key essence of model-driven software engineering (MDSE) and can be used to generate these representations from already existing (model) artifacts, they suffer from not being able to handle the variability annotations. Thus, the developer is forced to annotate target models manually contradicting the goal of both disciplines, MDSE and SPLE, to increase productivity. Recently, approaches have been proposed to solve the problem using, e.g., traces,
to propagate annotations without changing the transformation itself. For evaluating the outcome all of the approaches require the transformation to commute w.r.t. the derived products. Although the criterion is the same, a common framework for testing it does not exist. Therefore, we contribute a generic framework allowing to evaluate whether the target model of arbitrary (reuse-based) MVMTs was correctly annotated according to the shared commutativity criterion.
(More)