Generic Model Transformations: Write Once, Reuse Everywhere

  • Jesús Sánchez Cuadrado
  • Esther Guerra
  • Juan de Lara
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 6707)


Model transformation is one of the core techniques in Model Driven Engineering. Many transformation languages exist nowadays, but few offer mechanisms directed to the reuse of whole transformations or transformation fragments in different contexts.

Taking inspiration from generic programming, in this paper we define model transformation templates. These templates are defined over meta-model concepts which later can be bound to specific meta-models. The binding mechanism is flexible as it permits mapping concepts and meta-models with certain kinds of structural heterogeneities. The approach is general and can be applied to any model transformation language. In this paper we report on its application to ATL.


Model Transformation Target Domain Transformation Language Concrete Syntax Model Drive Engineer 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Aho, A.V., Sethi, R., Ullman, J.D.: Compilers: principles, techniques, and tools. Addison-Wesley Longman Publishing Co., Inc., Amsterdam (1986)zbMATHGoogle Scholar
  2. 2.
    Ball, T., Larus, J.R.: Branch prediction for free. SIGPLAN 28, 300–313 (1993)CrossRefGoogle Scholar
  3. 3.
    Bézivin, J., Jouault, F., Palies, J.: Towards model transformation design patterns. In: EWMT 2005 (2005)Google Scholar
  4. 4.
    Bottoni, P., Guerra, E., de Lara, J.: A language-independent and formal approach to pattern-based modelling with support for composition and analysis. IST 52(8), 821–844 (2010)Google Scholar
  5. 5.
    de Lara, J., Bardohl, R., Ehrig, H., Ehrig, K., Prange, U., Taentzer, G.: Attributed graph transformation with node type inheritance. TCS 376(3), 139–163 (2007)MathSciNetCrossRefzbMATHGoogle Scholar
  6. 6.
    de Lara, J., Guerra, E.: Generic meta-modelling with concepts, templates and mixin layers. In: Petriu, D.C., Rouquette, N., Haugen, Ø. (eds.) MODELS 2010. LNCS, vol. 6394, pp. 16–30. Springer, Heidelberg (2010)CrossRefGoogle Scholar
  7. 7.
    Durán, F., Meseguer, J.: Parameterized theories and views in full maude 2.0. ENTCS 36 (2000)Google Scholar
  8. 8.
    García, R., Jarvi, J., Lumsdaine, A., Siek, J., Willcock, J.: A comparative study of language support for generic programming. SIGPLAN 38(11), 115–134 (2003)CrossRefzbMATHGoogle Scholar
  9. 9.
    Generic model transformations,
  10. 10.
    Gregor, D., Järvi, J., Siek, J., Stroustrup, B., dos Reis, G., Lumsdaine, A.: Concepts: linguistic support for generic programming in C++. SIGPLAN Not. 41(10), 291–310 (2006)CrossRefGoogle Scholar
  11. 11.
    Jouault, F., Allilaire, F., Bézivin, J., Kurtev, I.: ATL: A model transformation tool. Science of Computer Programming 72(1-2), 31–39 (2008), (last accessed November 2010)MathSciNetCrossRefzbMATHGoogle Scholar
  12. 12.
    Kavimandan, A., Gokhale, A.: A parameterized model transformations approach for automating middleware QoS configurations in distributed real-time and embedded systems. In: WRASQ 2007 (2007)Google Scholar
  13. 13.
    Kolovos, D.S., Paige, R.F., Polack, F.A.C.: The Epsilon Object Language (EOL). In: Rensink, A., Warmer, J. (eds.) ECMDA-FA 2006. LNCS, vol. 4066, pp. 128–142. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  14. 14.
    OMG. UML 2.3 specification,
  15. 15.
    Sen, S., Moha, N., Mahé, V., Barais, O., Baudry, B., Jézéquel, J.-M.: Reusable model transformations. Software and System Modeling (2010) (in press)Google Scholar
  16. 16.
    Steel, J., Jézéquel, J.-M.: On model typing. SoSyM 6(4), 401–413 (2007)Google Scholar
  17. 17.
    Stepanov, A., McJones, P.: Elements of Programming. Addison-Wesley, Reading (2009)Google Scholar
  18. 18.
    van Amstel, M., van den Brand, M., Engelen, L.: An exercise in iterative domain-specific language design. In: IWPSE-EVOL 2010, pp. 48–57. ACM, New York (2010)Google Scholar
  19. 19.
    Wimmer, M., Kappel, G., Kusel, A., Retschitzegger, W., Schönböck, J., Schwinger, W.: Plug & play model transformations - a DSL for resolving structural metamodel heterogeneities. In: DSM 2010 (2010) (online Publication)Google Scholar
  20. 20.
    Wimmer, M., Kappel, G., Kusel, A., Retschitzegger, W., Schönböck, J., Schwinger, W.: Towards an expressivity benchmark for mappings based on a systematic classification of heterogeneities. In: MDI 2010, pp. 32–41. ACM, New York (2010)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2011

Authors and Affiliations

  • Jesús Sánchez Cuadrado
    • 1
  • Esther Guerra
    • 2
  • Juan de Lara
    • 2
  1. 1.Universidad de MurciaSpain
  2. 2.Universidad Autónoma de MadridSpain

Personalised recommendations