Acta Informatica Pragensia 2022, 11(2), 179-204 | DOI: 10.18267/j.aip.1792777
Incremental Model Transformation with Epsilon in Model-Driven Engineering
- MDSE Research Group, Faculty of Computer Engineering, University of Isfahan, Isfahan, Iran
Model-Driven Engineering (MDE) is a software development paradigm that uses models as the main artifacts in the development process. MDE uses model transformations to propagate changes between source and target models. In some development scenarios, target models should be updated based on the evolution of source models. In such cases, it is required to re-execute all transformation rules to update the target model. Incremental execution of transformations, which partially executes the transformation rules, is a solution to this problem. The Epsilon Transformation Language (ETL) is a well-known model transformation language that does not support incremental executions. In this paper, we propose an approach to support the incremental execution of ETL transformations. Our proposal includes a process, as well as a prototype, to propagate changes to the target model. In the proposed approach, all the changes in the source model are detected to identify and re-execute the rules which deal with computing the required elements for updating the target model. We evaluated the correctness and performance of our approach by means of a case study. Compared to the standard ETL, the results are promising regarding the correctness of target models as well as faster execution of the transformation.
Keywords: Model-Driven engineering; Model transformation; Change propagation; Incremental transformation; Epsilon transformation language.
Received: February 27, 2022; Revised: April 5, 2022; Accepted: April 24, 2022; Prepublished online: April 27, 2022; Published: August 19, 2022 Show citation
References
- Anjorin, A., Buchmann, T. & Westfechtel, B. (2017). The Families to Persons Case. In A. Garcia-Dominguez, F. Krikava and G. Hinkel (eds.), Proceedings of the 10th Transformation Tool Contest (pp. 27-34). CEUR-WS. http://ceur-ws.org/Vol-2026/paper2.pdf
- Bergmann, G., Dávid, I., Hegedüs, Á., Horváth, Á., Ráth, I., Ujhelyi, Z. & Varró, D. (2015). VIATRA 3: A reactive model transformation platform. In D. Kolovos & M. Wimmer (Eds.), Theory and Practice of Model Transformations (ICMT). (pp. 101-110). Springer. https://doi.org/10.1007/978-3-319-21155-8_8
Go to original source...
- Bergmann, G., Ökrös, A., Ráth, I., Varró, D. & Varró, G. (2008). Incremental pattern matching in the VIATRA model transformation system. In Proceedings of the Third International Workshop on Graph and Model Transformations, (pp. 25-32). ACM. https://doi.org/10.1145/1402947.1402953
Go to original source...
- Boronat, A. (2021). Incremental execution of rule-based model transformation. International Journal on Software Tools for Technology Transfer, 23, 289-311. https://doi.org/10.1007/s10009-020-00583-y
Go to original source...
- Brambilla, M., Cabot, J. & Wimmer, M. (2017). Model-Driven Software Engineering in Practice. Second Edition. Morgan Claypool Publishers.
Go to original source...
- Csertán, G., Huszerl, G., Majzik, I., Pap, Z., Pataricza, A. & Varró, D. (2002). VIATRA - visual automated transformations for formal verification and validation of UML models. In Proceedings of 17th IEEE International Conference on Automated Software Engineering, (pp. 267-270). IEEE. https://doi.org/10.1109/ASE.2002.1115027
Go to original source...
- Czarnecki, K. & Helsen, S. (2006). Feature-based survey of model transformation approaches. IBM System Journal, 45(3), 621-645. https://doi.org/10.1147/sj.453.0621
Go to original source...
- Giese, H. & Wagner, R. (2009). From model transformation to incremental bidirectional model synchronization. Journal of Systems and Software, 8(1), 21-43. https://doi.org/10.1007/s10270-008-0089-9
Go to original source...
- Giese, H. & Wagner, R. (2006). Incremental model synchronization with triple graph grammars. In O. Nierstrasz, J. Whittle, D. Harel & G. Reggio (Eds.), Model Driven Engineering Languages and Systems (MODELS), (pp. 543-557). Springer. https://doi.org/10.1007/11880240_38
Go to original source...
- Hearnden, D., Lawley, M. & Raymond, K. (2006). Incremental Model Transformation for the Evolution of Model-Driven Systems. In O. Nierstrasz, J. Whittle, D. Harel & G. Reggio (Eds.), Model Driven Engineering Languages and Systems (MODELS), (pp. 321-335). Springer. https://doi.org/10.1007/11880240_23
Go to original source...
- Horváth, B., Horváth, Á. & Wimmer, M. (2020). Towards the next Generation of Reactive Model Transformations on Low-Code Platforms: Three Research Lines. In Proceedings of the 23rd ACM/IEEE International Conference on Model Driven Engineering Languages and Systems: Companion Proceedings (Article No.: 65). ACM. https://doi.org/10.1145/3417990.3420199
Go to original source...
- Johann., S. & Egyed, A. (2004). Instant and incremental transformation of models. In Proceedings of 19th International Conference on Automated Software Engineering, (pp. 362-365). IEEE. https://doi.org/10.1109/ASE.2004.1342765
Go to original source...
- Jouault, F. & Beaudoux, O. (2016). Efficient OCL-based Incremental Transformations. In 16th International Workshop in OCL and Textual Modeling@ MODELS, (pp. 121-136). https://oclworkshop.github.io/2016/papers/OCL16_paper_14.pdf
- Jouault, F. & Kurtev, I. (2006). Transforming Models with ATL. In J.-M. Bruel (Ed.), Satellite Events at the MODELS 2005 Conference, (pp. 128-138). Springer. https://doi.org/10.1007/978-3-540-69927-9_4
Go to original source...
- Jouault, F. & Tisi, M. (2010). Towards Incremental Execution of ATL Transformations. In L. Tratt & M. Gogolla (Eds.), Theory and Practice of Model Transformations (ICMT), (pp. 123-137). Springer. https://doi.org/10.1007/978-3-642-13688-7_9
Go to original source...
- Kolahdouz-Rahimi, S., Lano, K., Sharbaf, M., Karimi, M., & Alfraihi, H. (2020). A comparison of quality flaws and technical debt in model transformation specifications. Journal of Systems and Software, 169, 110684. https://doi.org/10.1016/j.jss.2020.110684
Go to original source...
- Kolovos, D. S. (2009). Establishing Correspondences between Models with the Epsilon Comparison Language. In R. F. Paige, A. Hartman & A. Rensink (Eds.), Model Driven Architecture - Foundations and Applications, (pp. 146-157). Springer. https://doi.org/10.1007/978-3-642-02674-4_11
Go to original source...
- Kolovos, D. S., Paige, R. F. & Polack, F. A. C. (2008). The Epsilon Transformation Language. In A. Vallecillo, J. Gray & A. Pierantonio (Eds.), Theory and Practice of Model Transformations (ICMT), (pp. 46-60). Springer. https://doi.org/10.1007/978-3-540-69927-9_4
Go to original source...
- Kolovos, D. S., Rose, L. M., Matragkas, N., Paige, R. F., Guerra, E., Cuadrado, J. S., De Lara, J., Ráth, I., Varró, D., Tisi, M. & Cabot, J. (2013). A Research Roadmap Towards Achieving Scalability in Model Driven Engineering. In Proceedings of the Workshop on Scalability in Model Driven Engineering, (pp. 1-10). ACM. https://doi.org/10.1145/2487766.2487768
Go to original source...
- Kusel, A., Etzlstorfer, J., Kapsammer, E., Langer, P., Retschitzegger, W., Schoenboeck, J., Schwinger, W. & Wimmer, M. (2013). A survey on incremental model transformation approaches. In Proceedings of the Workshop on Models and Evolution co-located with ACM/IEEE 16th International Conference on Model Driven Engineering Languages and Systems (MoDELS 2013), (pp. 4-13). CEUR-WP. http://ceur-ws.org/Vol-1090/1.pdf
- Le Calvar, T., Jouault, F., Chhel, F., & Clavreul, M. (2019). Efficient ATL Incremental Transformations. The Journal of Object Technology, 18(3), 1-17. https://doi.org/10.5381/jot.2019.18.3.a2
Go to original source...
- Le Calvar, T., Jouault, F., Chhel, F., Saubion, F. & Clavreul, M. (2020). Intensional View Definition with Constrained Incremental Transformation Rules. In Proceedings of 22nd ACM/IEEE International Conference on Model Driven Engineering Languages and Systems Companion (MODELS-C), (pp. 395-402). IEEE. https://doi.org/10.1109/MODELS-C.2019.00061
Go to original source...
- Martínez, S., Tisi, M., & Douence, R. (2017). Reactive model transformation with ATL. Science of Computer Programming, 136, 1-16. https://doi.org/10.1016/j.scico.2016.08.006
Go to original source...
- Ogunyomi, B., Rose, L. M., & Kolovos, D. S. (2018). Incremental execution of model-to-text transformations using property access traces. Software & Systems Modeling, 18(1), 367-383. https://doi.org/10.1007/s10270-018-0666-5
Go to original source...
- Ogunyomi, B., Rose, L. M. & Kolovos, D. S. (2014). On the use of signatures for source incremental model-to-text transformation. In J. Dingel, W. Schulte, I. Ramos, S. Abrahão & E. Insfran (Eds.), Model Driven Engineering Languages and Systems (MODELS) (pp. 84-98). Springer. https://doi.org/10.1007/978-3-319-11653-2_6
Go to original source...
- OMG. (2016). MOF2 Query/View/Transformation (QVT) Specification, V1.3. https://www.omg.org/spec/QVT/1.3
- Paige, R. F., Kolovos, D. S., Rose, L. M., Drivalos, N. & Polack, F. A. C. (2009). The design of a conceptual framework and technical infrastructure for model management language engineering. In Proceedings of 14th IEEE International Conference on Engineering of Complex Computer Systems, (pp. 162-171). IEEE. https://doi.org/10.1109/ICECCS.2009.14
Go to original source...
- Peffers, K., Tuunanen, T., Rothenberger, M. A., & Chatterjee, S. (2007). A Design Science Research Methodology for Information Systems Research. Journal of Management Information Systems, 24(3), 45-77. https://doi.org/10.2753/mis0742-1222240302
Go to original source...
- Ráth, I., Bergmann, G., Ökrös, A. & Varró, D. (2008). Live model transformations driven by incremental pattern matching. In A. Vallecillo, J. Gray & A. Pierantonio (Eds.), Theory and Practice of Model Transformations (ICMT), (pp. 107-121). Springer. https://doi.org/10.1007/978-3-540-69927-9_8
Go to original source...
- Runeson, P., & Höst, M. (2008). Guidelines for conducting and reporting case study research in software engineering. Empirical Software Engineering, 14(2), 131-164. https://doi.org/10.1007/s10664-008-9102-8
Go to original source...
- Samimi-Dehkordi, L., Zamani, B., & Kolahdouz-Rahimi, S. (2018). EVL+Strace: a novel bidirectional model transformation approach. Information and Software Technology, 100, 47-72. https://doi.org/10.1016/j.infsof.2018.03.011
Go to original source...
- Sendall, S., & Kozaczynski, W. (2003). Model transformation: the heart and soul of model-driven software development. IEEE Software, 20(5), 42-45. https://doi.org/10.1109/ms.2003.1231150
Go to original source...
- Sharbaf, M., & Zamani, B. (2020). Configurable three-way model merging. Software: Practice and Experience, 50(8), 1565-1599. https://doi.org/10.1002/spe.2835
Go to original source...
- Balsamo, S., Di Marco, A., Inverardi, P., & Simeoni, M. (2004). Model-based performance prediction in software development: a survey. IEEE Transactions on Software Engineering, 30(5), 295-310. https://doi.org/10.1109/tse.2004.9
Go to original source...
- Tisi, M., Martínez, S., Jouault, F. & Cabot, J. (2011). Lazy Execution of Model-to-Model Transformations. In J. Whittle, T. Clark & T. Kühne (Eds.), Model Driven Engineering Languages and Systems (MODELS), (pp. 32-46). Springer. https://doi.org/10.1007/978-3-642-24485-8_4
Go to original source...
- Varró, D., Bergmann, G., Hegedüs, Á., Horváth, Á., Ráth, I., & Ujhelyi, Z. (2016). Road to a reactive and incremental model transformation platform: three generations of the VIATRA framework. Software & Systems Modeling, 15(3), 609-629. https://doi.org/10.1007/s10270-016-0530-4
Go to original source...
- Weidmann, N., Anjorin, A., Fritsche, L., Varró, G., Schürr, A. & Leblebici, E. (2019). Incremental Bidirectional Model Transformation with eMoflon::IBeX. In Proceedings of the Eighth International Workshop on Bidirectional Transformations (BX 2019), (pp. 45-55). CEUR-WS. http://ceur-ws.org/Vol-2355/paper4.pdf
This is an open access article distributed under the terms of the Creative Commons Attribution 4.0 International License (CC BY 4.0), which permits use, distribution, and reproduction in any medium, provided the original publication is properly cited. No use, distribution or reproduction is permitted which does not comply with these terms.