Change-Driven Model Transformations

Derivation and Processing of Change Histories
  • István Ráth
  • Gergely Varró
  • Dániel Varró
Part of the Lecture Notes in Computer Science book series (LNCS, volume 5795)


Nowadays, evolving models are prime artefacts of model-driven software engineering. In tool integration scenarios, a multitude of tools and modeling languages are used where complex model transformations need to incrementally synchronize various models residing within different external tools. In the paper, we investigate a novel class of transformations, that are directly triggered by model changes. First, model changes in the source model are recorded incrementally by a change history model. Then a model-to-model transformation is carried out to generate a change model for the target language. Finally, the target change history model is processed (at any time) to incrementally update the target model itself. Moreover, our technique also allows incremental updates in an external model where only the model manipulation interface is under our control (but not the model itself). Our approach is implemented within the VIATRA2 framework, and it builds on live transformations and incremental pattern matching.


Incremental model transformation change models change-driven transformations 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Hearnden, D., Lawley, M., Raymond, K.: Incremental model transformation for the evolution of model-driven systems. In: Nierstrasz, O., Whittle, J., Harel, D., Reggio, G. (eds.) MoDELS 2006. LNCS, vol. 4199, pp. 321–335. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  2. 2.
    Ráth, I., Bergmann, G., Ökrös, A., Varró, D.: Live model transformations driven by incremental pattern matching. In: Vallecillo, A., Gray, J., Pierantonio, A. (eds.) ICMT 2008. LNCS, vol. 5063, pp. 107–121. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  3. 3.
    Varró, D., Balogh, A.: The Model Transformation Language of the VIATRA2 Framework. Science of Computer Programming 68(3), 214–234 (2007)MathSciNetCrossRefzbMATHGoogle Scholar
  4. 4.
    Varró, D., Pataricza, A.: VPM: A visual, precise and multilevel metamodeling framework for describing mathematical domains and UML. Software and Systems Modeling 2(3), 187–210Google Scholar
  5. 5.
    Ehrig, H., Montanari, U., Kreowski, H.J., Rozenberg, G. (eds.): Handbook on Graph Grammars and Computing by Graph Transformation. Concurrency and Distribution, vol. 3. World Scientific, Singapore (1999)zbMATHGoogle Scholar
  6. 6.
    Garcia-Molina, H., Ullman, J.D., Widom, J.: Database Systems: The Complete Book. Prentice Hall, Englewood Cliffs (2001)Google Scholar
  7. 7.
    Dittrich, K.R., Gatziu, S., Geppert, A.: The active database management system manifesto: A rulebase of ADBMS features. In: Sellis, T.K. (ed.) RIDS 1995. LNCS, vol. 985, pp. 1–17. Springer, Heidelberg (1995)CrossRefGoogle Scholar
  8. 8.
    Seiriö, M., Berndtsson, M.: Design and implementation of an ECA rule markup language. In: Adi, A., Stoutenburg, S., Tabet, S. (eds.) RuleML 2005. LNCS, vol. 3791, pp. 98–112. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  9. 9.
    Alanen, M., Porres, I.: Difference and union of models. In: Stevens, P., Whittle, J., Booch, G. (eds.) UML 2003. LNCS, vol. 2863, pp. 2–17. Springer, Heidelberg (2003)CrossRefGoogle Scholar
  10. 10.
    Cicchetti, A., Di Ruscio, D., Pierantonio, A.: A metamodel independent approach to difference representation. Journal of Object Technology 6(9), 165–185 (2007)CrossRefGoogle Scholar
  11. 11.
    Gruschko, B., Kolovos, D.S., Paige, R.F.: Towards synchronizing models with evolving metamodels. In: Proc. Int. Workshop on Model-Driven Software Evolution held with the ECSMR (2007)Google Scholar
  12. 12.
    Xiong, Y., Liu, D., Hu, Z., Zhao, H., Takeichi, M., Mei, H.: Towards automatic model synchronization from model transformations. In: ASE 2007: Proceedings of the twenty-second IEEE/ACM international conference on Automated software engineering, pp. 164–173 (2007)Google Scholar
  13. 13.
    Schürr, A.: Specification of graph translators with triple graph grammars. Technical report, RWTH Aachen, Fachgruppe Informatik, Germany (1994)Google Scholar
  14. 14.
    Giese, H., Wagner, R.: Incremental model synchronization with triple graph grammars. In: Nierstrasz, O., Whittle, J., Harel, D., Reggio, G. (eds.) MoDELS 2006. LNCS, vol. 4199, pp. 543–557. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  15. 15.
    Klar, F., Königs, A., Schürr, A.: Model transformation in the large. In: ESEC-FSE 2007: Proceedings of European Software Engineering Conference, pp. 285–294. ACM, New York (2007)Google Scholar
  16. 16.
    Becker, S.M., Haase, T., Westfechtel, B.: Model-based a-posteriori integration of engineering tools for incremental development processes. Software and Systems Modeling 4(2), 123–140 (2005)CrossRefGoogle Scholar
  17. 17.
    Jimenez, A.M.: Change propagation in the MDA: A model merging approach. Master’s thesis, The University of Queensland (June 2005)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2009

Authors and Affiliations

  • István Ráth
    • 1
  • Gergely Varró
    • 2
  • Dániel Varró
    • 1
  1. 1.Department of Measurement and Information SystemsBudapest University of Technology and EconomicsHungary
  2. 2.Department of Computer Science and Information TheoryBudapestHungary

Personalised recommendations