Research Topic

Inter-Model Consistency Checking and Restoration with Triple Graph Grammars

Software development is a complex task. The success of a software project highly relies on the involvement of domain experts in the development process. In recent years, therefore, the field of software engineering has been striving to elevate the level of abstraction towards domain-specific concepts (instead of the computation-oriented nature of classical programming languages). Model-Driven Engineering (MDE), a novel software development methodology, lies at the heart of these efforts. In MDE, a model represents an abstraction of a system with one specific goal in mind. Hence, the MDE strategy does not only deal with abstractions but also advocates the co-existence of related models capturing different aspects of the same system. While this supports separation of concerns, consistency management between related models becomes a crucial challenge as models are changed throughout their life cycle. Two basic building blocks of consistency management are (i) consistency checking to indicate whether or to what extent two related models are consistent and (ii) consistency restoration to suitably handle discrepancies between models.

To address consistency management tasks in a formally-founded manner, bidirectional transformations (BX) have been established as a research area. Among the diverse BX approaches, Triple Graph Grammars (TGGs) represent a prominent technique with various implementations and industrial applications. In this setting, models are formalized as graphs and consistency is described as a grammar constructing two consistent models together with a correspondence model. Consistency management tools are then automatically derived from this description.

Current TGG approaches (and in fact also BX approaches in general) focus on consistency scenarios where only one model is maintained by human intelligence at the same time and the other one is automatically updated by consistency restoration. Consistency management between two concurrently developed models, however, is not sufficiently supported as practical solutions for consistency checking are essentially missing. Strategies for consistency restoration, furthermore, range from heuristics to auxiliary model analyses which constitute the most complex and least understood part of TGGs. Despite sharing the same basic goal and the same formal foundation, it is difficult to exchange ideas amongst the different TGG approaches.

In this doctoral project, therefore, we first establish consistency checking as a novel use case of TGGs. We identify search space problems in consistency checking and overcome them by combining TGGs with linear optimization techniques. Second, we propose a novel consistency restoration procedure that exploits incremental pattern matching techniques to address the intermediate steps of consistency restoration in a simplified manner. Furthermore, we develop a TGG tool that implements our formal results and experimentally evaluate its scalability in real-world consistency scenarios. Finally, we conduct an industrial cooperation with Siemens AG where we apply this tool for maintaining consistency between computer-aided design and mechatronic simulation models.

Key Research Area

Model-Driven Software Engineering; Concurrent Engineering


Erhan Leblebici


Dolivostraße 15

D-64293 Darmstadt



+49 6151 16 - 24401 or 24402


+49 6151 16 - 24404




leblebici (at) gsc.tu...

 Print |  Impressum |  Sitemap |  Search |  Contact |  Privacy Policy
zum Seitenanfangzum Seitenanfang