TY - CHAP A1 - Schwägerl, Felix A1 - Westfechtel, Bernhard T1 - Maintaining workspace consistency in filtered editing of dynamically evolving model-driven software product lines T2 - Proceedings of the 5th International Conference on Model-Driven Engineering and Software Development MODELSWARD - Volume 1, 15-28, 2017, Porto, Portugal N2 - Model-driven software product line engineering is complicated: In addition to defining a variability model, developers must deal with a multi-variant domain model. To reduce complexity, filtered editing, inspired by version control, was recently transferred to software product line engineering. On check-out, a single-variant model is derived based on a configuration of its features. On commit, the representatively applied change is scoped with the features to which it is relevant. The here considered dynamic editing model involves different kinds of evolution: The variability model and the domain model are edited concurrently. Features, which define the workspace contents or the scope of the change, may be introduced or deleted. Furthermore, the scope of a change may be revised until commit. The dynamism of this filtered editing model raises consistency problems concerning the evolving relationships between the variability model, the specified configuration, and the scope of the chan ge. This paper formalizes these constraints and presents consistency-preserving algorithms for the workspace operations check-out, commit, as well as a new operation, migrate. This way, the evolution of model-driven software product lines is managed automatically, non-disruptively, and consistently. Y1 - 2017 U6 - https://doi.org/10.5220/0006071800150028 SP - 15 EP - 28 PB - SCITEPRESS - Science and Technology Publications ER - TY - CHAP A1 - Schwägerl, Felix A1 - Westfechtel, Bernhard T1 - Perspectives on combining model-driven engineering, software product line engineering, and version control T2 - VaMoS '17: Proceedings of the 11th International Workshop on Variability Modelling of Software-Intensive Systems, February 1 - 3, 2017, Eindhoven, Netherlands N2 - Model-driven software engineering (MDSE), software product line engineering (SPLE), and version control (VC) have been established as three software engineering sub-disciplines dealing with raising the level of abstraction of software development, organizing variability in a systematic way, and controlling the evolution of software artifacts, respectively. Traditionally, these sub-disciplines are supported by disjoint tools, leading to undesirable context switches. In this tool-centric survey, approaches for combining MDSE, SPLE, and VC in a pair-wise or even holistic fashion are categorized and assessed. The combination of MDSE and SPLE is natural since models are used to describe both the problem and the solution space. Moreover, specific VC support for models may improve collaborative MDSE in a similar way as dedicated SPL versioning supports evolution control. Last, both VC and SPLE deal with different types of variability - in time and in space, respectively -, such that an integration promises to close the gap between historical and logical (model) versioning. Results indicate that these promises are only satisfied partly by existing approaches. To attest this, we conclude with a list of usage scenarios for combined MDSE/SPLE/VC that cannot be adequately addressed by the current tools. Y1 - 2017 SN - 978-1-4503-4811-9 U6 - https://doi.org/10.1145/3023956.3023969 SP - 76 EP - 83 PB - ACM CY - New York, NY, USA ER - TY - CHAP A1 - Buchmann, Thomas A1 - Peinl, René A1 - Schwägerl, Felix T1 - White-box LLM-supported Low-code Engineering: A Vision and First Insights T2 - Proceedings of the ACM/IEEE 27th International Conference on Model Driven Engineering Languages and Systems N2 - Low-code development (LCD) platforms promise to empower citizen developers to define core domain models and rules for business applications. However, as domain rules grow complex, LCD platforms may fail to do so effectively. Generative AI, driven by large language models (LLMs), offers source code generation from natural language but suffers from its non-deterministic black-box nature and limited explainability. Therefore, rather than having LLMs generate entire applications from single prompts, we advocate for a white-box approach allowing citizen developers to specify domain models semi-formally, attaching constraints and operations as natural language annotations. These annotations are fed incrementally into an LLM contextualized with the generated application stub. This results in deterministic and better explainable generation of static application components, while offering citizen developers an appropriate level of abstraction. We report on a case study in manufacturing execution systems, where the implementation of the approach provides first insights. KW - Model-driven engineering KW - large language models KW - low-code KW - semiformal KW - artificial intelligence Y1 - 2024 U6 - https://doi.org/10.1145/3652620.368780 SP - 556 EP - 560 PB - ACM CY - New York, NY, USA ER - TY - CHAP A1 - Buchmann, Thomas A1 - Schwägerl, Felix A1 - Peinl, René T1 - To Model, to Prompt, or to Code? The Choice Is Yours: A Multi-Paradigmatic Approach to Software Development T2 - Proceedings of the 20th International Conference on Software Technologies, 10-12.Juni 2025, Bilbao N2 - This paper considers three fundamental approaches to software development, namely manual coding, model-driven software engineering, and code generation by large language models. All of these approaches have their individual pros and cons, motivating the desire for an integrated approach. We present MoProCo, a technical solution to integrate the three approaches into a single tool chain, allowing the developer to split a software engineering task into modeling, prompting or coding sub-tasks. From a single input file consisting of static model structure, natural language prompts and/or source code fragments, Java source code is generated using a two-stage approach. A case study demonstrates that the MoProCo approach combines the desirable properties of the three development approaches by offering the appropriate level of abstraction, determinism, and dynamism for each specific software engineering sub-task. Y1 - 2025 U6 - https://doi.org/10.5220/0013557100003964 SP - 296 EP - 303 PB - SCITEPRESS - Science and Technology Publications ER - TY - CHAP A1 - Buchmann, Thomas A1 - Schwägerl, Felix T1 - Ensuring well-formedness of configured domain models in model-driven product lines based on negative variability T2 - FOSD '12: Proceedings of the 4th International Workshop on Feature-Oriented Software Development, 24. + 25. September 2012, Dresden N2 - Model-driven development is a well-known practice in modern software engineering. Many tools exist which allow developers to build software in a model-based or even model-driven way, but they do not provide dedicated support for software product line development. Only recently some approaches combined model-driven engineering and software product line engineering. In this paper we present an approach that allows for combining feature models and Ecore-based domain models and provides extensive support to keep the mapping between the involved models consistent. Our key contribution is a declarative textual language which allows to phrase domain-specific consistency constraints which are preserved during the configuration process in order to ensure context-sensitive syntactical correctness of derived domain models. Y1 - 2012 U6 - https://doi.org/10.1145/2377816.2377822 SP - 37 EP - 44 PB - ACM Press CY - New York, USA ER - TY - CHAP A1 - Schwägerl, Felix A1 - Buchmann, Thomas A1 - Westfechtel, Bernhard T1 - Multi-variant model transformations - a problem statement T2 - Proceedings of the 11th International Conference on Evaluation of Novel Software Approaches to Software Engineering N2 - Model Transformations are a key element of Model-Driven Software Engineering. As soon as variability is involved, transformations become increasingly complicated. The lack of support for variability in model transformations impairs the acceptance of approaches to organized reuse such as software product lines. In this position paper, the general problem of multi-variant model transformations is formulated for MOF-based, XMI-serialized models. A simplistic case study is presented to specify the input and the expected output of such a transformation. Furthermore, requirements for tool support are defined, including a standardized representation of both multi-variant model instances and variability information, as well as an execution specification for multi-variant transformations. A literature review reveals that the problem is weakly identified and often solved using ad-hoc solutions; there exists no tool providing a general solution to the proposed problem statement. The observation s presented here may serve for the future development of standards and tools. KW - Model-Driven Software Engineering KW - Software Product Lines KW - Model Transformations KW - Code Generation Y1 - 2016 SN - 978-989-758-189-2 U6 - https://doi.org/10.5220/0005878702030209 SN - 2184-4895 SP - 203 EP - 209 PB - SCITEPRESS ER - TY - CHAP A1 - Schwägerl, Felix A1 - Uhrig, Sabrina T1 - Tool Support for the Evaluation of Matching Algorithms in the Eclipse Modeling Framework T2 - Proceedings of the 1st International Conference on Model-Driven Engineering and Software Development, February 19-21, 2013, in Barcelona, Spain, Vol. 1 N2 - In the field of model-driven development, sophisticated support for comparing model versions is urgently needed. Unfortunately, algorithms for model matching have been rarely evaluated so far. This paper deals with two extensions to the Eclipse Modeling Framework (EMF) that facilitate the evaluation of matching algorithms for EMF models, with the goal to combine user involvement and automated testing in the evaluation process. First a tree editor is presented that allows for the manual and semi-automated creation of match models which formalize the intended matching result. Second a benchmarking procedure is implemented which – given the intended match and the actual results of matching algorithms – automatically derives the number of a and b errors in a target-performance comparison. These results are valuable for drawing conclusions about the specific qualities of matching algorithms or for finding an adequate set of parameters for a configurable algorithm. KW - EMF Models KW - Model Comparison KW - Matching Algorithms KW - Evaluation Y1 - 2013 SN - 978-989-8565-42-6 U6 - https://doi.org/10.5220/0004310801010110 SN - 2184-4348 SP - 101 EP - 110 PB - SciTePress - Science and and Technology Publications ER - TY - CHAP A1 - Buchmann, Thomas A1 - Schwägerl, Felix T1 - Using Meta-code Generation to Realize Higher-order Model Transformations T2 - Proceedings of the 8th International Joint Conference on Software Technologies, July 29-31, 2013, in Reykjavík, Iceland, Vol. 1 N2 - Model-driven engineering is a wide-spread paradigm in modern software engineering. During the last couple of years, many tools and languages have been developed, which are especially designed for model transformations — a discipline which is needed in many model-driven engineering approaches. While most of the existing model-to-model tools and languages are tailored towards batch transformations for specific model instances, they lack support for generic transformation problems, where the metamodel is unknown beforehand. In this paper we present a two-step meta-code generation approach that derives a metamodel-specific modelto- model transformation from a model-to-text transformation. The approach has been successfully applied to the problem of product derivation in model-driven software product lines. KW - Model-driven Development KW - M2M Transformations KW - Model Transformations KW - Higher-order Transformations KW - Software Product Lines Y1 - 2013 SN - 978-989-8565-68-6 U6 - https://doi.org/https://doi.org/10.5220/0004522305360541 SP - 536 EP - 541 PB - SciTePress - Science and and Technology Publications ER - TY - CHAP A1 - Schwägerl, Felix A1 - Uhrig, Sabrina A1 - Westfechtel, Bernhard T1 - A Graph-based Algorithm for Three-way Merging of Ordered Collections in EMF Models T2 - Science of Computer Programming N2 - In EMF models, ordered collections appear as the values of multi-valued structural features. Traditional, text-based version control systems do not sufficiently support three-way merging of ordered collections inside EMF models since they cannot guarantee a consistent result. The operation three-way merging is defined as follows: based on a common base version b, two alternative versions and were developed by copying and modifying the base version. To reconcile these changes, a merged version m is to be created as a common successor of and . In this paper, we present a graph algorithm to solve the problem of three-way merging of ordered collections in EMF models. Each version of a collection can be represented by means of a linearly ordered graph. To create the merged version, these graphs are combined to a merged collection graph using set formula. To create the merged collection, a generalized topological sort is performed on the merged collection graph. Conflicts occur in case the order of elements cannot be deduced automatically; these conflicts are resolved either interactively or by default rules. We have implemented the merge algorithm in our tool BTMerge, which performs a consistency-preserving three-way merge of versions of EMF models being instances of arbitrary Ecore models. Our implementation relies on an alternative form of representing multiple versions of a collection, namely a versioned collection graph which forms a superimposition of collection versions. The algorithm presented here is purely state-based. Matching and merging of collections are clearly separated sub-problems. Insertions and deletions performed on the elements of the collection are propagated into the merged version in a consistent way. Our algorithm makes only minimal assumptions with regard to the underlying product model and thus may be applied to ordered collections inside plain text or XML files. By taking arbitrary move operations into account, the algorithm considerably goes beyond the functionality of contemporary merge tools which cannot adequately handle move operations. KW - EMF Models KW - Model Merging KW - Graph Algorithms Y1 - 2014 U6 - https://doi.org/10.1016/j.scico.2015.02.008 VL - 113 IS - Part 1 SP - 51 EP - 81 ER - TY - CHAP A1 - Buchmann, Thomas A1 - Schwägerl, Felix T1 - Breaking the Boundaries of Meta Models and Preventing Information Loss in Model-Driven Software Product Lines T2 - Proceedings of the 11th International Conference on Evaluation of Novel Software Approaches to Software Engineering, Vol 1, 2016, Rome, Italy N2 - Model-driven software product line engineering is an integrating discipline for which tool support has become available recently. However, existing tools are still immature and have several weaknesses. Among others, limitations in variability, caused by meta model restrictions, and unintended information loss are not addressed. In this paper, we present two conceptual extensions to model-driven product line engineering based on negative variability, being alternative mappings and surrogates. Alternative mappings allow for unconstrained variability, mitigating meta model restrictions by virtually extending the underlying multi-variant domain model. Surrogates prevent unintended information loss during product derivation based on a contextsensitive product analysis, which can be controlled by a declarative OCL-based language. Both extensions have been implemented in FAMILE, a model-driven product line tool that is based on EMF, provides dedicated consistency repair mechanisms, and completely automates application engineering. The added value of alternative mappings and surrogates is demonstrated by a running example. KW - Software Product Lines KW - Model-Driven Development KW - Unconstrained Variability KW - Information Loss KW - Negative Variability KW - Application Engineering Y1 - 2016 U6 - https://doi.org/10.5220/0005789100730083 SP - 83 PB - SCITEPRESS - Science and and Technology Publications ER - TY - CHAP A1 - Schwägerl, Felix A1 - Uhrig, Sabrina A1 - Westfechtel, Bernhard T1 - Model-based tool support for consistent three-way merging of EMF models T2 - ACME '13, Proceedings of the workshop on ACadeMics Tooling with Eclipse N2 - Inadequate version control has been identified as a major obstacle to the application of model-driven software engineering. In particular, sophisticated support for merging model versions is urgently needed. We present a tool for merging of EMF models which may be applied to instances of arbitrary Ecore models. The tool advances the state of the art by guaranteeing a consistent merge result. Furthermore, it detects and resolves not only context-free, but also context-sensitive conflicts. Our merge tool is model-based; it relies on EMF for its implementation. Initial experiences gained from its application confirm that the merge tool operates both accurately and efficiently. Y1 - 2013 U6 - https://doi.org/10.1145/2491279.2491281 PB - ACM CY - New York, NY, USA 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 - TY - CHAP A1 - Greiner, Sandra A1 - Schwägerl, Felix A1 - Westfechtel, Bernhard T1 - Realizing multi-variant model transformations on top of reused ATL specifications T2 - Proceedings of the 5th International Conference on Model-Driven Engineering and Software Development MODELSWARD, Porto, Portugal N2 - Model transformations are crucial in model-driven software engineering (MDSE). While combining MDSE and software product line engineering (SPLE) techniques, summarized as model-driven product line engineering (MDPLE), promises increased productivity by relying on organized reuse, the benefits are impeded by transformation specifications designed exclusively for single-variant models. Applying single-variant model transformations to multi-variant input models results in output models lacking the variability information. Multi-variant model transformations (MVMT), which preserve variability information, have only recently been understood as an explicit research problem. In this paper, we propose an a posteriori approach towards MVMT. Following the paradigm of organized reuse, we propose to employ single-variant model transformations without modifications in a first step, and to transfer variability information afterwards based on the artifacts provided by the single-variant transformation specification. In particular, we implemented this approach for the well-known model-to-model transformation language ATL. To deduce variability information, the execution artifacts (trace and execution model) are analyzed. Then, variability annotations are transfered to the target model automatically. The implementation is evaluated based on a practically example of a Graph product line. Results exhibit that our approach outperforms the conventional solution with respect to user effort, accuracy and performance. Y1 - 2017 U6 - https://doi.org/10.5220/0006137803620373 VL - 1 SP - 362 EP - 373 PB - SCITEPRESS - Science and Technology Publications ER -