Optimization Patterns for OCL-Based Model Transformations

  • Jesús Sánchez Cuadrado
  • Frédéric Jouault
  • Jesús García Molina
  • Jean Bézivin
Part of the Lecture Notes in Computer Science book series (LNCS, volume 5421)


Writing queries and navigation expressions in OCL is an important part of the task of developing a model transformation definition. When such queries are complex and the size of the models is significant, performance issues cannot be neglected.

In this paper we present five patterns intended to optimize the performance of model transformations when OCL queries are involved. For each pattern we will give an example as well as several implementation alternatives. Experimental data gathered by running benchmarks is also shown to compare the alternatives.


Execution Time Model Transformation Object Constraint Language Opposite Relationship Boolean Expression 
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.
  2. 2.
    Aho, A.V., Ullman, J.D.: Principles of Compiler Design. Addison-Wesley series in computer science and information processing. Addison-Wesley, Reading (1977)zbMATHGoogle Scholar
  3. 3.
    Beck, K.: Implementation Patterns. Addison-Wesley Professional, Reading (2006)Google Scholar
  4. 4.
    Jouault, F., Kurtev, I.: Transforming models with ATL. In: Bruel, J.-M. (ed.) MoDELS 2005. LNCS, vol. 3844, pp. 128–138. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  5. 5.
    Kolovos, D.S., Paige, R.F., Polack, F.A.: The epsilon transformation language. In: Vallecillo, A., Gray, J., Pierantonio, A. (eds.) ICMT 2008. LNCS, vol. 5063, pp. 46–60. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  6. 6.
    Kuhlmann, M., Gogolla, M.: Analyzing semantic properties of ocl operations by uncovering interoperational relationships. In: Engels, G., Opdyke, B., Schmidt, D.C., Weil, F. (eds.) MODELS 2007. LNCS, vol. 4735. Springer, Heidelberg (2007)Google Scholar
  7. 7.
    Langlois, B., Exertier, D., Bonnet, S.: Performance improvement of mdd tools. In: EDOCW 2006: Proceedings of the 10th IEEE on International Enterprise Distributed Object Computing Conference Workshops, p. 19. IEEE Computer Society, Los Alamitos (2006)CrossRefGoogle Scholar
  8. 8.
    Mezei, G., Levendovszky, T., Charaf, H.: Restrictions for ocl constraint optimization algorithms. Technical report, Technische Universität Dresden (October 2006)Google Scholar
  9. 9.
    Mezei, G., Levendovszky, T., Charaf, H.: An optimizing ocl compiler for metamodeling and model transformation environments. In: Software Engineering Techniques: Design for Quality, pp. 61–71. Springer, Heidelberg (2007)Google Scholar
  10. 10.
    OMG. Final adopted specification for MOF 2.0 Query/View/Transformation (2005),
  11. 11.
    Varro, G., Schurr, A., Varro, D.: Benchmarking for graph transformation. In: VLHCC 2005: Proceedings of the 2005 IEEE Symposium on Visual Languages and Human-Centric Computing, pp. 79–88. IEEE Computer Society, Los Alamitos (2005)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2009

Authors and Affiliations

  • Jesús Sánchez Cuadrado
    • 1
  • Frédéric Jouault
    • 2
  • Jesús García Molina
    • 1
  • Jean Bézivin
    • 2
  1. 1.Universidad de MurciaSpain
  2. 2.AtlanMod team, INRIA & EMNFrance

Personalised recommendations