Skip to main content
Log in

Formal foundation of consistent EMF model transformations by algebraic graph transformation

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

Abstract

Model transformation is one of the key activities in model-driven software development. An increasingly popular technology to define modeling languages is provided by the Eclipse Modeling Framework (EMF). Several EMF model transformation approaches have been developed, focusing on different transformation aspects. To validate model transformations with respect to functional behavior and correctness, a formal foundation is needed. In this paper, we define consistent EMF model transformations as a restricted class of typed graph transformations using node type inheritance. Containment constraints of EMF model transformations are translated to a special kind of graph transformation rules such that their application leads to consistent transformation results only. Thus, consistent EMF model transformations behave like algebraic graph transformations and the rich theory of algebraic graph transformation can be applied to these EMF model transformations to show functional behavior and correctness. Furthermore, we propose parallel graph transformation as a suitable framework for modeling EMF model transformations with multi-object structures. Rules extended by multi-object structures can specify a flexible number of recurring structures. The actual number of recurring structures is dependent on the application context of such a rule. We illustrate our approach by selected refactorings of simplified statechart models. Finally, we discuss the implementation of our concepts in a tool environment for EMF model transformations.

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. Schmidt D.: Model-driven engineering. IEEE Comput. 39(2), 25–31 (2006)

    Article  Google Scholar 

  2. Mens T., Tourwé T.: A survey of software refactoring. Trans. Softw. Eng. 30(2), 126–139 (2004)

    Article  Google Scholar 

  3. Eclipse Consortium: Eclipse Modeling Framework (EMF)—Version 2.4. (2008) http://www.eclipse.org/emf

  4. Object Management Group: Meta Object Facility (MOF) Core Specification Version 2.0. http://www.omg.org/technology/documents/modeling_spec_catalog.htm#MOF (2008)

  5. Object Management Group: MOF 2.0 / XMI Mapping Specification (2008). http://www.omg.org/technology/documents/formal/xmi.htm

  6. Jouault, F., Kurtev, I.: Transforming models with ATL. In: MoDELS Satellite Events. LNCS, vol. 3844, pp 128–138. Springer, Berlin (2005)

  7. Kolovos D., Paige R., Polack F., Rose L.: Update transformations in the small with Epsilon wizard language. Object Technol. 6(9), 53–69 (2007)

    Article  Google Scholar 

  8. Lawley, M., Steel, J.: Practical declarative model transformation with Tefkat. In: MoDELS Satellite Events. LNCS, vol. 3844, pp. 139–150. Springer, Berlin (2005)

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

    Article  MATH  Google Scholar 

  10. Boronat, A.: MOMENT: A formal framework for model management. PhD thesis, Universitat Politècnica de València (2007)

  11. Object Management Group: Meta Object Facility (MOF) 2.0 Query/View/Transformation Specification. Version 1.0 (2008)

  12. Ehrig, H., Ehrig, K., Prange, U., Taentzer, G.: Fundamentals of algebraic graph transformation. EATCS Monogr. Theor. Comp. Sci. (2006)

  13. Clavel, M., Durán, F., Eker, S., Lincoln, P., Martí-Oliet, N., Meseguer, J., Talcott, C.: All About Maude—A High-Performance Logical Framework: How to Specify, Program, and Verify Systems in Rewriting Logic, LNCS, vol. 4350. Springer, Berlin (2007)

  14. TFS-Group, TU Berlin: AGG (2009). http://tfs.cs.tu-berlin.de/agg

  15. Biermann, E., Ehrig, H., Ermel, C., Golas, U., Taentzer, G.: Parallel independence of amalgamated graph transformations applied to model transformation. In: Graph Transformations and Model-Driven Engineering. Essays Dedicated to Manfred Nagl, LNCS, vol. 5765. Springer, Berlin (2010)

  16. Eclipse Consortium: Eclipse Model Development Tools (2007). http://www.eclipse.org/modeling/mdt

  17. Mens T., Taentzer G., Runge O.: Analysing refactoring dependencies using graph transformation. Softw. Syst. Model. 6(3), 269–285 (2007)

    Article  Google Scholar 

  18. Rensink, A., Taentzer, G.: Ensuring structural constraints in graph-based models with type inheritance. In: Proceedings of Fundamental Approaches to Software Engineering (FASE’05). LNCS, vol. 3442, pp. 64–79, Springer, Berlin (2005)

  19. Taentzer, G.: Parallel and distributed graph transformation: formal description and application to communication-based systems. PhD thesis, TU Berlin, Shaker Verlag, Berlin (1996)

  20. Arendt, T., Biermann, E., Jurack, S., Krause, C., Taentzer, G.: Henshin: Advanced concepts and tools for in-place EMF model transformations. In: Proceedings of the ACM/IEEE 13th International Conference on Model Driven Engineering Languages and Systems (MoDELS’10) (2010)

  21. Biermann, E., Ermel, C., Schmidt, J., Warning, A.: Visual modeling of controlled emf model transformation using Henshin. In: Proceedings of the 4th International Workshop on Graph-Based Tools (GraBaTs’10) (2010) (to appear)

  22. 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: Proceedings of the International Conference on Model Driven Engineering Languages and Systems (MoDELS’06). LNCS, vol. 4199, pp. 425–439. Springer, Berlin (2006)

  23. Eclipse Consortium: Eclipse Modeling Framework Technology (2009). http://www.eclipse.org/modeling/emft

  24. Taentzer, G.: AGG: a graph transformation environment for modeling and validation of software. In: Application of Graph Transformations with Industrial Relevance. LNCS, vol. 3062, pp. 446–456. Springer, Berlin (2004)

  25. de Lara J., Ermel C., Taentzer G., Ehrig K.: Parallel graph transformation for model simulation applied to timed transition Petri nets. ENTCS 109, 17–29 (2004)

    Google Scholar 

  26. Rensink, A., Kuperus, J.H.: Repotting the geraniums: on nested graph transformation rules. ECEASST 18 (2009)

  27. Balasubramanian, D., Narayanan, A., Neema, S., Shi, F., Thibodeaux, R., Karsai, G.: A subgraph operator for graph transformation languages. ECEASST 6 (2007)

  28. Grønmo, R., Krogdahl, S., Møller-Pedersen, B.: A collection operator for graph transformation. In: Proceedings International Conference on Theory and Practice of Model Transformations (ICMT’09). LNCS, vol. 5563, pp. 67–82. Springer, Berlin (2009)

  29. Hoffmann, B., Janssens, D., van Eetvelde, N.: Cloning and expanding graph transformation rules for refactoring. In: International Workshop on Graph and Model Transformation. ENTCS, vol. 152, pp. 53–67. Elsevier, Amsterdam (2006)

  30. Schürr, A., Winter, A., Zündorf, A.: The PROGRES-approach: language and environment. In: Handbook of Graph Grammars and Computing by Graph Transformation, Applications, Languages and Tools, vol. 2, pp. 487–550. World Scientific (1999)

  31. Fischer, T., Niere, J., Torunski, L., Zündorf, A.: Story diagrams: a new graph rewrite language based on the Unified Modeling Language. In: Proceedings of International Workshop on Theory and Application of Graph Transformation. LNCS, vol. 1764, pp. 296–309. Springer, Berlin (2000)

  32. Habel A., Pennemann K.H.: Correctness of high-level transformation systems relative to nested conditions. Math. Struct. Comput. Sci. 19, 1–52 (2009)

    Article  MathSciNet  Google Scholar 

  33. Biermann, E., Ermel, C., Taentzer, G.: Lifting parallel graph transformation concepts to model transformation based on the Eclipse modeling framework. ECEASST 26 (2010)

  34. Kuske, S.: Transformation units—a structuring principle for graph transformation systems. PhD thesis, University of Bremen (2000)

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Claudia Ermel.

Additional information

Communicated by Prof. Krzysztof Czarnecki.

Enrico Biermann, Claudia Ermel and Gabriele Taentzer: Formal Foundation of Consistent EMF Model Transformations by Algebraic Graph Transformation (accepted for publication in the Journal of Software and Systems Modeling).

Rights and permissions

Reprints and permissions

About this article

Cite this article

Biermann, E., Ermel, C. & Taentzer, G. Formal foundation of consistent EMF model transformations by algebraic graph transformation. Softw Syst Model 11, 227–250 (2012). https://doi.org/10.1007/s10270-011-0199-7

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10270-011-0199-7

Keywords

Navigation