Termination and Expressiveness of Execution Strategies for Networks of Bidirectional Model Transformations
Open Access
- 24 June 2022
- journal article
- research article
- Published by Association for Computing Machinery (ACM) in Formal Aspects of Computing
- Vol. 35 (3)
- https://doi.org/10.1145/3543845
Abstract
When developers describe a software system with multiple models, such as architecture diagrams, deployment descriptions, and source code, these models must represent the system in a uniform way, i.e., they must be and stay consistent. One means to automatically preserve consistency after changes to models are model transformations, of which bidirectional transformations that preserve consistency between two models have been well researched. To preserve consistency between multiple models, such transformations can be combined to networks. When transformations are developed independently and reused modularly, the resulting network can be of arbitrary topology. For such networks, no universal strategy exists to orchestrate the execution of transformations such that the resulting models are consistent. In this paper, we prove that termination of such a strategy can only be guaranteed if it is incomplete, i.e., if it is allowed to fail to restore consistency for some changes although an execution order of transformations exists that yields consistent models. We propose such a strategy, for which we prove termination and show that and why it makes it easier for users of model transformation networks to understand the reasons whenever the strategy fails. In addition, we provide a simulator for the comparison of different execution strategies. These findings help transformation developers and users in understanding when and why they can expect the execution of a transformation network to terminate and when they can even expect it to succeed. Furthermore, the proposed strategy guarantees them termination and supports them in finding the reason whenever it is not successful.Keywords
This publication has 27 references indexed in Scilit:
- A Feature-Based Classification of Model Repair ApproachesIEEE Transactions on Software Engineering, 2016
- A three-dimensional taxonomy for bidirectional model synchronizationJournal of Systems and Software, 2016
- Extending Model to Model Transformation Results from Triple Graph Grammars to Multiple ModelsPublished by Springer Science and Business Media LLC ,2015
- Combining termination proofs in model transformation systemsMathematical Structures in Computer Science, 2014
- Correct-by-construction synthesis of model transformations using transformation patternsSoftware and Systems Modeling, 2012
- Change-driven model transformationsSoftware and Systems Modeling, 2011
- Synchronizing concurrent model updates based on bidirectional transformationSoftware and Systems Modeling, 2011
- Module superimposition: a composition technique for rule-based model transformation languagesSoftware and Systems Modeling, 2009
- Bidirectional model transformations in QVT: semantic issues and open questionsSoftware and Systems Modeling, 2008
- MDI: A Rule-based Multi-document and Tool Integration ApproachSoftware and Systems Modeling, 2006