Abstract
When using multiple models to describe a (software) system, one can use a network of model transformations to keep the models consistent after changes. No strategy exists, however, to orchestrate the execution of transformations if the network has an arbitrary topology. In this paper, we analyse how often and in which order transformations need to be executed. We argue why linear execution bounds are too restrictive to be useful in practice and prove that there is no upper bound for the number of necessary executions. To avoid non-termination, we propose a conservative strategy that makes execution failures easier to understand. These insights help developers and users of transformation networks to understand under which circumstances their networks can terminate. Additionally, the proposed strategy helps them to find the cause when a network cannot restore consistency.
This work was supported by funding of the Helmholtz Association (HGF) through the Competence Center for Applied Security Technology (KASTEL).
Chapter PDF
Similar content being viewed by others
References
Anjorin, A., Rose, S., Deckwerth, F., and Schürr, A.: “Efficient Model Synchronization with View Triple Graph Grammars”. In: Modelling Foundations and Applications, pp. 1–17. Springer International Publishing (2014)
Cleve, A., Kindler, E., Stevens, P., and Zaytsev, V.: “Multidirectional Transformations and Synchronisations (Dagstuhl Seminar 18491)”. Dagstuhl Reports 8(12), 1–48 (2019)
Di Rocco, J., Di Ruscio, D., Heinz, M., Iovino, L., Lämmel, R., and Pierantonio, A.: “Consistency Recovery in Interactive Modeling”. In: 3rd International Workshop on Executable Modeling co-Located with ACM/IEEE 20th International Conference on Model Driven Engineering Languages and Systems. Vol-2019, pp. 116–122. CEUR-WS.org (2017)
Diskin, Z., Gholizadeh, H., Wider, A., and Czarnecki, K.: “A Three-Dimensional Taxonomy for Bidirectional Model Synchronization”. Journal of Systems and Software 111, 298–322 (2016)
Diskin, Z., König, H., and Lawford, M.: “Multiple Model Synchronization with Multiary Delta Lenses”. In: Fundamental Approaches to Software Engineering, pp. 21–37. Springer International Publishing (2018)
Diskin, Z., Xiong, Y., Czarnecki, K., Ehrig, H., Hermann, F., and Orejas, F.: “From State- to Delta-Based Bidirectional Model Transformations: The Symmetric Case”. In: Model Driven Engineering Languages and Systems, pp. 304–318. Springer, Berlin Heidelberg (2011)
Ehrig, H., Ehrig, K., Lara, J. de, Taentzer, G., Varró, D., and Varró-Gyapay, S.: “Termination Criteria for Model Transformation”. In: Fundamental Approaches to Software Engineering, pp. 49–63. Springer, Berlin Heidelberg (2005)
Etien, A., Aranega, V., Blanc, X., and Paige, R.F.: “Chaining Model Transformations”. In: First Workshop on the Analysis of Model Transformations, pp. 9–14. ACM (2012)
Etien, A., Muller, A., Legrand, T., and Blanc, X.: “Combining Independent Model Transformations”. In: 2010 ACM Symposium on Applied Computing, pp. 2237–2243. ACM (2010)
Gleitze, J.: GitHub: Transformation Network Simulator, (2021). https://github.com/jGleitz/transformationnetwork-simulator (visited on 01/14/2021)
Gleitze, J.: Transformation Network Simulator, (2021). https://jgleitz.github.io/transformationnetwork-simulator (visited on 01/14/2021)
Guissouma, H., Klare, H., Sax, E., and Burger, E.: “An Empirical Study on the Current and Future Challenges of Automotive Software Release and Configuration Management”. In: 2018 44th Euromicro Conference on Software Engineering and Advanced Applications, pp. 298–305. IEEE (2018)
Klare, H.: “Multi-model Consistency Preservation”. In: 21st ACM/IEEE International Conference on Model Driven Engineering Languages and Systems: Companion Proceedings, pp. 156–161. ACM (2018)
Klare, H., and Gleitze, J.: “Commonalities for Preserving Consistency of Multiple Models”. In: 22nd ACM/IEEE International Conference on Model Driven Engineering Languages and Systems Companion, pp. 371–378. IEEE (2019)
Klare, H., Kramer, M.E., Langhammer, M., Werle, D., Burger, E., and Reussner, R.: “Enabling consistency in view-based system development - The Vitruvius approach”. Journal of Systems and Software 171 (2020)
Klare, H., Syma, T., Burger, E., and Reussner, R.: “A Categorization of Interoperability Issues in Networks of Transformations”. In: 12th International Conference on Model Transformations. Journal of Object Technology (2019)
Königs, A., and Schürr, A.: “MDI: A Rule-based Multi-document and Tool Integration Approach”. Software and Systems Modeling 5(4), 349–368 (2006)
Kusel, A., Etzlstorfer, J., Kapsammer, E., Langer, P., Retschitzegger, W., Schoenboeck, J., Schwinger, W., and Wimmer, M.: “A Survey on Incremental Model Transformation Approaches”. In: Workshop on Models and Evolution co-located with ACM/IEEE 16th International Conference on Model Driven Engineering Languages and Systems. Vol-1090, pp. 4–13. CEUR-WS.org (2013)
Lúcio, L., Mustafiz, S., Denil, J., Vangheluwe, H., and Jukss, M.: “FTG+PM: An Integrated Framework for Investigating Model Transformation Chains”. In: SDL 2013: Model-Driven Dependability Engineering, pp. 182–202. Springer Berlin Heidelberg (2013)
Macedo, N., Cunha, A., and Pacheco, H.: “Towards a Framework for Multi-Directional Model Transformations”. In: 3rd International Workshop on Bidirectional Transformations. Vol-1133. CEUR-WS.org (2014)
Macedo, N., Jorge, T., and Cunha, A.: “A Feature-Based Classification of Model Repair Approaches”. IEEE Transactions on Software Engineering 43(7), 615–640
Object Management Group (OMG): “Meta Object Facility (MOF) 2.0-Query/View/Transformation Specification”, Version 1.3 (2016)
Pilgrim, J. von, Vanhooff, B., Schulz-Gerlach, I., and Berbers, Y.: “Constructing and Visualizing Transformation Chains”. In: Model Driven Architecture - Foundations and Applications, pp. 17–32. Springer Berlin Heidelberg (2008)
Reussner, R.H., Becker, S., Happe, J., Heinrich, R., Koziolek, A., Koziolek, H., Kramer, M., and Krogmann, K.: “Modeling and Simulating Software Architectures – the Palladio Approach”. MIT Press (2016)
Samimi-Dehkordi, L., Zamani, B., and Kolahdouz-Rahimi, S.: “Bidirectional Model Transformation Approaches - A Comparative Study”. In: 6th International Conference on Computer and Knowledge Engineering, pp. 314–320. IEEE (2016)
Schürr, A.: “Specification of graph translators with triple graph grammars”. In: Graph-Theoretic Concepts in Computer Science, pp. 151–163. Springer Berlin Heidelberg (1995)
Stevens, P.: “A Landscape of Bidirectional Model Transformations”. In: Generative and Transformational Techniques in Software Engineering II, pp. 408–424. Springer Berlin Heidelberg (2008)
Stevens, P.: “Bidirectional Model Transformations in QVT: Semantic Issues and Open Questions”. Software and Systems Modeling 9(1), 7 (2010)
Stevens, P.: “Connecting software build with maintaining consistency between models: towards sound, optimal, and flexible building from megamodels”. Software and Systems Modeling 19(4), 935–958 (2020)
Stevens, P.: “Maintaining consistency in networks of models: bidirectional transformations in the large”. Software and Systems Modeling 19(1), 39–65 (2020)
Stünkel, P., König, H., Lamo, Y., and Rutle, A.: “Multimodel Correspondence through Inter-Model Constraints”. In: 2nd International Conference on Art, Science, and Engineering of Programming Companion, pp. 9–17. ACM (2018)
The Linux Foundation: OpenAPI Initiative, (2021). https://www.openapis.org/ (visited on 01/14/2021)
Trollmann, F., and Albayrak, S.: “Extending Model Synchronization Results from Triple Graph Grammars to Multiple Models”. In: Theory and Practice of Model Transformations, pp. 91–106. Springer International Publishing (2016)
Trollmann, F., and Albayrak, S.: “Extending Model to Model Transformation Results from Triple Graph Grammars to Multiple Models”. In: Theory and Practice of Model Transformations, pp. 214–229. Springer International Publishing (2015)
Vanhooff, B., Ayed, D., Van Baelen, S., Joosen, W., and Berbers, Y.: “UniTI: A Unified Transformation Infrastructure”. In: Model Driven Engineering Languages and Systems, pp. 31–45. Springer Berlin Heidelberg (2007)
Wagelaar, D., Tisi, M., Cabot, J., and Jouault, F.: “Towards a General Composition Semantics for Rule-Based Model Transformation”. In: Model Driven Engineering Languages and Systems, pp. 623–637. Springer Berlin Heidelberg (2011)
Xiong, Y., Song, H., Hu, Z., and Takeichi, M.: “Synchronizing Concurrent Model Updates Based on Bidirectional Transformation”. Software and Systems Modeling 12(1), 89–104 (2013)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Open Access This chapter is licensed under the terms of the Creative Commons Attribution 4.0 International License (http://creativecommons.org/licenses/by/4.0/), which permits use, sharing, adaptation, distribution and reproduction in any medium or format, as long as you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons license and indicate if changes were made.
The images or other third party material in this chapter are included in the chapter's Creative Commons license, unless indicated otherwise in a credit line to the material. If material is not included in the chapter's Creative Commons license and your intended use is not permitted by statutory regulation or exceeds the permitted use, you will need to obtain permission directly from the copyright holder.
Copyright information
© 2021 The Author(s)
About this paper
Cite this paper
Gleitze, J., Klare, H., Burger, E. (2021). Finding a Universal Execution Strategy for Model Transformation Networks. In: Guerra, E., Stoelinga, M. (eds) Fundamental Approaches to Software Engineering. FASE 2021. Lecture Notes in Computer Science(), vol 12649. Springer, Cham. https://doi.org/10.1007/978-3-030-71500-7_5
Download citation
DOI: https://doi.org/10.1007/978-3-030-71500-7_5
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-71499-4
Online ISBN: 978-3-030-71500-7
eBook Packages: Computer ScienceComputer Science (R0)