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 concept...

Full description

Bibliographic Details
Main Author: Leblebici, Erhan
Format: Others
Language:en
Published: 2018
Online Access:https://tuprints.ulb.tu-darmstadt.de/7426/1/2018-05-04_Leblebici_Erhan.pdf
Leblebici, Erhan <http://tuprints.ulb.tu-darmstadt.de/view/person/Leblebici=3AErhan=3A=3A.html> (2018): Inter-Model Consistency Checking and Restoration with Triple Graph Grammars.Darmstadt, Technische Universität, [Ph.D. Thesis]
id ndltd-tu-darmstadt.de-oai-tuprints.ulb.tu-darmstadt.de-7426
record_format oai_dc
spelling ndltd-tu-darmstadt.de-oai-tuprints.ulb.tu-darmstadt.de-74262020-07-15T07:09:31Z http://tuprints.ulb.tu-darmstadt.de/7426/ Inter-Model Consistency Checking and Restoration with Triple Graph Grammars Leblebici, Erhan 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 thesis, 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 present a TGG tool that implements our formal results and experimentally evaluate its scalability in real-world consistency scenarios. Finally, we report on an industrial project from the mechanical engineering domain where we applied this tool for maintaining consistency between computer-aided design and mechatronic simulation models. 2018-05-17 Ph.D. Thesis NonPeerReviewed text CC-BY-SA 4.0 International - Creative Commons, Attribution Share-alike https://tuprints.ulb.tu-darmstadt.de/7426/1/2018-05-04_Leblebici_Erhan.pdf Leblebici, Erhan <http://tuprints.ulb.tu-darmstadt.de/view/person/Leblebici=3AErhan=3A=3A.html> (2018): Inter-Model Consistency Checking and Restoration with Triple Graph Grammars.Darmstadt, Technische Universität, [Ph.D. Thesis] en info:eu-repo/semantics/doctoralThesis info:eu-repo/semantics/openAccess
collection NDLTD
language en
format Others
sources NDLTD
description 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 thesis, 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 present a TGG tool that implements our formal results and experimentally evaluate its scalability in real-world consistency scenarios. Finally, we report on an industrial project from the mechanical engineering domain where we applied this tool for maintaining consistency between computer-aided design and mechatronic simulation models.
author Leblebici, Erhan
spellingShingle Leblebici, Erhan
Inter-Model Consistency Checking and Restoration with Triple Graph Grammars
author_facet Leblebici, Erhan
author_sort Leblebici, Erhan
title Inter-Model Consistency Checking and Restoration with Triple Graph Grammars
title_short Inter-Model Consistency Checking and Restoration with Triple Graph Grammars
title_full Inter-Model Consistency Checking and Restoration with Triple Graph Grammars
title_fullStr Inter-Model Consistency Checking and Restoration with Triple Graph Grammars
title_full_unstemmed Inter-Model Consistency Checking and Restoration with Triple Graph Grammars
title_sort inter-model consistency checking and restoration with triple graph grammars
publishDate 2018
url https://tuprints.ulb.tu-darmstadt.de/7426/1/2018-05-04_Leblebici_Erhan.pdf
Leblebici, Erhan <http://tuprints.ulb.tu-darmstadt.de/view/person/Leblebici=3AErhan=3A=3A.html> (2018): Inter-Model Consistency Checking and Restoration with Triple Graph Grammars.Darmstadt, Technische Universität, [Ph.D. Thesis]
work_keys_str_mv AT leblebicierhan intermodelconsistencycheckingandrestorationwithtriplegraphgrammars
_version_ 1719327517249110016