Skip to main content

Classification of Model Transformation Tools: Pattern Matching Techniques

  • Conference paper
Model-Driven Engineering Languages and Systems (MODELS 2014)

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 8767))

Abstract

While comparing different model transformation languages (MTLs), it is common to refer to their syntactic and semantic features and overlook their supporting tools’ performance. Performance is one of the aspects that can hamper the application of MDD to industrial scenarios. An highly declarative MTL might simply not scale well when using large models due to its supporting implementation. In this paper, we focus on the several pattern matching techniques (including optimization techniques) employed in the most popular transformation tools, and discuss their effectiveness w.r.t. the expressive power of the languages used. Because pattern matching is the most costly operation in a transformation execution, we present a classification of the existing model transformation tools according to the pattern matching optimization techniques they implement. Our classification complements existing ones that are more focused at syntactic and semantic features of the languages supported by those tools.

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

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Hailpern, B., Tarr, P.: Model-driven development: The good, the bad, and the ugly. IBM Systems Journal 45(3), 451–461 (2006)

    Article  Google Scholar 

  2. Atkinson, C., Kuhne, T.: Model-driven development: a metamodeling foundation. IEEE Software 20(5), 36–41 (2003)

    Article  Google Scholar 

  3. Van Gorp, P.: Model-driven development of model transformations. In: Ehrig, H., Heckel, R., Rozenberg, G., Taentzer, G. (eds.) ICGT 2008. LNCS, vol. 5214, pp. 517–519. Springer, Heidelberg (2008)

    Chapter  Google Scholar 

  4. Sendall, S., Kozaczynski, W.: Model transformation: The heart and soul of model-driven software development. IEEE Software 20(5), 42–45 (2003)

    Article  Google Scholar 

  5. Barroca, B., Amaral, V.: Asserting the correctness of translations. Electronic Communications of the EASST 50 (October 2011) ISSN=1863-2122

    Google Scholar 

  6. Veit Batz, G., Kroll, M., Geiß, R.: A first experimental evaluation of search plan driven graph pattern matching. Applications of Graph Transformations with Industrial Relevance, 471–486 (2008)

    Google Scholar 

  7. Larrosa, J., Valiente, G.: Constraint satisfaction algorithms for graph pattern matching. Mathematical Structures in Computer Science 12(4), 403–422 (2002)

    Article  MathSciNet  MATH  Google Scholar 

  8. Kalnins, a., Barzdins, J., Celms, E.: Efficiency Problems in MOLA Implementation. In: 19th International Conference, OOPSLA. Citeseer (2004)

    Google Scholar 

  9. Varró, G., Friedl, K., Varro, D., Schurr, A.: Advanced Techniques for the Implementation of Model Transformation Systems. PhD thesis, Budapest University of Technology and Economics (2008)

    Google Scholar 

  10. Bergmann, G., Ökrös, A., Ráth, I., Varro, D., Varró, G.: Incremental pattern matching in the viatra model transformation system. In: Proceedings of the Third International Workshop on Graph and Model Transformations. ACM (2008)

    Google Scholar 

  11. Zólyomi, I., Porkoláb, Z.: Towards generation of efficient transformations. In: Karsai, G., Visser, E. (eds.) GPCE 2004. LNCS, vol. 3286, pp. 266–282. Springer, Heidelberg (2004)

    Chapter  Google Scholar 

  12. Rudolf, M.: Utilizing constraint satisfaction techniques for efficient graph pattern matching. In: Ehrig, H., Engels, G., Kreowski, H.-J., Rozenberg, G. (eds.) Graph Transformation, 1998. LNCS, vol. 1764, pp. 238–252. Springer, Heidelberg (2000)

    Google Scholar 

  13. Mehlhorn, K.: Graph algorithms and NP-completeness (1984)

    Google Scholar 

  14. Garey, M.R., Johnson, D.S.: Computers and Intractability. A Guide to the Theory of NP-Completeness. W H Freeman & Company (January 1979)

    Google Scholar 

  15. Kleppe, A.G., Warmer, J.B., Bast, W.: MDA explained: the model driven architecture: Practice and promise. Addison-Wesley Professional (2003)

    Google Scholar 

  16. Silberschatz, A., Korth, H., Sudarshan, S.: Database System Concepts. McGraw-Hill Science/Engineering/Math (January 2010)

    Google Scholar 

  17. Estévez, A., Padrón, J., Sánchez, V., Roda, J.L.: ATC: A Low-Level Model Transformation Language. In: The 2nd International Workshop on Model ... (2006)

    Google Scholar 

  18. Czarnecki, K., Helsen, S.: Classification of model transformation approaches. In: Proceedings of the 2nd OOPSLA Workshop on Generative Techniques in the Context of the Model Driven Architecture, vol. 45 (2003)

    Google Scholar 

  19. Syriani, E., Vangheluwe, H.: De-/re-constructing model transformation languages. Electronic Communications of the EASST 29 (2010)

    Google Scholar 

  20. Taentzer, G.: AGG: A graph transformation environment for modeling and validation of software. In: Pfaltz, J.L., Nagl, M., Böhlen, B. (eds.) AGTIVE 2003. LNCS, vol. 3062, pp. 446–453. Springer, Heidelberg (2004)

    Chapter  Google Scholar 

  21. Lara, J.D., Vangheluwe, H., Alfonseca, M.: Meta-modelling and graph grammars for multi-paradigm modelling in AToM 3. Software & Systems Modeling 3(3), 194–209 (2004)

    Google Scholar 

  22. Balasubramanian, D., Narayanan, A., van Buskirk, C., Karsai, G.: The graph rewriting and transformation language: GReAT. Electronic Communications of the EASST 1 (2007)

    Google Scholar 

  23. Kroll, M., Geiß, R.: Developing Graph Transformations with Gr-Gen.NET. Applications of Graph Transformation with Industrial releVancE-AGTIVE 2007 (2007)

    Google Scholar 

  24. Schurr, A.: Progres, a visual language and environment for programming with graph rewriting systems. Technical report (1994)

    Google Scholar 

  25. Levendovszky, T., Lengyel, L., Mezei, G., Charaf, H.: A systematic approach to metamodeling environments and model transformation systems in VMTS. Electronic Notes in Theoretical Computer Science 127(1), 65–75 (2005)

    Article  Google Scholar 

  26. Syriani, E., Vangheluwe, H.: A modular timed graph transformation language for simulation-based design. Software & Systems Modeling, 1–28 (2011)

    Google Scholar 

  27. Xiong, Y., Hu, Z., Zhao, H., Song, H., Takeichi, M., Mei, H.: Supporting automatic model inconsistency fixing. In: Proceedings of the the 7th Joint Meeting of the European Software Engineering Conference and the ACM SIGSOFT Symposium on The Foundations of Software Engineering. ACM (2009)

    Google Scholar 

  28. Lawley, M., Steel, J.: Practical declarative model transformation with Tefkat. In: Bruel, J.-M. (ed.) MoDELS 2005 Workshops. LNCS, vol. 3844, pp. 139–150. Springer, Heidelberg (2006)

    Google Scholar 

  29. Braun, P., Marschall, F.: Botl–the bidirectional object oriented transformation language. Technical report (2003)

    Google Scholar 

  30. Telecom, F.: Smartqvt: An open source model transformation tool implementing the mof 2.0 qvt-operational language (2007)

    Google Scholar 

  31. Jouault, F., Allilaire, F., Bezivin, J., Kurtev, I.: ATL: A model transformation tool. Science of Computer Programming 72(1-2) (June 2008)

    Google Scholar 

  32. Braun, P., Marschall, F.: Transforming object oriented models with BOTL. Electronic Notes in Theoretical Computer Science 72(3), 103–117 (2003)

    Article  Google Scholar 

  33. Syriani, E., Vangheluwe, H.: Programmed Graph Rewriting with DEVS. In: Schürr, A., Nagl, M., Zündorf, A. (eds.) AGTIVE 2007. LNCS, vol. 5088, pp. 136–151. Springer, Heidelberg (2008)

    Chapter  Google Scholar 

  34. Knuth, D.E.: The Art of Computer Programming, Combinatorial Algorithms, Part 1, vol. 4A. Addison-Wesley (January 2011)

    Google Scholar 

  35. Hack, S.: Graphersetzung für Optimierungen in der Codeerzeugung. Master’s thesis, Universität Karlsruhe (2003)

    Google Scholar 

  36. Russell, S., Norvig, P.: Artificial intelligence: A modern approach 2003 (2003)

    Google Scholar 

  37. Zündorf, A.: Graph pattern matching in PROGRES. Technical report (1996)

    Google Scholar 

  38. Mészáros, T., Mezei, G., Levendovszky, T.: Manual and automated performance optimization of model transformation systems. International Journal on … (2010)

    Google Scholar 

  39. Mészáros, T., Van Gorp, P.: A Taxonomy of Model Transformation. In: Electronic Notes in Theoretical Computer Science ENTCS, vol. 152 (2006)

    Google Scholar 

  40. Syriani, E.: A multi-paradigm foundation for model transformation language engineering. PhD thesis. McGill University (2011)

    Google Scholar 

  41. Schubert, L.A.: An Evaluation of Model Transformation Languages for UML Quality Engineering. PhD thesis, Master’s thesis, Georg-August-Universität Göttingen (2010) [cited at p. 101]

    Google Scholar 

  42. ISO/IEC: ISO/IEC 9126. Software engineering – Product quality. ISO/IEC (2001)

    Google Scholar 

  43. Ehrig, K., Guerra, E., Lara, J.D., Lengyel, L., Prange, U., Taentzer, G., Varro, D., et al.: Model transformation by graph transformation: A comparative study. In: Gheyi, R., Tiago (eds.) IN MTIP 2005, International Workshop on Model Transformations in Practice (Satellite Event of Models 2005), pp. 71–80 (2006)

    Google Scholar 

  44. Syriani, E., Vangheluwe, H.: Programmed graph rewriting with time for simulation-based design. In: Vallecillo, A., Gray, J., Pierantonio, A. (eds.) ICMT 2008. LNCS, vol. 5063, pp. 91–106. Springer, Heidelberg (2008)

    Chapter  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2014 Springer International Publishing Switzerland

About this paper

Cite this paper

Gomes, C., Barroca, B., Amaral, V. (2014). Classification of Model Transformation Tools: Pattern Matching Techniques. In: Dingel, J., Schulte, W., Ramos, I., Abrahão, S., Insfran, E. (eds) Model-Driven Engineering Languages and Systems. MODELS 2014. Lecture Notes in Computer Science, vol 8767. Springer, Cham. https://doi.org/10.1007/978-3-319-11653-2_38

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-11653-2_38

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-11652-5

  • Online ISBN: 978-3-319-11653-2

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics