TU Darmstadt / ULB / TUbiblio

Inter-Model Consistency Checking and Restoration with Triple Graph Grammars

Leblebici, Erhan :
Inter-Model Consistency Checking and Restoration with Triple Graph Grammars.
[Online-Edition: http://tuprints.ulb.tu-darmstadt.de/7426]
Technische Universität , Darmstadt
[Dissertation], (2018)

Offizielle URL: http://tuprints.ulb.tu-darmstadt.de/7426

Kurzbeschreibung (Abstract)

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.

Typ des Eintrags: Dissertation
Erschienen: 2018
Autor(en): Leblebici, Erhan
Titel: Inter-Model Consistency Checking and Restoration with Triple Graph Grammars
Sprache: Englisch
Kurzbeschreibung (Abstract):

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.

Ort: Darmstadt
Fachbereich(e)/-gebiet(e): 18 Fachbereich Elektrotechnik und Informationstechnik
18 Fachbereich Elektrotechnik und Informationstechnik > Institut für Datentechnik > Echtzeitsysteme
Exzellenzinitiative > Graduiertenschulen > Graduate School of Computational Engineering (CE)
Hinterlegungsdatum: 20 Mai 2018 19:55
Offizielle URL: http://tuprints.ulb.tu-darmstadt.de/7426
URN: urn:nbn:de:tuda-tuprints-74264
Gutachter / Prüfer: Schürr, Prof. Dr. Andy ; Westfechtel, Prof. Dr. Bernhard
Datum der Begutachtung bzw. der mündlichen Prüfung / Verteidigung / mdl. Prüfung: 4 Mai 2018
Alternatives oder übersetztes Abstract:
AbstractSprache
Softwareentwicklung ist eine komplexe Aufgabe. Der Erfolg eines Softwareprojektes ist in hohem Maße auf die Beteiligung der Domänenexperten im Entwicklungsprozess angewiesen. Das Gebiet Softwaretechnik strebt daher höhere Abstraktionsstufen mit Fokus auf domänenspezifische Konzepte an (anstatt der auf Rechnen orientierten Natur der klassischen Programmiersprachen). Model-Driven Engineering (MDE), eine neue Softwareentwicklungsmethodik, liegt im Mittelpunkt dieser Bestrebungen. In MDE stellt ein Modell eine Abstraktion eines Systems mit einem spezifischen Ziel dar. Folglich beschäftigt sich MDE nicht nur mit Abstraktionen, sondern befürwortet auch die Koexistenz verwandter Modelle, die dasselbe System beschreiben. Während dies die Trennung der Zuständigkeiten unterstützt, wird Konsistenzverwaltung zwischen verwandten Modellen eine wichtige Herausforderung, da Modelle sich im Laufe ihres Lebenszyklus ändern. Zwei Grundbausteine der Konsistenzverwaltung sind (i) Konsistenzprüfung, um zu bestimmen, ob oder inwiefern zwei verwandte Modelle konsistent sind und (ii) Konsistenzwiederherstellung, um Diskrepanzen zwischen den Modellen zu beseitigen. Um Konsistenzverwaltung mit formalen Mitteln anzugehen wurden bidirektionale Transformationen (BX) als ein Forschungsfeld etabliert. Unter den BX-Ansätzen stellen Tripel-Graph-Grammatiken (TGGen) eine prominente Technik mit verschiedenen Implementierungen und industriellen Anwendungen dar. Dabei werden Modelle als Graphen und Konsistenzbeziehungen als eine Grammatik beschrieben, die zwei konsistente Modelle mit einem Korrespondenzmodell aufbaut. Werkzeuge zur Konsistenzverwaltung werden aus dieser Beschreibung generiert. Existierende TGG-Ansätze (sowie BX-Ansätze generell) setzen weitgehend voraus, dass gleichzeitig nur das eine Modell durch menschliche Intelligenz gepflegt und das andere durch Konsistenzwiederherstellung automatisch aktualisiert wird. Das Problem der Konsistenzerhaltung zwischen zwei konkurrierend gepflegten Modellen bleibt dagegen offen, da praktische Lösungen zur Konsistenzprüfung fehlen. Des Weiteren reichen die Strategien zur Konsistenzwiederherstellung von Heuristiken bis hin zu zusätzlichen Modellanalysen, die den unübersichtlichsten Teil der TGGen bilden. Das erschwert auch den Ideenaustausch zwischen unterschiedlichen TGG-Ansätzen, obwohl diese dieselben Ziele und Grundlagen haben. In dieser Thesis wird erstens Konsistenzprüfung als ein neuer Anwendungsfall der TGGen eingeführt. Suchraumprobleme in Konsistenzprüfung werden identifiziert und durch lineare Optimierungstechniken bewältigt. Zweitens wird eine neue Prozedur zur Konsistenzwiederherstellung vorgestellt, die von Techniken zur inkrementellen Graphmustersuche Gebrauch macht, um Konsistenzwiederherstellung zu vereinfachen. Des Weiteren wird ein TGG-Werkzeug vorgestellt, das die formalen Ergebnisse umsetzt und dessen Skalierbarkeit mit realen Beispielen evaluiert wird. Zum Abschluss wird über ein Industrie-Projekt aus der Maschinenbau-Domäne berichtet, in dem dieses Werkzeug zur Konsistenzerhaltung zwischen Modellen von rechnergestütztem Konstruieren und mechatronischer Simulation benutzt wurde.Deutsch
Export:

Optionen (nur für Redakteure)

Eintrag anzeigen Eintrag anzeigen