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.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Hailpern, B., Tarr, P.: Model-driven development: The good, the bad, and the ugly. IBM Systems Journal 45(3), 451–461 (2006)
Atkinson, C., Kuhne, T.: Model-driven development: a metamodeling foundation. IEEE Software 20(5), 36–41 (2003)
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)
Sendall, S., Kozaczynski, W.: Model transformation: The heart and soul of model-driven software development. IEEE Software 20(5), 42–45 (2003)
Barroca, B., Amaral, V.: Asserting the correctness of translations. Electronic Communications of the EASST 50 (October 2011) ISSN=1863-2122
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)
Larrosa, J., Valiente, G.: Constraint satisfaction algorithms for graph pattern matching. Mathematical Structures in Computer Science 12(4), 403–422 (2002)
Kalnins, a., Barzdins, J., Celms, E.: Efficiency Problems in MOLA Implementation. In: 19th International Conference, OOPSLA. Citeseer (2004)
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)
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)
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)
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)
Mehlhorn, K.: Graph algorithms and NP-completeness (1984)
Garey, M.R., Johnson, D.S.: Computers and Intractability. A Guide to the Theory of NP-Completeness. W H Freeman & Company (January 1979)
Kleppe, A.G., Warmer, J.B., Bast, W.: MDA explained: the model driven architecture: Practice and promise. Addison-Wesley Professional (2003)
Silberschatz, A., Korth, H., Sudarshan, S.: Database System Concepts. McGraw-Hill Science/Engineering/Math (January 2010)
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)
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)
Syriani, E., Vangheluwe, H.: De-/re-constructing model transformation languages. Electronic Communications of the EASST 29 (2010)
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)
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)
Balasubramanian, D., Narayanan, A., van Buskirk, C., Karsai, G.: The graph rewriting and transformation language: GReAT. Electronic Communications of the EASST 1 (2007)
Kroll, M., Geiß, R.: Developing Graph Transformations with Gr-Gen.NET. Applications of Graph Transformation with Industrial releVancE-AGTIVE 2007 (2007)
Schurr, A.: Progres, a visual language and environment for programming with graph rewriting systems. Technical report (1994)
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)
Syriani, E., Vangheluwe, H.: A modular timed graph transformation language for simulation-based design. Software & Systems Modeling, 1–28 (2011)
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)
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)
Braun, P., Marschall, F.: Botl–the bidirectional object oriented transformation language. Technical report (2003)
Telecom, F.: Smartqvt: An open source model transformation tool implementing the mof 2.0 qvt-operational language (2007)
Jouault, F., Allilaire, F., Bezivin, J., Kurtev, I.: ATL: A model transformation tool. Science of Computer Programming 72(1-2) (June 2008)
Braun, P., Marschall, F.: Transforming object oriented models with BOTL. Electronic Notes in Theoretical Computer Science 72(3), 103–117 (2003)
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)
Knuth, D.E.: The Art of Computer Programming, Combinatorial Algorithms, Part 1, vol. 4A. Addison-Wesley (January 2011)
Hack, S.: Graphersetzung für Optimierungen in der Codeerzeugung. Master’s thesis, Universität Karlsruhe (2003)
Russell, S., Norvig, P.: Artificial intelligence: A modern approach 2003 (2003)
Zündorf, A.: Graph pattern matching in PROGRES. Technical report (1996)
Mészáros, T., Mezei, G., Levendovszky, T.: Manual and automated performance optimization of model transformation systems. International Journal on … (2010)
Mészáros, T., Van Gorp, P.: A Taxonomy of Model Transformation. In: Electronic Notes in Theoretical Computer Science ENTCS, vol. 152 (2006)
Syriani, E.: A multi-paradigm foundation for model transformation language engineering. PhD thesis. McGill University (2011)
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]
ISO/IEC: ISO/IEC 9126. Software engineering – Product quality. ISO/IEC (2001)
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)
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)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights 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)