Advertisement

Survey and classification of model transformation tools

  • Nafiseh KahaniEmail author
  • Mojtaba Bagherzadeh
  • James R. Cordy
  • Juergen Dingel
  • Daniel Varró
Regular Paper

Abstract

Model transformation lies at the very core of model-driven engineering, and a large number of model transformation languages and tools have been proposed over the last few years. These tools can be used to develop, transform, merge, exchange, compare, and verify models and metamodels. In this paper, we present a comprehensive catalog of existing metamodel-based transformation tools and compare them using a qualitative framework. We begin by organizing the 60 tools we identified into a general classification based on the transformation approach used. We then compare these tools using a number of particular facets, where each facet belongs to one of six different categories and may contain several attributes. The results of the study are discussed in detail and made publicly available in a companion website with a capability to search for tools using the specified facets as search criteria. Our study provides a thorough picture of the state-of-the-art in model transformation techniques and tools. Our results are potentially beneficial to many stakeholders in the modeling community, including practitioners, researchers, and transformation tool developers.

Keywords

Model-driven development Model transformation tools Metamodel Classification Survey 

Notes

Acknowledgements

The assistance of the following people is gratefully acknowledged: Kevin Lano, Jim Steel, Antonio Cicchetti, Jesús Manuel Almendros Jiménez, Cedric Dumoulin, Alcino Cunha, Nuno Macedo, Li Dan, Sreedhar S. Reddy, Bernhard Schätz, Rusi Popov, Sven Efftinge, Peter Friese, Janne Luoma, Juha-Pekka Tolvanen, Christopher Gerking, Didier Vojtisek, Desfray Philippe, Timothy Lethbridge, Thomas Degueule, Donatas Mazeika, Paul Boocock, Jens von Pilgrim, Hui Song, Joël Cheuoua, Gary Reeves, Arend Rensink, Ed Willink, Hans Vangheluwe, Simon Van Mierlo, Claudia Ermel, Peter Braun, Soichiro Hidaka, Zhenjiang Hu, Andy Schürr, Gergely Varro, Joel Greenyer, Wimmer Manuel, Gehan M.K. Selim, Pieter Van Gorp, Jesús Sánchez Cuadrado, Dimitris Kolovos, Mezei Gergely, William Piers, Albert Zündorf, Edgar Jakumeit, Christian Krause, Jean-Michel Bruel, the Blu Age customer service, Audris Kalnins, Dermot O’Bryan, Thomas Capelle, Cédric Brun, and Reto Carrara. This work is supported in part by the Natural Sciences and Engineering Research Council of Canada.

References

  1. 1.
    Kahani, N., Cordy, J.: Comparison and evaluation of model transformation tools. In: Technical Report 2015-627, Queen’s University, pp. 1–42 (2015)Google Scholar
  2. 2.
    Bagherzadeh, M., Hili, N., Dingel, J.: Model-level, platform-independent debugging in the context of the model-driven development of real-time systems. In: Proceedings of the 2017 11th Joint Meeting on Foundations of Software Engineering, pp. 419–430 (2017)Google Scholar
  3. 3.
    Lúcio, L., Amrani, M., Dingel, J., Lambers, L., Salay, R., Selim, G., Syriani, E., Wimmer, M.: Model transformation intents and their properties. In: Software and Systems Modeling, pp. 1–38 (2014)Google Scholar
  4. 4.
    Czarnecki, K., Helsen, S.: Feature-based survey of model transformation approaches. IBM Syst. J. 45(3), 621–645 (2006)CrossRefGoogle Scholar
  5. 5.
    Mens, T., Gorp, P.V.: A taxonomy of model transformation. Electron. Notes Theor. Comput. Sci. 152, 125–142 (2006)CrossRefGoogle Scholar
  6. 6.
    Salem, R.B., Grangel, R., Bourey, J.: A comparison of model transformation tools: Application for transforming GRAI extended Actigrams into UML activity diagrams. In: Computers in Industry, pp. 682–693 (2008)Google Scholar
  7. 7.
    Macedo, N., Jorge, T., Cunha, A.: A feature-based classification of model repair approaches. IEEE Trans. Softw. Eng. 43(7), 615–640 (2017)CrossRefGoogle Scholar
  8. 8.
    Jakumeit, E., Buchwald, S., Wagelaar, D., Dan, L., Hegedüs, Á., Herrmannsdörfer, M., Horn, T., Kalnina, E., Krause, C., Lano, K., Lepper, M., Rensink, A., Rose, L., Wätzoldt, S., Mazanek, S.: A survey and comparison of transformation tools based on the transformation tool contest. Sci. Comput. Program. 85, 41–99 (2014)CrossRefGoogle Scholar
  9. 9.
    Taentzer, G., Ehrig, K., Guerra, E., Lara, J., Lengyel, L., Levendovszky, T., Prange, U., Varro, D., Varró-Gyapay, S.: Model transformation by graph transformation: A comparative study. In: Proceedings Workshop Model Transformation in Practice, Montego Bay, Jamaica, pp. 1–48 (2005)Google Scholar
  10. 10.
    Hidaka, S., Tisi, M., Cabot, J., Hu, Z.: Feature-based classification of bidirectional transformation approaches. Softw. Syst. Model. 15(3), 1–22 (2015)Google Scholar
  11. 11.
    Gomes, C., Barroca, B., Amaral, V.: Classification of model transformation tools: pattern matching techniques, pp. 619–635 (2014)Google Scholar
  12. 12.
    Biehl, M.: Literature study on model transformations. In: Royal Institute of Technology, pp. 1–24 (2010)Google Scholar
  13. 13.
    Mesa, J. M. V.: M2DAT: A technical solution for model-driven development of web information systems.Ph.D. thesis, University of Rey Juan Carlos (2009)Google Scholar
  14. 14.
    Uhl, A.: Model-driven development in the enterprise. IEEE Softw. 1, 46–49 (2008)CrossRefGoogle Scholar
  15. 15.
    Huber, P.: The model transformation language jungle: An evaluation and extension of existing approaches. In: Master thesis, University of Vienna (2008)Google Scholar
  16. 16.
    Rothenberg, J., Widman, L., Loparo, K., Nielsen, N.: The nature of modeling, pp. 1–18 (1989)Google Scholar
  17. 17.
    Brambilla, M., Cabot, J., Wimmer, M.: Model-driven software engineering in practice. Synth. Lect. Softw. Eng. 1(1), 1–182 (2012)CrossRefGoogle Scholar
  18. 18.
    Unified Modeling Language (UML) http://www.uml.org. Accessed 16 Feb 2018
  19. 19.
    Aers, K.: Graphiti and GMF compared: revisiting the graph editor. In: EclipseCon 2011, Santa Clara, California (2011)Google Scholar
  20. 20.
    Viyović, V., Maksimović, M., Perisić, B.: Sirius: A rapid development of DSM graphical editor. In: IEEE 18th International Conference on Intelligent Engineering Systems, pp. 233–238 (2014)Google Scholar
  21. 21.
    Efftinge, S., Völter, M.: oAW xText: A framework for textual DSLs. In: Workshop on Modeling Symposium at Eclipse Summit, pp. 118–121 (2006)Google Scholar
  22. 22.
    Henriksson, J., Johannes, J., Zschaler, S., Asmann, U.: Reuseware-adding modularity to your language of choice. J. Object Technol. 6(9), 127–146 (2007)CrossRefGoogle Scholar
  23. 23.
    Kleppe, A.: A language description is more than a metamodel. In: Fourth International Workshop on Software Language Engineering, pp. 1–9 (2007)Google Scholar
  24. 24.
    ArcStyler: The leading platform for model driven architecture (MDA) http://www.omg.org/mda/mda_files/ArcStyler5_Whitepaper_220205.pdf. Accessed 16 Feb 2018
  25. 25.
    Patrascoiu, O.: YATL: yet another transformation language-reference manual version 1.0. In: Technical Report No. 2-04 (2004)Google Scholar
  26. 26.
    Codagen Architect http://www.omg.org/mda/mda_files/codagen_technologies.htm. Accessed 20 Feb 2018
  27. 27.
    OptimalJ http://www.compuware.com. Accessed 16 Feb 2018
  28. 28.
    Biermann, E., Ehrig, K., Köhler, C., Kuhns, G., Taentzer, G., Weiss, E.: Graphical definition of in-place transformations in the eclipse modeling framework. In: Proceeding of the International Conference on Model Driven Engineering Languages and Systems (MoDELS06) 425439 (2006)Google Scholar
  29. 29.
    FUUT-je http://www.eclipse.org/gmt/. Accessed 01 May 2017
  30. 30.
    Boronat, A.: MOMENT: a formal framework for MOdel manageMENT, In: Ph.D. thesis in Computer Science, University of Politécnica de Valéncia, pp. 1–287 (2007)Google Scholar
  31. 31.
    Sánchez-Barbudo, A., Sánchez, E., Roldán, V., Estévez, A., Roda, J.: Providing an open virtual-machine-based QVT implementation. In: Proceedings of the V Workshop on Model-Driven Software Development, pp. 42–51 (2008)Google Scholar
  32. 32.
    b+m ArchitectureWare http://www.omg.org/mda/mda_files/b+m_OMGCommittment.pdf. Accessed 16 Feb 2018
  33. 33.
    Gerber, A., Lawley, M., Raymond, K., Steel, J., Wood, A.: Transformation: the missing link of MDA. In: Graph Transformation, pp. 90–105 (2002)Google Scholar
  34. 34.
  35. 35.
    Vlad, A., Störrle, H., Strüber, D.: VMTL: A language for end-user model transformation. In: Software and Systems Modeling, pp. 1–29 (2016)Google Scholar
  36. 36.
    Acerbis, R., Bongio, A., Brambilla, M., Butti, S.: Webratio 5: An Eclipse-based case tool for engineering web applications, pp. 501–505. In. In Web, Engineering (2007)Google Scholar
  37. 37.
    UMT http://umt-qvt.sourceforge.net/. Accessed 16 Feb 2018
  38. 38.
    Roy, C., Cordy, J., Koschke, R.: Comparison and evaluation of code clone detection techniques and tools: a qualitative approach. Sci. Comput. Program. 74(7), 470–495 (2009)MathSciNetCrossRefzbMATHGoogle Scholar
  39. 39.
    Kastenberg, H., Rensink, A.: Model checking dynamic states in GROOVE. In: International SPIN Workshop on Model Checking of Software, McGill University, pp. 299–305 (2006)Google Scholar
  40. 40.
    Bruneliere, H., Cabot, J., Jouault, F., Madiot, F.: MoDisco: A generic and extensible framework for model driven reverse engineering. In: Proceedings of the IEEE/ACM International Conference on Automated software engineering, pp. 173–174 (2010)Google Scholar
  41. 41.
    Lano, K., Kolahdouz-Rahimi, S.: Specification and verification of model transformations using UML-RSDS, pp. 199–214 (2010)Google Scholar
  42. 42.
    Lawley, M., Steel, J.: Practical declarative model transformation with Tefkat, pp. 139–150 (2006)Google Scholar
  43. 43.
    Romina, E., Pierantonio, A., Rosa, G.: Managing uncertainty in bidirectional model transformations, in: Proceedings of the 2015 ACM SIGPLAN International Conference on Software Language Engineering, pp. 49–58 (2015)Google Scholar
  44. 44.
    Almendros-Jiménez, J. M., Iribarne, L., López-Fernández, J., Mora-Segura, A.: PTL: A model transformation language based on logic programming. In: Journal of Logical and Algebraic Methods in Programming, pp. 89–105 (2015)Google Scholar
  45. 45.
    Bonde, L., Dumoulin, C., Dekeyser, J.: Metamodels and MDA transformations for embedded systems. In: Advances in Design and Specification Languages for SoCs, pp. 89–105 (2005)Google Scholar
  46. 46.
    Macedo, N., Cunha, A.: Implementing QVT-R bidirectional model transformations using Alloy. In: Proceedings of the 16th International Conference on Fundamental Approaches to Software Engineering, pp. 297–311 (2013)Google Scholar
  47. 47.
    Li, D., Li, X., Stolz, V.: QVT-based model transformation using XSLT. In: SIGSOFT Software Engineering Notes, pp. 1–8 (2011)Google Scholar
  48. 48.
    Reddy, S., Venkatesh, R., Ansari, Z.: A relational approach to model transformation using QVT relations. In: TATA Research Development and Design Centre, pp. 1–15 (2006)Google Scholar
  49. 49.
    medini QVT http://projects.ikv.de/qvt/wiki. Accessed 16 Feb 2018
  50. 50.
    Schätz, B.: Formalization and rule-based transformation of EMF Ecore-based models, pp. 227–244 (2009)Google Scholar
  51. 51.
    Paige, R., Radjenovic, A.: Towards model transformation with TXL. In: Metamodelling for MDA, pp. 162–177 (2003)Google Scholar
  52. 52.
    ModelAnt http://mdatools.net/blog/modelant. Accessed 16 Feb 2018
  53. 53.
  54. 54.
    Kelly, S., Lyytinen, K., Rossi, M.: Metaedit+ a fully configurable multi-user and multi-tool case and came environment. Adv. Inf. Syst. Eng. 1080, 1–21 (1996)Google Scholar
  55. 55.
    Gerking, C., Heinzemann, C.: Solving the movie database case with QVTo. In: TTC, pp. 98–102 (2014)Google Scholar
  56. 56.
    Drey, Z., Faucher, C., Fleurey, F., Mahé, V., Vojtisek, D.: Kermeta language reference manual, pp. 1–84 (2010)Google Scholar
  57. 57.
    Modelio http://www.modeliosoft.com. Accessed 16 Feb 2018
  58. 58.
    Forward, A., Lethbridge, T., Brestovansky, D.: Improving program comprehension by enhancing program constructs: An analysis of the Umple language. In: ICPC, pp. 311–312 (2009)Google Scholar
  59. 59.
    Degueule, T., Combemale, B., Blouin, A., Barais, O., Jézéquel, J.: Melange: A meta-language for modular and reusable development of DSLs. In: 8th International Conference on Software Language Engineering (SLE), pp. 65–75 (2015)Google Scholar
  60. 60.
    MagicDraw http://www.nomagic.com. Accessed 16 Feb 2018
  61. 61.
  62. 62.
    SmartQVT https://sourceforge.net/projects/smartqvt. Accessed 16 Feb 2018
  63. 63.
  64. 64.
    Pilgrim, J.V.: Computerunterstützte Modelltransformationen. Ph.D. thesis in Computer Science, Fernuniversität Hagen (2010)Google Scholar
  65. 65.
    JQVT https://sourceforge.net/projects/jqvt/. Accessed 16 Feb 2018
  66. 66.
  67. 67.
  68. 68.
  69. 69.
    Rensink, A.: The GROOVE simulator: a tool for state space generation. In: Applications of Graph Transformations with Industrial Relevance, pp. 479–485 (2004)Google Scholar
  70. 70.
    Willink, E. D.: UMLX: A graphical transformation language for MDA. In: Proceedings of the Workshop on Model Driven Architecture: Foundations and Applications, pp. 13–24 (2003)Google Scholar
  71. 71.
    Lara, J., Vangheluwe, H.: AToM3: A tool for multi-formalism and meta-modelling. In: FASE, pp. 174–188 (2002)Google Scholar
  72. 72.
    Syriani, E., Vangheluwe, H., Mannadiar, R., Hansen, C., Mierlo, S. V., Ergin, H.: AToMPM: A web-based modeling environment. In: Demos/Posters/Student Research MoDELS, pp. 21–25 (2013)Google Scholar
  73. 73.
    Ermel, C., Rudolf, M., Taentzer, G.: The AGG approach: Language and environment. Appl. Lang. Tools. 2, 551–603 (1999)Google Scholar
  74. 74.
    Braun, P., Marschall, F.: Transforming object oriented models with BOTL. In: Electronic Notes in Theoretical Computer Science, pp. 103–117 (2003)Google Scholar
  75. 75.
    Hidaka, S., Hu, Z., Inaba, K., Kato, H., Nakano, K.: GRoundTram: An integrated framework for developing well-behaved bidirectional model transformations. In: 26th IEEE/ACM International Conference on Automated Software Engineering (ASE), pp. 480–483 (2011)Google Scholar
  76. 76.
    Lauder, M., Anjorin, A., Varró, G., Schürr, A.: Bidirectional model transformation with precedence triple graph grammars, pp. 287–302 (2012)Google Scholar
  77. 77.
    Giese, H., Hildebrandt, S., Lambers, L.: Bridging the gap between formal semantics and implementation of triple graph grammars. Softw. Syst. Model. 13(1), 273–299 (2014)CrossRefGoogle Scholar
  78. 78.
    GReAT http://www.isis.vanderbilt.edu/tools/great. Accessed 16 Feb 2018
  79. 79.
    Greenyer, J., Kindler, E.: Reconciling TGGs with QVT. In: Model Driven Engineering Languages and Systems, pp. 16–30 (2007)Google Scholar
  80. 80.
    Fleck, M., Troya, J., Wimmer, M.: Marrying search-based optimization and model transformation technology. In: Proceedings of the First North American Search Based Software Engineering Symposium, pp. 1–16 (2015)Google Scholar
  81. 81.
    Klassen, L., Wagner, R.: EMorF-A tool for model transformations. In: Electronic Communications of the EASST, pp. 1–6 (2012)Google Scholar
  82. 82.
    Barroca, B., Lúcio, L., Amaral, V., Félix, R., Sou, V.: Dsltrans: A Turing incomplete transformation language. In: Software Language Engineering, 29630 (2011)Google Scholar
  83. 83.
    Gorp, G. V.: Model-driven development of model transformations. Ph.D. thesis, University of Antwerp (2008)Google Scholar
  84. 84.
    Varró, D., Balogh, A.: The model transformation language of the VIATRA2 framework. Sci. Comput. Program. 68(3), 214–234 (2007)MathSciNetCrossRefzbMATHGoogle Scholar
  85. 85.
    Cuadrado, J.: Towards a family of model transformation languages, pp. 176–191 (2012)Google Scholar
  86. 86.
    Kolovos, D., Paige, R., Polack, F.: The Epsilon transformation language. In: Theory and Practice of Model Transformations, pp. 46–60 (2008)Google Scholar
  87. 87.
    Cuadrado, J., Molina, J., Tortosa, M.: Rubytl: A practical, extensible transformation language. In: Model Driven Architecture-Foundations and Application, pp. 158–172 (2006)Google Scholar
  88. 88.
    Levendovszky, T., Lengyel, L., Mezei, G., Charaf, H.: A systematic approach to metamodeling environments and model transformation systems in VMTS. In: Electronic Notes in Theoretical Computer Science, pp. 65–75 (2005)Google Scholar
  89. 89.
    Jouault, F., Allilaire, F., Bézivin, J., Kurtev, I.: ATL: A model transformation tool. In: Science of Computer Programming, pp. 31–39 (2008)Google Scholar
  90. 90.
    Nickel, U., Niere, J., Zündorf, A.: The FUJABA environment. In: Proceedings of the 22nd International Conference on Software Engineering, pp. 742–745 (2000)Google Scholar
  91. 91.
    Jakumeit, E., Buchwald, S., Kroll, M.: Grgen.net: The expressive, convenient and fast graph rewrite system. In: International Journal on Software Tools for Technology Transfer, pp. 263–271 (2010)Google Scholar
  92. 92.
    Arendt, T., Biermann, E., Jurack, S., Krause, C., Taentzer, G.: Henshin: Advanced concepts and tools for in-place EMF model transformations. In: Model Driven Engineering Languages and Systems, pp. 121–135 (2010)Google Scholar
  93. 93.
    Blu Age http://www.bluage.com/en/en_home.html. Accessed 16 Feb 2018
  94. 94.
    Kalnins, A., Barzdins, J., Celms, E.: Model transformation language MOLA. In: Model Driven Architecture, pp. 62–76 (2005)Google Scholar
  95. 95.
    Enterprise Architect http://www.sparxsystems.com. Accessed 16 Feb 2018
  96. 96.
    MDWorkbench http://sodius.com/products-overview/mdworkbench. Accessed 16 Feb 2018
  97. 97.
    Brun, C., Pierantonio, A.: Model differences in the Eclipse modeling framework. In: The European Journal for the Informatics Professional, pp. 29–34 (2008)Google Scholar
  98. 98.
    AndroMDA http://andromda.sourceforge.net. Accessed 16 Feb 2018
  99. 99.
  100. 100.
    Varró, D., Hegedüs, G.B.A., Horváth, A., Ráth, I., Ujhelyi, Z.: Road to a reactive and incremental model transformation platform: three generations of the VIATRA framework. Softw. Syst. Model. 15(9), 609–629 (2016)CrossRefGoogle Scholar
  101. 101.
    Actifsource, http://www.actifsource.com. Accessed 16 Feb 2018
  102. 102.
    Query/views/transformation language (QVT) http://www.omg.org/spec/QVT. Accessed 16 Feb 2018
  103. 103.
    Andries, M., Engels, G., Habel, A., Hoffmann, B., Kreowski, H.J., Kuske, S., Plump, D., Schürr, A., Taentzer, G.: Graph transformation for specification and programming. Sci. Comput. Program. 31(1), 1–54 (1999)MathSciNetCrossRefzbMATHGoogle Scholar
  104. 104.
    Schürr, A.: Specification of graph translators with triple graph grammars. In: Graph-Theoretic Concepts in Computer Science, pp. 151–163 (1995)Google Scholar
  105. 105.
    Roser, S., Lautenbacher, F., Bauer, B.: Generation of workflow code from DSMs. In: Proceedings of the 7th OOPSLA Workshop on Domain-Specific Modeling, pp. 1–11 (2007)Google Scholar
  106. 106.
    Pearson, H.: Open source licences: open source–the death of proprietary systems? Comput. Law Secur. Rev. 16, 151–156 (2000)CrossRefGoogle Scholar
  107. 107.
    Eramo, R., Marinelli, R., Pierantonio, A.: Towards a taxonomy for bidirectional transformation. In: SATToSE, pp. 122–131 (2014)Google Scholar
  108. 108.
    Kahani, N., Bagherzadeh, M., Dingel, J., Cordy, J.: The problems with Eclipse modeling tools: a topic analysis of eclipse forums. In: Proceedings of the ACM/IEEE 19th International Conference on Model Driven Engineering Languages and Systems, pp. 227–237 (2016)Google Scholar
  109. 109.
    Ahmad, M., Bruel, J., Laleau, R., Gnaho, C.: Using RELAX SysML and KAOS for ambient systems requirements modeling. In: Procedia Computer Science, pp. 474–481 (2012)Google Scholar
  110. 110.
    xtUML https://xtuml.org. Accessed 16 Feb 2018
  111. 111.
    Kahani, N., Hili, N., Cordy, J., Dingel, J.: Evaluation of UML-RT and Papyrus-RT for modelling self-adaptive systems. In: Proceedings of the 9th International Workshop on Modelling in Software Engineering, pp. 12–18 (2017)Google Scholar
  112. 112.
    Peterson, J.: Petri Net theory and the modeling of systems. In: Prentice Hall PTR (1981)Google Scholar
  113. 113.
    Business Process Model and Notation (BPMN) http://www.bpmn.org. Accessed 16 Feb 2018
  114. 114.
    Meta-Object Facility (MOF) http://www.omg.org/mof. Accessed 16 Feb 2018
  115. 115.
    Eclipse Modeling Framework (EMF) https://eclipse.org/modeling/emf. Accessed 16 Feb 2018
  116. 116.
    Kernel Meta-Meta Model (KM3) https://wiki.eclipse.org/KM3. Accessed 16 Feb 2018
  117. 117.
    Stephan, M., Cordy, J.: A survey of model comparison approaches and applications. In: Modelsward, pp. 265–277 (2013)Google Scholar
  118. 118.
    Bergmann, G.: Translating ocl to graph patterns, pp. 670–686 (2014)Google Scholar
  119. 119.
    Cetinkaya, D., Verbraeck, A.: Metamodeling and model transformations in modeling and simulation. In: Proceedings of the Winter Simulation Conference, pp. 3048–3058 (2011)Google Scholar
  120. 120.
    CDO http://eclipse.org/cdo. Accessed 16 Feb 2018
  121. 121.
    Blanc, X., Gervais, M., Sriplakich, P.: Model bus: Towards the interoperability of modelling tools. In: Model Driven Architecture, pp. 17–32 (2005)Google Scholar
  122. 122.
    EMFStore http://eclipse.org/emfstore. Accessed 16 Feb 2018
  123. 123.
    Benelallam, A., Gómez, A., Sunyé, G., Tisi, M., Launay, D.: Neo4EMF, a scalable persistence layer for EMF models. In: European Conference on Modelling Foundations and Applications, pp. 230–241 (2014)Google Scholar
  124. 124.
    NetBeans Meta-data Repository (MDR) https://netbeans.org. Accessed 16 Feb 2018
  125. 125.
    Canonical XMI http://www.omg.org/spec/XMI/2.5.1. Accessed 16 Feb 2018
  126. 126.
    Human Usable Textual Notation (HUTN) http://www.omg.org/spec/HUTN. Accessed 16 Feb 2018
  127. 127.
  128. 128.
    Diagram Definition Specification (DD) http://www.omg.org/spec/DD. Accessed 16 Feb 2018
  129. 129.
    MOF model to text transformation language http://www.omg.org/spec/MOFM2T. Accessed 16 Feb 2018
  130. 130.
    Common Warehouse Meta-model (CWM) http://www.omg.org/spec/CWM. Accessed 16 Feb 2018
  131. 131.
    Object Constraint Language, http://www.omg.org/spec/OCL. Accessed 16 Feb 2018
  132. 132.
    Sendall, S., Küster, J.: Taming model round-trip engineering. In: Proceedings of Workshop on Best Practices for Model-Driven Software Development, pp. 1–13 (2004)Google Scholar
  133. 133.
    Hettel, T., Lawley, M., Raymond, K.: Model synchronisation: Definitions for round-trip engineering, in: International Conference on Theory and Practice of Model Transformations, pp. 31–45 (2008)Google Scholar
  134. 134.
    Syriani, E.: A multi-paradigm foundation for model transformation language engineering. Ph.D. thesis in Computer Science, McGill University, pp. 1–291 (2011)Google Scholar
  135. 135.
    Cuadrado, J. S., Molina, J. G.: A phasing mechanism for model transformation languages. In: Proceedings of the 2007 ACM Symposium on Applied Computing, SAC ’07 (2007)Google Scholar
  136. 136.
    Jilani, A., Usman, M., Halim, Z.: Model transformations in model driven architecture. In: Universal Journal of Computer Science and Engineering Technology, pp. 50–54 (2010)Google Scholar
  137. 137.
    Hildebrandt, S., Lambers, L., Giese, H., Rieke, J., Greenyer, J., Schäfer, W., Lauder, M., Anjorin, A., Schürr, A.: A survey of triple graph grammar tools. In: International Workshop on Bidirectional Transformations (Bx), pp. 1–17 (2013)Google Scholar
  138. 138.
    Stevens, P.: A landscape of bidirectional model transformations. Gener. Transform. Tech. Softw. Eng. II, 408–424 (2008)Google Scholar
  139. 139.
    Macedo, N., Cunha, A., Pacheco, H.: Towards a framework for multidirectional model transformations. In: EDBT/ICDT Workshops, pp. 71–74 (2014)Google Scholar
  140. 140.
    Czarnecki, K., Foster, J.N., Hu, Z., Lämmel, Schürr, A., Terwilliger, J.F.: Bidirectional transformations: a cross-discipline perspective, pp. 260–283 (2009)Google Scholar
  141. 141.
    Leblebici, E., Anjorin, A., Schürr, A., Hildebrandt, S., Rieke, J., Greenyer, J.: A comparison of incremental triple graph grammar tools. In: Electronic Communications of the EASST, pp. 1–15 (2014)Google Scholar
  142. 142.
    Amrani, M., Combemale, B., Lúcio, L., Selim, G.M.K., Dingel, J., Traon, Y.L., Vangheluwe, H., Cordy, J.R.: Formal verification techniques for model transformations: a tridimensional classification. J. Object Technol. 14(3), 921–928 (2015)CrossRefGoogle Scholar
  143. 143.
    Varró, D., Pataricza, A.: Automated formal verification of model transformations. In: CSDUML, pp. 63–78 (2003)Google Scholar
  144. 144.
    Asztalos, M., Lengyel, L., Levendovszky, T.: Towards automated, formal verification of model transformations. In: Proceedings of the Third International Conference on Software Testing, Verification and Validation, ICST ’10, pp. 15–24 (2010)Google Scholar
  145. 145.
    Lano, K., Kolahdouz-Rahimi, S., Poernomo, I.: Comparative evaluation of model transformation specification approaches. Int. J. Softw. Inform. 6(2), 233–269 (2012)Google Scholar
  146. 146.
    Hooper, P.K.: The undecidability of the Turing machine immortality problem. J. Symbol. Logic 31(2), 219–234 (1966)MathSciNetCrossRefzbMATHGoogle Scholar
  147. 147.
    Assmann, U.: Graph rewrite systems for program optimization. ACM Trans. Program. Lang. Syst. (TOPLAS) 22(4), 583–637 (2000)CrossRefGoogle Scholar
  148. 148.
    Varró, D., Varró-Gyapay, S., Ehrig, H., Prange, U., Taentzer, G.: Termination analysis of model transformations by Petri Nets. In: Graph Transformations, pp. 260–274 (2006)Google Scholar
  149. 149.
    Ehrig, H., Ehrig, K., Lara, J., Taentzer, G., Varró, D., Varró-Gyapay, S.: Termination criteria for model transformation. In: International Conference on Fundamental Approaches to Software Engineering, pp. 49–63 (2005)Google Scholar
  150. 150.
    Jouault, F., Kurtev, I.: Transforming models with ATL. In: International Conference on Model Driven Engineering Languages and Systems, Springer, pp. 128–138 (2005)Google Scholar
  151. 151.
    Rahim, L., Whittle, J.: A survey of approaches for verifying model transformations. Softw. Syst. Model. 14(2), 1003–1028 (2015)CrossRefGoogle Scholar
  152. 152.
    Rensink, A., Schmidt, Á., Varró, D.: Model checking graph transformations: a comparison of two approaches. In: ICGT, pp. 226–241 (2004)Google Scholar
  153. 153.
    Kastenberg, H., Rensink, A.: Model checking dynamic states in GROOVE. In: Model Checking Software, pp. 299–305 (2006)Google Scholar
  154. 154.
    Fleurey, F., Steel, J., Baudry, B.: Validation in model-driven engineering: Testing model transformations. In: First International Workshop on Model, Design and Validation, pp. 29–40 (2004)Google Scholar
  155. 155.
    Auziņš, A., Bãrzdiņš, J., Bičevskis, J., Čerãns, K., Kalniņš, A.: Automatic construction of test sets: theoretical approach. In: Baltic Computer Science, pp. 286–359 (1991)Google Scholar
  156. 156.
    Schätz, B.: Verification of model transformations. In: Electronic Communications of the EASST, pp. 1–14 (2010)Google Scholar
  157. 157.
    France, R., Bruel, J., LarrondoPetrie, M.: An integrated object-oriented and formal modeling environment. Object-Oriented Program. 10(7), 25 (1997)Google Scholar
  158. 158.
    Winkler, S., Pilgrim, J.: A survey of traceability in requirements engineering and model-driven development. Softw. Syst. Model. (SoSyM) 9(4), 529–565 (2010)CrossRefGoogle Scholar
  159. 159.
    Bergmayr, A., Troya, J., Wimmer, M.: From out-place transformation evolution to in-place model patching. In: Proceedings of the 29th ACM/IEEE International Conference on Automated Software Engineering, 647pp. –652 (2014)Google Scholar
  160. 160.
    Klatt, B.: Xpand: A closer look at the model2text transformation language. In: Language (2007)Google Scholar
  161. 161.
    Ráth, I., Bergmann, G., Ökrös, A., Varró, D.: Live model transformations driven by incremental pattern matching. In: Theory and Practice of Model Transformations, pp. 107–121 (2008)Google Scholar
  162. 162.
    Calisir, F., Calisir, F.: The relation of interface usability characteristics, perceived usefulness, and perceived ease of use to end-user satisfaction with enterprise resource planning (ERP) systems. Comput. Hum. Behav. 20(4), 505–515 (2004)CrossRefGoogle Scholar
  163. 163.
    Cho, V., Cheng, T.E., Lai, W.J.: The role of perceived user-interface design in continued usage intention of self-paced e-learning tools. Comput. Educ. 53(2), 216–227 (2009)CrossRefGoogle Scholar
  164. 164.
    Bastien, J.M.C., Scapin, D.L.: Evaluating a user interface with ergonomic criteria. Int. J. Hum. Comput. Interact. 7(2), 105–121 (1995)CrossRefGoogle Scholar
  165. 165.
    Kusel, A., Schönböck, J., Wimmer, M., Retschitzegger, W., Schwinger, W., Kappel, G.: Reality check for model transformation reuse: The ATL transformation zoo case study. In: AMT@MoDELS, pp. 1–11 (2013)Google Scholar
  166. 166.
    Louridas, P.: Version control software. In: IEEE Software, pp. 104–107 (2006)Google Scholar
  167. 167.
    Giese, H., Wagner, R.: From model transformation to incremental bidirectional model synchronization. Softw. Syst. Model. 8(1), 21–43 (2009)CrossRefGoogle Scholar
  168. 168.
    Gardner, T., Griffin, C., Koehler, J., Hauser, R.: A review of OMG MOF 2.0 query/views/transformations submissions and recommendations towards the final standard. In: MetaModelling for MDA Workshop, vol. 13, p. 41 (2003)Google Scholar
  169. 169.
    Abelein, U., Sharp, H., Paech, B.: Does involving users in software development really influence system success? In: IEEE Software, pp. 17–23 (2013)Google Scholar
  170. 170.
    Jackson, E. K., Schulte, W., Bjorner, N.: Detecting specification errors in declarative languages with constraints. In: International Conference on Model Driven Engineering Languages and Systems, pp. 399–414 (2012)Google Scholar
  171. 171.
    Kainz, G. G., Buckl, C., Knoll, A.: A generic approach simplifying model-to-model transformation chains. In: International Conference on Model Driven Engineering Languages and Systems, pp. 579–594 (2012)Google Scholar
  172. 172.
    Cuadrado, J. S., Guerra, E., de Lara, J.: Quick fixing ATL model transformations. In: International Conference on Model Driven Engineering Languages and Systems, pp .146–155 (2015)Google Scholar
  173. 173.
    Dubois, C., Famelis, M., Gogolla, M., Nobrega, L., Ober, I., Seidl, M., Völter, M.: Research questions for validation and verification in the context of model-based engineering. In: International Workshop on Model Driven Engineering, Verification and Validation (MoDeVVA), pp. 67–77 (2013)Google Scholar
  174. 174.
    Rivera, J. E., Guerra, E., de Lara, J., Vallecillo, A.: Analyzing rule-based behavioral semantics of visual modeling languages with Maude. In: Software Language Engineering, pp. 54–73 (2008)Google Scholar
  175. 175.
    Taentzer, G.: AGG: A graph transformation environment for modeling and validation of software. In: Lecture Notes in Computer Science, pp. 446–453 (2003)Google Scholar
  176. 176.
    EMFcompare https://www.eclipse.org/emf/compare/. Accessed 16 Feb 2018
  177. 177.
    Eclipse EMF query https://projects.eclipse.org/projects/modeling.emf.query. Accessed 16 Feb 2018
  178. 178.
    Diskin, Z., Gholizadeh, H., Wider, A., Czarnecki, K.: A three-dimensional taxonomy for bidirectional model synchronization. Syst. Softw. 111, 298–322 (2016)CrossRefGoogle Scholar
  179. 179.
    Varró, D., Asztalos, M., Bisztray, D., Boronat, A., Dang, D., Geiß, R., Greenyer, J., Gorp, P., Kniemeyer, O., Narayanan, A., Rencis, E., Weinell, E.: Transformation of UML models to CSP: A case study for graph transformation tools. In: Applications of Graph Transformations with Industrial Relevance, pp. 540–565 (2008)Google Scholar

Copyright information

© Springer-Verlag GmbH Germany, part of Springer Nature 2018

Authors and Affiliations

  • Nafiseh Kahani
    • 1
    Email author
  • Mojtaba Bagherzadeh
    • 1
  • James R. Cordy
    • 1
  • Juergen Dingel
    • 1
  • Daniel Varró
    • 2
    • 3
  1. 1.School of ComputingQueen’s UniversityKingstonCanada
  2. 2.School of Electrical and Computer EngineeringMcGill UniversityMontrealCanada
  3. 3.MTA-BME Lendület Research Group on Cyber-Physical SystemsBudapestHungary

Personalised recommendations