Skip to main content
Log in

Change-driven model transformations

Change (in) the rule to rule the change

  • Special Section Paper
  • Published:
Software & Systems Modeling Aims and scope Submit manuscript

Abstract

In this paper, we investigate change-driven model transformations, a novel class of transformations, which are directly triggered by complex model changes carried out by arbitrary transactions on the model (e.g. editing operation, transformation, etc). After a classification of relevant change scenarios, we identify challenges for change-driven transformations. As the main technical contribution of the current paper, we define an expressive, high-level language for specifying change-driven transformations as an extension of graph patterns and graph transformation rules. This language generalizes previous results on live model transformations by offering trigger events for arbitrarily complex model changes, and dedicated reactions for specific kinds of changes, making this way the concept of change to be a first-class citizen of the transformation language. We discuss how the underlying transformation engine needs to be adapted in order to use the same language uniformly for different change scenarios. The technicalities of our approach will be discussed on a (1) model synchronization case study with non-materialized target models and (2) a case study on detecting the violation of evolutionary (temporal) constraints in the security requirements engineering domain.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. Ráth, I., Varró, G., Varró, D.: Change-driven model transformations. In: Proceedings of MODELS’09. ACM/IEEE 12th International Conference on Model Driven Engineering Languages and Systems (2009)

  2. Hearnden, D., Lawley, M., Raymond, K.: 2006 Incremental model transformation for the evolution of model-driven systems. In: Nierstrasz, O., Whittle, J., Harel, D., Reggio, G. (eds.) Proceedings of the 9th International Conference on Model Driven Engineering Languages and Systems. LNCS, vol. 4199, pp. 321–335, Genova, Italy. Springer, New York (October 2006)

  3. 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. LNCS, vol. 5063, pp. 107–121. Springer, Berlin (2008)

  4. Köth, O., Minas, M.: Generating diagram editors providing free-hand editing as well as syntax-directed editing. In: Ehrig, H., Taentzer, G. (eds.) GRATRA 2000 Joint APPLIGRAPH and GETGRATS Workshop on Graph Transformation Systems, pp. 32–39. Berlin, Germany (March 25–27, 2000)

  5. de Lara, J., Vangheluwe, H.: AToM3: a tool for multi-formalism and meta-modelling. In: Kutsche, R.D., Weber, H. (eds.) 5th International Conference, FASE 2002: Fundamental Approaches to Software Engineering, Grenoble, France, April 8–12, 2002, Proceedings. LNCS, vol. 2306, pp. 174–188. Springer (2002)

  6. Mens T.: A state-of-the-art survey on software merging. IEEE Trans. Softw. Eng. 28, 449–462 (2002)

    Article  Google Scholar 

  7. Ráth, I., Ökrös, A., Varró, D.: Synchronization of abstract and concrete syntax in domain-specific modeling languages. J. Softw. Syst. Model. (2009, accepted)

  8. Ehrig, H., Engels, G., Kreowski, H.J., Rozenberg, G. (eds): Handbook on Graph Grammars and Computing by Graph Transformation. Applications, Languages and Tools, vol. 2. World Scientific, Singapore (1999)

    Google Scholar 

  9. Rensink A.: Representing first-order logic using graphs. In: Ehrig, H., Engels, G., Parisi-Presicce, F., Rozenberg, G. (eds) Proceedings of 2nd International Conference on Graph Transformation (ICGT 2004), Rome, Italy. LNCS, vol. 3256, pp. 319–335. Springer, Berlin (2004)

    Google Scholar 

  10. Orejas, F., Ehrig, H., Prange, U.: A logic of graph constraints. In: FASE’08/ETAPS’08: Proceedings of the Theory and Practice of Software. 11th International Conference on Fundamental Approaches to Software Engineering, Berlin, Heidelberg, pp. 179–198. Springer (2008)

  11. Varró D., Balogh A.: The model transformation language of the VIATRA2 framework. Sci. Comput. Program. 68(3), 214–234 (2007)

    Article  MATH  Google Scholar 

  12. Dittrich K.R., Gatziu S., Geppert A.: The active database management system manifesto: a rulebase of ADBMS features. In: Sellis, T. (eds) Proceedings of 2nd International Workshop on Rules in Database Systems. LNCS, vol. 985, pp. 1–17. Springer, Berlin (1995)

    Google Scholar 

  13. Ráth, I., Vágó, D., Varró, D.: Design-time simulation of domain-specific models by incremental pattern matching. In: 2008 IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC) (2008)

  14. Altmanninger K., Seidl M., Wimmer M.: A survey on model versioning approaches. Int. J. Web Inf. Syst. 5(3), 271–304 (2009)

    Google Scholar 

  15. Tratt L.: A change propagating model transformation language. J. Object Technol. 7(3), 107–126 (2008)

    Article  Google Scholar 

  16. Egyed, A., Letier, E., Finkelstein, A.: Generating and evaluating choices for fixing inconsistencies in UML design models. In: ASE’08: Proceedings of the 2008 23rd IEEE/ACM International Conference on Automated Software Engineering, Washington, DC, USA, pp. 99–108. IEEE Computer Society (2008)

  17. Forgy C.L.: Rete: a fast algorithm for the many pattern/many object pattern match problem. Artif. Intell. 19(1), 17–37 (1982)

    Article  Google Scholar 

  18. Bergmann, G., Ökrös, A., Ráth, I., Varró, D., Varró, G.: Incremental pattern matching in the VIATRA transformation system. In: GRaMoT’08, 3rd International Workshop on Graph and Model Transformation. 30th International Conference on Software Engineering (2008)

  19. Bergmann, G., Ákos Horváth, Ráth, I., Varró, D.: A benchmark evaluation of incremental pattern matching in graph transformation. In: ICGT2008, The 4th International Conference on Graph Transformation (2008)

  20. Horváth, Á., Varró, G., Varró, D.: Generic search plans for matching advanced graph patterns. In: Proceedings of the Sixth International Workshop on Graph Transformation and Visual Modeling Techniques (GT-VMT 2007), Braga, Portugal, pp. 57–68. Electornic Communications of the EASST (March 31–April 1, 2007)

  21. Guerra, E., de Lara, J.: Event-driven grammars: towards the integration of meta-modelling and graph transformation. In: Ehrig, H., Engels, G., Parisi-Presicce, F., Rozenberg, G., (eds.) Graph Transformations, Second International Conference, ICGT 2004, Rome, Italy, September 28–October 2, 2004, Proceedings. Lecture Notes in Computer Science, vol. 3256, pp. 54–69. Springer, New York (2004)

  22. Guerra E., de Lara J.: Event-driven grammars: relating abstract and concrete levels of visual languages. Softw. Syst. Model. 6(3), 317–347 (2007)

    Article  Google Scholar 

  23. Mouratidis, H., Giorgini, P., Manson, G., Philp, I.: A natural extension of tropos methodology for modelling security. In: Agent Oriented Methodologies Workshop. Object Oriented Programming, Systems, Languages (OOPSLA), Seattle-USA. ACM (2002)

  24. Tun, T.T., Yu, Y., Haley, C., Nuseibeh, B.: Model-based argument analysis for evolving security requirements. In: Proceedings of the 2010 Fourth International Conference on Secure Software Integration and Reliability Improvement, pp. 88–97. SSIRI ’10, Washington, DC, USA. IEEE Computer Society (2010)

  25. Haley, C.B., Laney, R.C., Nuseibeh, B., Hall, W.: Validating security requirements using structured toulmin-style argumentation (2005)

  26. Yu, E.S.K.: Towards modelling and reasoning support for early-phase requirements engineering. In: Proceedings of the 3rd IEEE Int. Symp. on Requirements Engineering, pp. 226–235 (1997)

  27. Varró, D., Varró-Gyapay, S., Ehrig, H., Prange, U., Taentzer, G.: Termination analysis of model transformations by Petri nets. In: Corradini, A., Ehrig, H., Montanari, U., Ribeiro, L., Rozenberg, G. (eds.) Proc. Third International Conference on Graph Transformation (ICGT 2006). LNCS, vol. 4178, pp. 260–274, Natal, Brazil. Springer (2006)

  28. Heckel, R., Küster, J.M., Taentzer, G.: Confluence of typed attributed graph transformation systems. In: Graph Transformation, First International Conference, ICGT 2002, pp. 161–176 (2002)

  29. Egyed, A.: Instant consistency checking for the UML. In: Proceedings of the 28th International Conference on Software Engineering, pp. 381–390, New York, NY, USA. ACM (2006)

  30. Garcia-Molina H., Ullman J.D., Widom J.: Database Systems: The Complete Book. Prentice-Hall, Englewood Cliffs (2001)

    Google Scholar 

  31. Seiriö, M., Berndtsson, M.: Design and implementation of an ECA rule markup language. In: Adi, A., Stoutenburg, S., Tabet, S. (eds.) Proc. of the 1st International Conference on Rules and Rule Markup Languages for the Semantic Web. LNCS, vol. 3791, pp. 98–112, Galway, Ireland. Springer, New York (October 2005)

  32. OMG: MOF Query View Transformation Specification. Object Management Group (April 2008)

  33. Stevens P.: Bidirectional model transformations in QVT: semantic issues and open questions. Softw. Syst. Model. 9(1), 7–20 (2010)

    Article  Google Scholar 

  34. Grundy J., Hosking J., Mugridge W.B.: Inconsistency management for multiple-view software development environments. IEEE Trans. Softw. Eng. 24(11), 960–981 (1998)

    Article  Google Scholar 

  35. Olsson, T., Grundy, J.: Supporting traceability and inconsistency management between software artefacts. In: Hamza, M.H. (ed.) Proceedings of the 2002 IASTED International Conference on Software Engineering and Applications, Cambridge, USA (November 2002)

  36. Ducasse, S., Demeyer, S.: The FAMOOS Object-Oriented Reengineering Handbook. http://scg.unibe.ch/archive/famoos/handbook/4handbook.pdf. Accepted Oct 1999

  37. Tichelaar, S., Ducasse, S., Demeyer, S.: FAMIX and XMI. In: Proceedings of the Seventh Working Conference on Reverse Engineering, pp. 296–298, Brisbane, Australia. IEEE Computer Society (November 2000)

  38. Gîrba T., Ducasse S.: Modeling history to analyze software evolution. J. Softw. Maint. Evol. Res. Pract. 18(3), 207–236 (2006)

    Article  Google Scholar 

  39. Narayanan, A., Levendovszky, T., Balasubramanian, D., Karsai, G.: Automatic domain model migration to manage metamodel evolution. In: Schürr, A., Selic, B. (eds.) Proceedings of the 12th International Conference on Model Driven Engineering Languages and Systems. Lecture Notes in Computer Science, vol. 5795, pp. 706–711, Denver, Colorado, USA. Springer (2009)

  40. Fabro, M.D.D., Bezivin, J., Jouault, F., Breton, E., Gueltas, G.: AMW: a generic model weaver. In: Proceedings of the 1ère Journée sur l’Ingénierie Dirigée par les Modèles (IDM05) (2005)

  41. Seibel, A., Neumann, S., Giese, H.: Dynamic hierarchical mega models: comprehensive traceability and its efficient maintenance. Softw. Syst. Model. 009 (2009)

  42. Alanen, M., Porres, I.: Difference and union of models. In: Stevens, P., Whittle, J., Booch, G. (eds.) Proceedings of the 6th International Conference on the Unified Modeling Language, Modeling Languages and Applications (UML 2003). LNCS, vol. 2863, pp. 2–17, San Francisco, California, USA. Springer (2003)

  43. Cicchetti A., Di Ruscio D., Pierantonio A.: A metamodel independent approach to difference representation. J. Object Technol. 6(9), 165–185 (2007)

    Article  Google Scholar 

  44. Gruschko, B., Kolovos, D.S., Paige, R.F.: Towards synchronizing models with evolving metamodels. In: Proceedings of International Workshop on Model-Driven Software Evolution held with the ECSMR (2007)

  45. Xiong, Y., Liu, D., Hu, Z., Zhao, H., Takeichi, M., Mei, H.: Towards automatic model synchronization from model transformations. In: ASE ’07: Proceedings of the Twenty-Second IEEE/ACM International Conference on Automated Software Engineering, pp. 164–173 (2007)

  46. Schürr, A.: Specification of graph translators with triple graph grammars. Technical report, RWTH Aachen, Fachgruppe Informatik, Germany (1994)

  47. Giese H., Wagner R.: Incremental model synchronization with triple graph grammars. In: Nierstrasz, O., Whittle, J., Harel, D., Reggio, G. (eds) Proceedings of 9th International Conference on Model Driven Engineering Languages and Systems (MoDELS 2006). LNCS, vol. 4199, pp. 543–557. Springer, New York (2006)

    Google Scholar 

  48. Klar, F., Königs, A., Schürr, A.: Model transformation in the large. In: ESEC-FSE ’07: Proceedings of European Software Engineering Conference, pp. 285–294, New York, NY, USA. ACM (2007)

  49. Becker S.M., Haase T., Westfechtel B.: Model-based a-posteriori integration of engineering tools for incremental development processes. Softw. Syst. Model. 4(2), 123–140 (2005)

    Article  Google Scholar 

  50. Jimenez, A.M.: Change propagation in the MDA: a model merging approach. Master’s thesis, The University of Queensland (June 2005)

  51. Hegedüs, Á., Ráth, I., Varró, D.: Back-annotation of simulation traces with change-driven model transformations. In: Proceedings of the Eigth International Conference on Software Engineering and Formal Methods (2010, accepted)

  52. Rensink, A.: Representing first-order logic using graphs. In: International Conference on Graph Transformations (ICGT). Lecture Notes in Computer Science, vol. 3256, pp. 319–335. Springer, New York (2004)

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to István Ráth.

Additional information

Communicated by Andy Schuerr and Bran Selic.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Bergmann, G., Ráth, I., Varró, G. et al. Change-driven model transformations. Softw Syst Model 11, 431–461 (2012). https://doi.org/10.1007/s10270-011-0197-9

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10270-011-0197-9

Keywords

Navigation