Fritsche, Lars ; Kosiol, Jens ; Schürr, Andy ; Taentzer, Gabriele (2024)
Avoiding unnecessary information loss: correct and efficient model synchronization based on triple graph grammars.
In: International Journal on Software Tools for Technology Transfer, 2021, 23 (3)
doi: 10.26083/tuprints-00023912
Artikel, Zweitveröffentlichung, Verlagsversion
![]() | Es ist eine neuere Version dieses Eintrags verfügbar. |
Kurzbeschreibung (Abstract)
Model synchronization, i.e., the task of restoring consistency between two interrelated models after a model change, is a challenging task. Triple graph grammars (TGGs) specify model consistency by means of rules that describe how to create consistent pairs of models. These rules can be used to automatically derive further rules, which describe how to propagate changes from one model to the other or how to change one model in such a way that propagation is guaranteed to be possible. Restricting model synchronization to these derived rules, however, may lead to unnecessary deletion and recreation of model elements during change propagation. This is inefficient and may cause unnecessary information loss, i.e., when deleted elements contain information that is not represented in the second model, this information cannot be recovered easily. Short-cut rules have recently been developed to avoid unnecessary information loss by reusing existing model elements. In this paper, we show how to automatically derive (short-cut) repair rules from short-cut rules to propagate changes such that information loss is avoided and model synchronization is accelerated. The key ingredients of our rule-based model synchronization process are these repair rules and an incremental pattern matcher informing about suitable applications of them. We prove the termination and the correctness of this synchronization process and discuss its completeness. As a proof of concept, we have implemented this synchronization process in eMoflon, a state-of-the-art model transformation tool with inherent support of bidirectionality. Our evaluation shows that repair processes based on (short-cut) repair rules have considerably decreased information loss and improved performance compared to former model synchronization processes based on TGGs.
Typ des Eintrags: | Artikel |
---|---|
Erschienen: | 2024 |
Autor(en): | Fritsche, Lars ; Kosiol, Jens ; Schürr, Andy ; Taentzer, Gabriele |
Art des Eintrags: | Zweitveröffentlichung |
Titel: | Avoiding unnecessary information loss: correct and efficient model synchronization based on triple graph grammars |
Sprache: | Englisch |
Publikationsjahr: | 30 April 2024 |
Ort: | Darmstadt |
Publikationsdatum der Erstveröffentlichung: | Juni 2021 |
Ort der Erstveröffentlichung: | Berlin ; Heidelberg |
Verlag: | Springer |
Titel der Zeitschrift, Zeitung oder Schriftenreihe: | International Journal on Software Tools for Technology Transfer |
Jahrgang/Volume einer Zeitschrift: | 23 |
(Heft-)Nummer: | 3 |
DOI: | 10.26083/tuprints-00023912 |
URL / URN: | https://tuprints.ulb.tu-darmstadt.de/23912 |
Zugehörige Links: | |
Herkunft: | Zweitveröffentlichung DeepGreen |
Kurzbeschreibung (Abstract): | Model synchronization, i.e., the task of restoring consistency between two interrelated models after a model change, is a challenging task. Triple graph grammars (TGGs) specify model consistency by means of rules that describe how to create consistent pairs of models. These rules can be used to automatically derive further rules, which describe how to propagate changes from one model to the other or how to change one model in such a way that propagation is guaranteed to be possible. Restricting model synchronization to these derived rules, however, may lead to unnecessary deletion and recreation of model elements during change propagation. This is inefficient and may cause unnecessary information loss, i.e., when deleted elements contain information that is not represented in the second model, this information cannot be recovered easily. Short-cut rules have recently been developed to avoid unnecessary information loss by reusing existing model elements. In this paper, we show how to automatically derive (short-cut) repair rules from short-cut rules to propagate changes such that information loss is avoided and model synchronization is accelerated. The key ingredients of our rule-based model synchronization process are these repair rules and an incremental pattern matcher informing about suitable applications of them. We prove the termination and the correctness of this synchronization process and discuss its completeness. As a proof of concept, we have implemented this synchronization process in eMoflon, a state-of-the-art model transformation tool with inherent support of bidirectionality. Our evaluation shows that repair processes based on (short-cut) repair rules have considerably decreased information loss and improved performance compared to former model synchronization processes based on TGGs. |
Freie Schlagworte: | Bidirectional transformation, Model synchronization, Triple graph grammar, Incremental pattern matching, Change propagation |
Status: | Verlagsversion |
URN: | urn:nbn:de:tuda-tuprints-239124 |
Zusätzliche Informationen: | Special Issue: FASE 2019 |
Sachgruppe der Dewey Dezimalklassifikatin (DDC): | 000 Allgemeines, Informatik, Informationswissenschaft > 004 Informatik 600 Technik, Medizin, angewandte Wissenschaften > 621.3 Elektrotechnik, Elektronik |
Fachbereich(e)/-gebiet(e): | 18 Fachbereich Elektrotechnik und Informationstechnik 18 Fachbereich Elektrotechnik und Informationstechnik > Institut für Datentechnik > Echtzeitsysteme 18 Fachbereich Elektrotechnik und Informationstechnik > Institut für Datentechnik |
Hinterlegungsdatum: | 30 Apr 2024 11:23 |
Letzte Änderung: | 13 Mai 2024 09:19 |
PPN: | |
Export: | |
Suche nach Titel in: | TUfind oder in Google |
Verfügbare Versionen dieses Eintrags
- Avoiding unnecessary information loss: correct and efficient model synchronization based on triple graph grammars. (deposited 30 Apr 2024 11:23) [Gegenwärtig angezeigt]
![]() |
Frage zum Eintrag |
Optionen (nur für Redakteure)
![]() |
Redaktionelle Details anzeigen |