Thorsten Arendt
University of Marburg
Network
Latest external collaboration on country level. Dive into details by clicking on the dots.
Publication
Featured researches published by Thorsten Arendt.
model driven engineering languages and systems | 2010
Thorsten Arendt; Enrico Biermann; Stefan Jurack; Christian Krause; Gabriele Taentzer
The Eclipse Modeling Framework (EMF) provides modeling and code generation facilities for Java applications based on structured data models. Henshin is a new language and associated tool set for in-place transformations of EMF models. The Henshin transformation language uses pattern-based rules on the lowest level, which can be structured into nested transformation units with well-defined operational semantics. So-called amalgamation units are a special type of transformation units that provide a forall-operator for pattern replacement. For all of these concepts, Henshin offers a visual syntax, sophisticated editing functionalities, execution and analysis tools. The Henshin transformation language has its roots in attributed graph transformations, which offer a formal foundation for validation of EMF model transformations. The transformation concepts are demonstrated using two case studies: EMF model refactoring and meta-model evolution.
fundamental approaches to software engineering | 2016
Daniel Strüber; Julia Rubin; Thorsten Arendt; Marsha Chechik; Gabriele Taentzer; Jennifer Plöger
Unifying similar model transformation rules into variability-based ones can improve both the maintainability and the performance of a model transformation system. Yet, manual identification and unification of such similar rules is a tedious and error-prone task. In this paper, we propose a novel merge-refactoring approach for automating this task. The approach employs clone detection for identifying overlapping rule portions and clustering for selecting groups of rules to be unified. Our instantiation of the approach harnesses state-of-the-art clone detection and clustering techniques and includes a specialized merge construction algorithm. We formally prove correctness of the approach and demonstrate its ability to produce high-quality outcomes in twoi¾źreal-lifei¾źcase-studies.
international conference on graph transformation | 2015
Hendrik Radke; Thorsten Arendt; Jan Steffen Becker; Annegret Habel; Gabriele Taentzer
Domain-specific modeling languages (DSMLs) are usually defined by meta-modeling where invariants are defined in the Object Constraint Language (OCL). This approach is purely declarative in the sense that instance construction is not incorporated but has to added. In contrast, graph grammars incorporate the stepwise construction of instances by applying transformation rules. Establishing a formal relation between meta-modeling and graph transformation opens up the possibility to integrate techniques of both fields. This integration can be advantageously used for optimizing DSML definition. Generally, a meta-model is translated to a type graph with a set of nested graph constraints. In this paper, we consider the translation of Essential OCL invariants to nested graph constraints. Building up on a translation of Core OCL invariants, we focus here on the translation of set operations. The main idea is to use the characteristic function of sets to translate set operations to corresponding Boolean operations. We show that a model satisfies an Essential OCL invariant iff its corresponding instance graph satisfies the corresponding nested graph constraint.
international conference on graph transformation | 2014
Thorsten Arendt; Annegret Habel; Hendrik Radke; Gabriele Taentzer
Meta-modeling including the use of the Object Constraint Language (OCL) forms a well-established approach to design domain-specific modeling languages. This approach is purely declarative in the sense that instance construction is not needed and not considered. In contrast, graph grammars allow the stepwise construction of instances by the application of transformation rules. In this paper, we consider meta-models with Core OCL invariants and translate them to nested graph constraints for typed attributed graphs. Models and meta-models are translated to instance and type graphs. We show that a model satisfies a Core OCL invariant iff its corresponding instance graph satisfies the corresponding nested graph constraint. The aim of this work is to establish a first formal relation between meta-modeling and the theory of graph transformation including constraints to come up with an integrated approach for defining modeling languages in an optimal way in the future.
Proceedings of the Fifth Workshop on Refactoring Tools | 2012
Thorsten Arendt; Gabriele Taentzer
Models are primary artifacts in model-based, and especially, in model-driven software development processes. Therefore, software quality and quality assurance frequently leads back to the quality and quality assurance of the involved models. In our approach, we propose a model quality assurance process that is based on static model analysis and uses techniques like model metrics and model smells. Based on the outcome of the model analysis, appropriate model refactoring steps are performed. Appropriate tools support the included techniques, i.e. metrics, smells, and refactorings, for models that are based on the Eclipse Modeling Framework (EMF). In this paper, we present the integration of the two model quality tools EMF Smell and EMF Refactor. This integration provides modelers with a quick and easy way to erase model smells by automatically suggesting appropriate model refactorings, and to get warnings in cases where new model smells come in by applying a certain refactoring.
model driven engineering languages and systems | 2013
Gabriele Taentzer; Florian Mantz; Thorsten Arendt; Yngve Lamo
Modeling languages tailored to specific application domains promise to increase the productivity and quality of model-driven software development. Nevertheless due to, for example, evolving requirements, modeling languages, and their meta-models evolve which means that existing models have to be migrated accordingly. In our approach, such co-evolutions are specified as related graph transformations ensuring well-typed model migration results. Model migrations are specified by transformation rules that can be automatically deduced from given meta-model evolution rules and further customized to special needs. Up to now, meta-model constraints have not been taken into account. In this paper, we extend our approach to handle multiplicity constraints and illustrate this extension using several examples.
Proceedings of the First Workshop on the Analysis of Model Transformations | 2012
Gabriele Taentzer; Thorsten Arendt; Claudia Ermel; Reiko Heckel
The more model transformations are applied in various application domains, the more questions about their quality arise. In this paper, we present a first approach towards improving the quality of endogenous in-place model transformation systems. This kind of model transformations is typically rule-based and well suited to perform model simulations and optimizations. After discussing suitable quality aims for this kind of model transformation systems and how they can be detected by smells, a first selection of refactorings is presented showing a variety of potential improvements of model transformation systems. Each refactoring is presented in a systematic way including an explanation how the quality is improved, a description of its pre- and post-conditions, a possible refactoring strategy, and an example. All discussed refactorings are implemented in Henshin, a model transformation engine based on graph transformation concepts, using Henshin in combination with the Eclipse plug-in EMF Refactor, a refactoring plug-in for defining and applying refactorings of EMF models.
Formal Aspects of Computing | 2018
Daniel Strüber; Julia Rubin; Thorsten Arendt; Marsha Chechik; Gabriele Taentzer; Jennifer Plöger
Model transformation systems often contain transformation rules that are substantially similar to each other, causing maintenance issues and performance bottlenecks. To address these issues, we introduce variability-based model transformation. The key idea is to encode a set of similar rules into a compact representation, called variability-based rule. We provide an algorithm for applying such rules in an efficient manner. In addition, we introduce rule merging, a three-component mechanism for enabling the automatic creation of variability-based rules. Our rule application and merging mechanisms are supported by a novel formal framework, using category theory to provide precise definitions and to prove correctness. In two realistic application scenarios, the created variability-based rules enabled considerable speedups, while also allowing the overall specifications to become more compact.
fundamental approaches to software engineering | 2015
Kristopher Born; Thorsten Arendt; Florian Heß; Gabriele Taentzer
Rule-based model transformation approaches show two kinds of non-determinism: (1) Several rules may be applicable to the same model and (2) a rule may be applicable at several different matches. If two rule applications to the same model exist, they may be in conflict, i.e., one application may disable the other one. Furthermore, rule applications may enable others leading to dependencies. The critical pair analysis (CPA) can report all potential conflicts and dependencies of rule applications that may occur during model transformation processes. This paper presents the CPA integrated in Henshin, a model transformation environment based on the Eclipse Modeling Framework (EMF).
Science of Computer Programming | 2018
Hendrik Radke; Thorsten Arendt; Jan Steffen Becker; Annegret Habel; Gabriele Taentzer
Abstract Domain-specific modeling languages (DSMLs) are usually defined by meta-modeling using the Object Constraint Language (OCL) for specifying invariants. This approach is purely declarative in the sense that instance construction is not supported. In contrast, grammar-based language definition incorporates the stepwise construction of instances by applying production rules. Since the underlying structure of models are generally graphs, graph grammars are well suited to define modeling languages. Establishing a formal relation between meta-modeling and graph grammars opens up the possibility to integrate techniques of both fields. This integration can be advantageously used for optimizing DSML definition. We follow an approach where a meta-model is translated to a type graph with a set of nested graph constraints. While previous meta-model translations neglected OCL constraints, we focus on the translation of Essential OCL invariants to nested graph constraints in this paper. We show that a model satisfies an Essential OCL invariant iff its corresponding instance graph satisfies the corresponding nested graph constraint. In addition, nested graph constraints can be translated to application conditions of graph transformation rules. Composing both translations, an instance-generating graph grammar can be equipped with application conditions such that it generates instances of the original meta-model only.