TY - JOUR A1 - Schwägerl, Felix A1 - Westfechtel, Bernhard T1 - Integrated revision and variation control for evolving model-driven software product lines JF - Software and systems modeling N2 - Software engineering projects are faced with abstraction, which is achieved by software models, historical evolution, which is addressed by revision control, and variability, which is managed with the help of software product line engineering. Addressing these phenomena by separate tools ignores obvious overlaps and therefore fails at exploiting synergies between revision and variation control for models. In this article, we present a conceptual framework for integrated revision and variation control of model-driven software projects. The framework reuses the abstractions of revision graphs and feature models and follows an iterative, revision-control-like approach to software product line engineering called product-based product line development. A single version (i.e., a variant of a selected revision) is made available in a workspace, where the user may apply arbitrary modifications. Based on a user-provided specification of the affected variants, the changes are automatically written back to a transparent repository that relies on an internal multi-version storage. The uniform handling of revisions and variants of models is achieved by transparently mapping version concepts to a semantic base layer, which is defined upon propositional logic. At the heart of the conceptual framework is a dynamic filtered editing model, which allows that the versioned artifacts and the feature model co-evolve. We contribute algorithms for checkout and commit, which satisfy a set of consistency constraints referring to variant specifications in an evolving feature model. This article furthermore addresses the orchestration of collaborative development by distributed replication and the well formedness of text and model artifacts to be checked out into the workspace. The Eclipse-based tool SuperMod demonstrates the feasibility of the conceptual framework. It allows the user to reuse arbitrary editing tools for text-based programming and/or Ecore-based modeling languages. An evaluation based on three case studies investigates the properties of SuperMod with a specific focus on filtered editing. The evaluation demonstrates that the dynamic filtered editing model reduces the cognitive complexity and the amount of user interaction necessary for variation control when compared to unfiltered model-driven approaches to software product line engineering. Y1 - 2019 U6 - https://doi.org/10.1007/s10270-019-00722-3 SN - 1619-1366 VL - 18 IS - 6 SP - 3373 EP - 3420 PB - Springer Science and Business Media ER - TY - CHAP A1 - Schröpfer, Johannes A1 - Schwägerl, Felix A1 - Westfechtel, Bernhard T1 - Consistency control for model versions in evolving model-driven software product lines T2 - 2019 ACM/IEEE 22nd International Conference on Model Driven Engineering Languages and Systems Companion (MODELS-C), Munich, Germany N2 - Model-driven software product lines evolve in both time and space. Consistency control for model versions constitutes a key challenge. We propose a novel approach to consistency control called well-formedness analysis and repair: Instead of attempting to guarantee consistency of each configurable version a priori (which is hard and restrictive), consistency is controlled only when a product version is actually configured. Conflicts, i.e., violation of well-formedness constraints, are detected and repaired, driven by configurable strategies. This approach is generic; it is instantiated for feature models (for the variability model) and EMF models (as domain artifacts). Y1 - 2019 U6 - https://doi.org/10.1109/MODELS-C.2019.00043 SP - 268 EP - 277 PB - IEEE ER -