Algebraic Specification of a Model Transformation Engine

  • Artur Boronat
  • José Á. Carsí
  • Isidro Ramos
Part of the Lecture Notes in Computer Science book series (LNCS, volume 3922)


In Model-Driven Engineering, a software development process is a sequence of manipulation tasks that are applied to models, where model transformations play a relevant role. MOMENT (MOdel manageMENT) is a framework that is integrated in the Eclipse platform. MOMENT provides a collection of generic set-oriented operators to manipulate EMF models. In this paper, we present the model transformation mechanism that is embodied by the ModelGen operator. This operator uses the term rewriting system Maude as transformation engine and provides support for traceability. ModelGen has been defined in an algebraic specification so that we can use formal tools to reason about transformation features, such as termination and confluence. Furthermore, its application to EMF models shows that formal methods can be applied to industrial modeling tools in an efficient way. Finally, we indicate how the ModelGen operator provides support for the QVT Relations language in the MOMENT Framework.


Model-Driven Engineering Model Transformation QVT Algebraic Specifications Traceability 


  1. 1.
    Frankel, D.S.: Model Driven Architecture: Applying MDA to Enterprise Computing, January 2003. John Wiley & Sons OMG Press, Chichester (2003)Google Scholar
  2. 2.
    Greenfield, J., Short, K., Cook, S., Kent, S.: Software Factories: Assembling Applications with Patterns, Models, Frameworks, and Tools. John Wiley & Sons, Chichester (2004)Google Scholar
  3. 3.
    OMG, MOF 2.0 QVT final adopted specification (ptc/05-11-01), (November 2005) Google Scholar
  4. 4.
    Sendall, S., Kozaczynski, W.: Model Transformation: The Heart and Soul of Model-Driven Software Development. IEEE Software 20(5), 42–45 (2003)CrossRefGoogle Scholar
  5. 5.
    Bernstein, P.: Applying Model Management to Classical Meta Data Problems. In: CIDR 2003, pp. 209–220 (2003)Google Scholar
  6. 6.
    The MOMENT web site:
  7. 7.
    Clavel, M., Durán, F., Eker, S., Lincoln, P., Martí-Oliet, N., Meseguer, J., Quesada, J.F.: Maude: specification and programming in rewriting logic. Theoretical Computer Science 285(2), 187–243 (2002)MathSciNetCrossRefzbMATHGoogle Scholar
  8. 8.
    Boronat, A., Carsí, J.Á., Ramos, I.: Automatic Reengineering in MDA Using Rewriting Logic as Transformation Engine. In: 9th European Conference on Software Maintenance and Reengineering, Manchester, UK, IEEE Computer Society Press, Los Alamitos (2005)Google Scholar
  9. 9.
    Kurtev, I., Bézivin, J., Aksit, M.: Technological Spaces: An Initial Appraisal. In: Int. Federated Conf (DOA, ODBASE, CoopIS), Industrial track, Irvine (2002)Google Scholar
  10. 10.
  11. 11.
  12. 12.
    Boronat, A., Carsí, J.Á., Ramos, I.: Automatic Support for Traceability in a Generic Model Management Framework. In: Hartman, A., Kreische, D. (eds.) ECMDA-FA 2005. LNCS, vol. 3748, Springer, Heidelberg (2005)Google Scholar
  13. 13.
  14. 14.
    Bézivin, J., Dupé, G., Jouault, F., Pitette, G., Rougui, E.J.: First experiments with the ATL model transformation language: Transforming XSLT into XQuery. In: OOPSLA 2003 Workshop, Anaheim, California (2003)Google Scholar
  15. 15.
    Lawley, M., Steel, J.: Practical declarative model transformation with tefkat. In: Model Transformations In Practice Workshop, Montego Bay, Jamaica (October 2005)Google Scholar
  16. 16.
    Peltier, M., Bézevin, J., Guillaume, G.: MTRANS: A general framework, based on XSLT for model transformations. In: WTUML 2001, Proceedings of the workshop on Transformations in UML, Genova, Italy (2001)Google Scholar
  17. 17.
    The UMT web site:
  18. 18.
    Gerber, A., Lawley, M., Raymond, K., Steel, J., Wood, A.: Transformation: The Missing Link of MDA. In: Corradini, A., Ehrig, H., Kreowski, H.-J., Rozenberg, G. (eds.) ICGT 2002. LNCS, vol. 2505, pp. 90–105. Springer, Heidelberg (2002)CrossRefGoogle Scholar
  19. 19.
    Meseguer, J.: Membership algebra as a logical framework for equational specification. In: Parisi-Presicce, F. (ed.) WADT 1997. LNCS, vol. 1376, pp. 18–61. Springer, Heidelberg (1998)CrossRefGoogle Scholar
  20. 20.
    Czarnecki, K., Helsen, S.: Classification of Model Transformation Approaches. In: OOPSLA 2003 Workshop on Generative Techniques in the Context of Model-Driven Architecture (2003)Google Scholar
  21. 21.
    Mens, T., Van Gorp, P., Varro, F., Karsai, G.: Applying a model transformation taxonomy to graph transformation technology. In: Proc. Int’l Workshop on Graph and Model Transformation (GraMoT 2005) (September 2005)Google Scholar
  22. 22.
    Burmester, S., Giese, H., Niere, J., Tichy, M., Wadsack, J., Wagner, R., Wendehals, L., Zuendorf, A.: Tool integration at the meta-model level: The fujaba approach. Int’l Journal on Software Tools for Technology Transfer 6, 303–318 (2004)Google Scholar
  23. 23.
    Csertán, G., Huszerl, G., Majzik, I., Pap, Z., Pataricza, A., Varró, D.: VIATRA - visual automated transformations for formal verification and validation of UML models. In: Proc. 17th Int’l Conf. Automated Software Engineering, pp. 267–270 (2002)Google Scholar
  24. 24.
    Heckel, R., Küster, J., Taentzer, G.: Confluence of typed attributed graph transformation systems. In: Corradini, A., Ehrig, H., Kreowski, H.-J., Rozenberg, G. (eds.) ICGT 2002. LNCS, vol. 2505, pp. 161–176. Springer, Heidelberg (2002)CrossRefGoogle Scholar
  25. 25.
    Algebraic specification of the model transformation that is used as example in the paper:

Copyright information

© Springer-Verlag Berlin Heidelberg 2006

Authors and Affiliations

  • Artur Boronat
    • 1
  • José Á. Carsí
    • 1
  • Isidro Ramos
    • 1
  1. 1.Department of Information Systems and ComputationTechnical University of ValenciaValenciaSpain

Personalised recommendations