Network


Latest external collaboration on country level. Dive into details by clicking on the dots.

Hotspot


Dive into the research topics where Karsten Ehrig is active.

Publication


Featured researches published by Karsten Ehrig.


fundamental approaches to software engineering | 2007

Information preserving bidirectional model transformations

Hartmut Ehrig; Karsten Ehrig; Claudia Ermel; Frank Hermann; Gabriele Taentzer

Within model-driven software development, model transformation has become a key activity. It refers to a variety of operations modifying a model for various purposes such as analysis, optimization, and code generation. Most of these transformations need to be bidirectional to e.g. report analysis results, or keep coherence between models. In several application-oriented papers it has been shown that triple graph grammars are a promising approach to bidirectional model transformations. But up to now, there is no formal result showing under which condition corresponding forward and backward transformations are inverse to each other in the sense of information preservation. This problem is solved in this paper based on general results for the theory of algebraic graph transformations. The results are illustrated by a transformation of class models to relational data base models which has become a quasi-standard example for model transformation.


fundamental approaches to software engineering | 2005

Termination criteria for model transformation

Hartmut Ehrig; Karsten Ehrig; Juan de Lara; Gabriele Taentzer; Dániel Varró; Szilvia Varro-Gyapay

Model Transformation has become central to most software engineering activities. It refers to the process of modifying a (usually graphical) model for the purpose of analysis (by its transformation to some other domain), optimization, evolution, migration or even code generation. In this work, we show termination criteria for model transformation based on graph transformation. This framework offers visual and formal techniques based on rules, in such a way that model transformations can be subject to analysis. Previous results on graph transformation are extended by proving the termination of a transformation if the rules applied meet certain criteria. We show the suitability of the approach by an example in which we translate a simplified version of Statecharts into Petri nets for functional correctness analysis.


Theoretical Computer Science | 2007

Attributed graph transformation with node type inheritance

Juan de Lara; Roswitha Bardohl; Hartmut Ehrig; Karsten Ehrig; Ulrike Prange; Gabriele Taentzer

The aim of this paper is to integrate typed attributed graph transformation with node type inheritance. Borrowing concepts from object oriented systems, the main idea is to enrich the attributed type graph with an inheritance relation and a set of abstract nodes. In this way, a node type inherits the attributes and edges of all its ancestors. Based on these concepts, it is possible to define abstract productions, containing abstract nodes. These productions are equivalent to a number of concrete productions, resulting from the substitution of the abstract node types by the node types in their inheritance clan. Therefore, productions become more compact and suitable for their use in combination with meta-modelling. The main results of this paper show that attributed graph transformation with node type inheritance is fully compatible with the existing concept of typed attributed graph transformation.


Software and Systems Modeling | 2009

Generating instance models from meta models

Karsten Ehrig; Jochen Malte Küster; Gabriele Taentzer

Meta modeling is a wide-spread technique to define visual languages, with the UML being the most prominent one. Despite several advantages of meta modeling such as ease of use, the meta modeling approach has one disadvantage: it is not constructive, i.e., it does not offer a direct means of generating instances of the language. This disadvantage poses a severe limitation for certain applications. For example, when developing model transformations, it is desirable to have enough valid instance models available for large-scale testing. Producing such a large set by hand is tedious. In the related problem of compiler testing, a string grammar together with a simple generation algorithm is typically used to produce words of the language automatically. In this paper, we introduce instance-generating graph grammars for creating instances of meta models, thereby overcoming the main deficit of the meta modeling approach for defining languages.


automated software engineering | 2005

Generation of visual editors as eclipse plug-ins

Karsten Ehrig; Claudia Ermel; Stefan Hänsgen; Gabriele Taentzer

Visual Languages (VLs) play an important role in software system development. Especially when looking at well-defined domains, a broad variety of domain specific visual languages are used for the development of new applications. These languages are typically developed specifically for a certain domain in a way that domain concepts occur as primitives in the language alphabet. Visual modeling environments are needed to support rapid development of domain-specific solutions.In this contribution we present a general approach for defining visual languages and for generating language-specific tool environments. The visual language definition is again given in a visual manner and precise enough to completely generate the visual environment. The underlying technology is Eclipse with its plug-in capabilities on the one hand, and formal graph transformation techniques on the other hand. More precisely, we present an Eclipse plug-in generating Java code for visual modeling plug-ins which can be directly executed in the Eclipse Runtime-Workbench.


Electronic Notes in Theoretical Computer Science | 2008

Translation of Restricted OCL Constraints into Graph Constraints for Generating Meta Model Instances by Graph Grammars

Jessica Winkelmann; Gabriele Taentzer; Karsten Ehrig; Jochen Malte Küster

The meta modeling approach to syntax definition of visual modeling techniques has gained wide acceptance, especially by using it for the definition of UML. Since meta-modeling is non-constructive, it does not provide a systematic way to generate all possible meta model instances. In our approach, an instance-generating graph grammar is automatically created from a given meta model. This graph grammar ensures correct typing and cardinality constraints, but OCL constraints for the meta model are not supported yet. To satisfy also the given OCL constraints, well-formedness checks have to be done in addition. We present a restricted form of OCL constraints that can be translated to graph constraints which can be checked during the instance generation process.


international conference on graph transformation | 2004

Constraints and Application Conditions: From Graphs to High-Level Structures

Hartmut Ehrig; Karsten Ehrig; Annegret Habel; Karl-Heinz Pennemann

Graph constraints and application conditions are most important for graph grammars and transformation systems in a large variety of application areas. Although different approaches have been presented in the literature already there is no adequate theory up to now which can be applied to different kinds of graphs and high-level structures. In this paper, we introduce an improved notion of graph constraints and application conditions and show under what conditions the basic results can be extended from graph transformation to high-level replacement systems. In fact, we use the new framework of adhesive HLR categories recently introduced as combination of HLR systems and adhesive categories. Our main results are the transformation of graph constraints into right application conditions and the transformation from right to left application conditions in this new framework.


Electronic Notes in Theoretical Computer Science | 2006

Overview of Formal Concepts for Model Transformations Based on Typed Attributed Graph Transformation

Hartmut Ehrig; Karsten Ehrig

In this paper we give an overview of formal concepts for model transformations between visual languages based on typed attributed graph transformation. We start with a basic concept where visual languages are defined by attributed type graphs only and model transformations by basic typed attributed graph transformation systems. We continue with different kinds of extensions of the basic concepts taking into account application conditions, constraints, generating graph grammars and operational semantics. The main aim is to discuss formal correctness criteria for model transformations including syntactical correctness, functional behavior and semantical correctness.


Electronic Communication of The European Association of Software Science and Technology | 2008

From Model Transformation to Model Integration based on the Algebraic Approach to Triple Graph Grammars

Hartmut Ehrig; Karsten Ehrig; Frank Hermann

Success and efficiency of software and system design fundamentally relies on its models. The more they are based on formal methods the more they can be automatically transformed to execution models and finally to implementation code. This paper presents model transformation and model integration as specific problem within bidirectional model transformation, which has shown to support various purposes, such as analysis, optimization, and code generation. The main purpose of model integration is to establish correspondence between various models, especially between source and target models. From the analysis point of view, model integration supports correctness checks of syntactical dependencies between different views and models. The overall concept is based on the algebraic approach to triple graph grammars, which are widely used for model transformation. The main result shows the close relationship between model transformation and model integration. For each model transformation sequence there is a unique model integration sequence and vice versa. This is demonstrated by a quasi-standard example for model transformation between class models and relational data base models.


Electronic Notes in Theoretical Computer Science | 2004

Parallel Graph Transformation for Model Simulation applied to Timed Transition Petri Nets

J De Lara; Claudia Ermel; Gabriele Taentzer; Karsten Ehrig

This work discusses the use of parallel graph transformation systems for (multi-formalism) modeling and simulation and their implementation in the meta-modeling tool AToM^3. As an example, a simulator for Timed Transition Petri Nets (TTPN) is modeled using parallel graph transformation.

Collaboration


Dive into the Karsten Ehrig's collaboration.

Top Co-Authors

Avatar
Top Co-Authors

Avatar

Claudia Ermel

Technical University of Berlin

View shared research outputs
Top Co-Authors

Avatar

Hartmut Ehrig

Technical University of Berlin

View shared research outputs
Top Co-Authors

Avatar

Ulrike Prange

Technical University of Berlin

View shared research outputs
Top Co-Authors

Avatar

Enrico Biermann

Technical University of Berlin

View shared research outputs
Top Co-Authors

Avatar

Jessica Winkelmann

Technical University of Berlin

View shared research outputs
Top Co-Authors

Avatar

Juan de Lara

Autonomous University of Madrid

View shared research outputs
Top Co-Authors

Avatar

Eduard Weiss

Technical University of Berlin

View shared research outputs
Top Co-Authors

Avatar

Günter Kuhns

Technical University of Berlin

View shared research outputs
Top Co-Authors

Avatar

Stefan Hänsgen

Technical University of Berlin

View shared research outputs
Researchain Logo
Decentralizing Knowledge