Advertisement

Automatic Transformation Co-evolution Using Traceability Models and Graph Transformation

  • Adrian Rutle
  • Ludovico Iovino
  • Harald König
  • Zinovy Diskin
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 10890)

Abstract

In rule-based approaches, a model transformation definition tells how an instance of a source model should be transformed to an instance of a target model. As these models undergo changes, model transformations defined over these models may get out of sync. Restoring conformance between model transformations and the models is a complex and error prone task. In this paper, we propose a formal approach to automatically co-evolve model transformations according to the evolution of the models. The approach is based on encoding the model transformation definition as a traceability model and the evolution of the models as applications of graph transformation rules. These rules are used to obtain an evolved traceability model from the original traceability model. We will identify the criteria which need to be fulfilled in order to make this automatic co-evolution possible. We provide a tool support for this procedure, in which the evolved model transformation definition is derived from the evolved traceability model.

References

  1. 1.
    Bettini, L., Di Ruscio, D., Iovino, L., Pierantonio, A.: Edelta: an approach for defining and applying reusable metamodel refactorings. In: ME workshop @MoDELS (2017)Google Scholar
  2. 2.
    Cuadrado, J.S., Guerra, E., de Lara, J.: Static analysis of model transformations. IEEE Trans. Softw. Eng. 43(9), 868–897 (2017)CrossRefGoogle Scholar
  3. 3.
    de Lara, J., Bardohl, R., Ehrig, H., Ehrig, K., Prange, U., Taentzer, G.: Attributed graph transformation with node type inheritance. Theor. Comput. Sci. 376(3), 139–163 (2007)MathSciNetCrossRefGoogle Scholar
  4. 4.
    Di Rocco, J., Di Ruscio, D., Iovino, L., Pierantonio, A.: Dealing with the coupled evolution of metamodels and model-to-text transformations. In: ME workshop @MoDELS, pp. 22–31 (2014)Google Scholar
  5. 5.
    Di Ruscio, D., Etzlstorfer, J., Iovino, L., Pierantonio, A., Schwinger, W.: Supporting variability exploration and resolution during model migration. In: Wąsowski, A., Lönn, H. (eds.) ECMFA 2016. LNCS, vol. 9764, pp. 231–246. Springer, Cham (2016).  https://doi.org/10.1007/978-3-319-42061-5_15CrossRefGoogle Scholar
  6. 6.
    Di Ruscio, D., Iovino, L., Pierantonio, A.: What is needed for managing co-evolution in MDE? In: Proceedings of the 2nd IWMCP 2011, pp. 30–38. ACM (2011)Google Scholar
  7. 7.
    Didonet Del Fabro, M., Valduriez, P.: Towards the efficient development of model transformations using model weaving and matching transformations. SoSyM 8(3), 305–324 (2009)Google Scholar
  8. 8.
    Diskin, Z., Gómez, A., Cabot, J.: Traceability mappings as a fundamental instrument in model transformations. In: Huisman, M., Rubin, J. (eds.) FASE 2017. LNCS, vol. 10202, pp. 247–263. Springer, Heidelberg (2017).  https://doi.org/10.1007/978-3-662-54494-5_14CrossRefGoogle Scholar
  9. 9.
    Diskin, Z., Maibaum, T., Czarnecki, K.: Intermodeling, queries, and Kleisli categories. In: de Lara, J., Zisman, A. (eds.) FASE 2012. LNCS, vol. 7212, pp. 163–177. Springer, Heidelberg (2012).  https://doi.org/10.1007/978-3-642-28872-2_12CrossRefGoogle Scholar
  10. 10.
    Ehrig, H., Ehrig, K., Ermel, C.: Refactoring of model transformations. In: ECEASST, vol. 18 (2009)Google Scholar
  11. 11.
    Ehrig, H., Ehrig, K., Prange, U., Taentzer, G.: Fundamentals of Algebraic Graph Transformation. MTCSAES. Springer, Heidelberg (2006).  https://doi.org/10.1007/3-540-31188-2CrossRefzbMATHGoogle Scholar
  12. 12.
    Freund, M., Braune, A.: A generic transformation algorithm to simplify the development of mapping models. In: MoDELS, pp. 284–294. ACM (2016)Google Scholar
  13. 13.
    García, J., Diaz, O., Azanza, M.: Model transformation co-evolution: a semi-automatic approach. In: Czarnecki, K., Hedin, G. (eds.) SLE 2012. LNCS, vol. 7745, pp. 144–163. Springer, Heidelberg (2013).  https://doi.org/10.1007/978-3-642-36089-3_9CrossRefGoogle Scholar
  14. 14.
    Hermann, F., Ehrig, H., Taentzer, G.: A typed attributed graph grammar with inheritance for the abstract syntax of UML class and sequence diagrams. ENTCS 211, 261–269 (2008)zbMATHGoogle Scholar
  15. 15.
    Herrmannsdoerfer, M.: COPE – a workbench for the coupled evolution of metamodels and models. In: Malloy, B., Staab, S., van den Brand, M. (eds.) SLE 2010. LNCS, vol. 6563, pp. 286–295. Springer, Heidelberg (2011).  https://doi.org/10.1007/978-3-642-19440-5_18CrossRefGoogle Scholar
  16. 16.
    Jouault, F., Allilaire, F., Bézivin, J., Kurtev, I.: ATL: a model transformation tool. Sci. Comput. Program. 72(1–2), 31–39 (2008)MathSciNetCrossRefGoogle Scholar
  17. 17.
    Kehrer, T., Kelter, U., Taentzer, G.: Consistency-preserving edit scripts in model versioning. In: Denney, E., Bultan, T., Zeller, A. (eds.) 28th International Conference on Automated Software Engineering, pp. 191–201. IEEE (2013)Google Scholar
  18. 18.
    Kehrer, T., Taentzer, G., Rindt, M., Kelter, U.: Automatically deriving the specification of model editing operations from meta-models. In: Van Gorp, P., Engels, G. (eds.) ICMT 2016. LNCS, vol. 9765, pp. 173–188. Springer, Cham (2016).  https://doi.org/10.1007/978-3-319-42064-6_12CrossRefGoogle Scholar
  19. 19.
    Kolovos, D.S., Paige, R.F., Polack, F.A.C.: The epsilon transformation language. In: Vallecillo, A., Gray, J., Pierantonio, A. (eds.) ICMT 2008. LNCS, vol. 5063, pp. 46–60. Springer, Heidelberg (2008).  https://doi.org/10.1007/978-3-540-69927-9_4CrossRefGoogle Scholar
  20. 20.
    Kruse, S.: On the use of operators for the co-evolution of metamodels and transformations. In: ME Workshop @MoDELS (2011)Google Scholar
  21. 21.
    Kruse, S.: Co-Evolution of Metamodels and Model Transformations. Books On Demand, Norderstedt (2015)Google Scholar
  22. 22.
    Kusel, A., Etzlstorfer, J., Kapsammer, E., Retschitzegger, W., Schoenboeck, J., Schwinger, W., Wimmer, M.: Systematic co-evolution of OCL expressions. In: 11th APCCM, 27–30 January 2015Google Scholar
  23. 23.
    Kusel, A., Etzlstorfer, J., Kapsammer, E., Retschitzegger, W., Schwinger, W., Schönböck, J.: Consistent co-evolution of models and transformations. In: Lethbridge, T., Cabot, J., Egyed, A. (eds.) MoDELS, pp. 116–125. IEEE Computer Society (2015)Google Scholar
  24. 24.
    Levendovszky, T., Balasubramanian, D., Narayanan, A., Karsai, G.: A novel approach to semi-automated evolution of DSML model transformation. In: van den Brand, M., Gašević, D., Gray, J. (eds.) SLE 2009. LNCS, vol. 5969, pp. 23–41. Springer, Heidelberg (2010).  https://doi.org/10.1007/978-3-642-12107-4_4CrossRefGoogle Scholar
  25. 25.
    Lopes, D., Hammoudi, S., Bézivin, J., Jouault, F.: Mapping specification in MDA: from theory to practice. In: Konstantas, D., Bourrières, J.-P., Léonard, M., Boudjlida, N. (eds.) Interoperability of Enterprise Software and Applications, pp. 253–264. Springer, Heidelberg (2006).  https://doi.org/10.1007/1-84628-152-0_23CrossRefGoogle Scholar
  26. 26.
    Marschall, F., Braun, P.: Model transformations for the MDA with BOTL. Technical report, University of Twente (2003)Google Scholar
  27. 27.
    Méndez, D., Etien, A., Muller, A., Casallas, R.: Towards transformation migration after metamodel evolution. In: ME Workshop @MoDELS (2010)Google Scholar
  28. 28.
    Meyers, B., Vangheluwe, H.: A framework for evolution of modelling languages. Sci. Comput. Program. 76(12), 1223–1246 (2011)CrossRefGoogle Scholar
  29. 29.
    MOLABO Research Group. The Metamodel Refactorings Catalog. University of L’Aquila - Gran Sasso Science Institute. http://www.metamodelrefactoring.org
  30. 30.
    Rose, L.M., Herrmannsdoerfer, M., Mazanek, S., Van Gorp, P., Buchwald, S., Horn, T., Kalnina, E., Koch, A., Lano, K., Schätz, B., Wimmer, M.: Graph and model transformation tools for model migration. SoSyM 13(1), 323–359 (2014)Google Scholar
  31. 31.
    Rose, L.M., Kolovos, D.S., Paige, R.F., Polack, F.A.C.: Model migration with epsilon flock. In: Tratt, L., Gogolla, M. (eds.) ICMT 2010. LNCS, vol. 6142, pp. 184–198. Springer, Heidelberg (2010).  https://doi.org/10.1007/978-3-642-13688-7_13CrossRefGoogle Scholar
  32. 32.
    Di Ruscio, D., Etzlstorfer, J., Iovino, L., Pierantonio, A., Schwinger, W.: A feature-based approach for variability exploration and resolution in model transformation migration. In: Anjorin, A., Espinoza, H. (eds.) ECMFA 2017. LNCS, vol. 10376, pp. 71–89. Springer, Cham (2017).  https://doi.org/10.1007/978-3-319-61482-3_5CrossRefGoogle Scholar
  33. 33.
    Steinberg, D., Budinsky, F., Paternostro, M., Merks, E.: EMF: Eclipse Modeling Framework. Addison-Wesley, Boston (2008)Google Scholar
  34. 34.
    Wagelaar, D., Iovino, L., Di Ruscio, D., Pierantonio, A.: Translational semantics of a co-evolution specific language with the EMF transformation virtual machine. In: Hu, Z., de Lara, J. (eds.) ICMT 2012. LNCS, vol. 7307, pp. 192–207. Springer, Heidelberg (2012).  https://doi.org/10.1007/978-3-642-30476-7_13CrossRefGoogle Scholar

Copyright information

© Springer International Publishing AG, part of Springer Nature 2018

Authors and Affiliations

  • Adrian Rutle
    • 1
  • Ludovico Iovino
    • 2
  • Harald König
    • 3
  • Zinovy Diskin
    • 4
  1. 1.Western Norway University of Applied SciencesBergenNorway
  2. 2.Gran Sasso Science InstituteL’AquilaItaly
  3. 3.FHDW HannoverHannoverGermany
  4. 4.McMaster UniversityHamiltonCanada

Personalised recommendations