Software & Systems Modeling

, Volume 9, Issue 4, pp 453–471

Synchronization of abstract and concrete syntax in domain-specific modeling languages

By mapping models and live transformations
Theme Section

Abstract

Modern domain-specific modeling (DSM) frameworks provide refined techniques for developing new languages based on the clear separation of conceptual elements of the language (called abstract syntax) and their graphical visual representation (called concrete syntax). This separation is usually achieved by recording traceability information between the abstract and concrete syntax using mapping models. However, state-of-the-art DSM frameworks impose severe restrictions on traceability links between elements of the abstract syntax and the concrete syntax. In the current paper, we propose a mapping model which allows to define arbitrarily complex mappings between elements of the abstract and concrete syntax. Moreover, we demonstrate how live model transformations can complement mapping models in providing bidirectional synchronization and implicit traceability between models of the abstract and the concrete syntax. In addition, we introduce a novel architecture for DSM environments which enables these concepts, and provide an overview of the tool support.

Keywords

Domain-specific modeling languages Model synchronization Live model transformations Traceability 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    The Eclipse Project: Graphical Modeling Framework. http://www.eclipse.org/gmf
  2. 2.
    Hearnden D., Lawley M., Raymond K.: Incremental model transformation for the evolution of model-driven systems. In: Nierstrasz, O., Whittle, J., Harel, D., Reggio, G. (eds) Proceedings of the 9th International Conference on Model Driven Engineering Languages and Systems, Volume 4199 of Lecture Notes in Computer Science, pp. 321–335. Springer, Genova, Italy (2006)Google Scholar
  3. 3.
    Ráth, I., Bergmann, G., Ökrös, A., Varró, D.: Live model transformations driven by incremental pattern matching. In: Theory and Practice of Model Transformations. Volume 5063/2008 of Lecture Notes in Computer Science, pp. 107–121. Springer, Berlin (2008)Google Scholar
  4. 4.
    Varró D., Balogh A.: The model transformation language of the VIATRA2 framework. Sci. Comput. Program. 68(3), 214–234 (2007)MATHCrossRefGoogle Scholar
  5. 5.
    Ráth, I., Vágó, D., Varró, D.: Design-time simulation of domain-specific models by incremental pattern matching. In: 2008 IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC) (2008)Google Scholar
  6. 6.
    Metacase: MetaEdit+. http://www.metacase.com/mep/
  7. 7.
    The Eclipse Project: Eclipse Modeling Framework. http://www.eclipse.org/emf
  8. 8.
    Ehrig, H., Engels, G., Kreowski, H.J., Rozenberg, G. (eds.): Handbook on Graph Grammars and Computing by Graph Transformation. Volume 2: Applications, Languages and Tools. World Scientific, Singapore (1999)Google Scholar
  9. 9.
    Börger E., Stärk R.: Abstract State Machines. A method for High-Level System Design and Analysis. Springer-Verlag, New York (2003)MATHGoogle Scholar
  10. 10.
    Bergmann, G., Ökrös, A., Ráth, I., Varró, D., Varró, G.: Incremental pattern matching in the VIATRA transformation system. In: GRaMoT’08, 3rd International Workshop on Graph and Model Transformation, 30th International Conference on Software Engineering (2008)Google Scholar
  11. 11.
    Hearnden, D., Lawley, M., Raymond, K.: Incremental model transformation for the evolution of model-driven systems. In: Proceedings of 9th International Conference on Model Driven Engineering Languages and Systems (MODELS 2006). Volume 4199 of LNCS, pp. 321–335. Springer, Berlin (2006)Google Scholar
  12. 12.
    Champeau, J., Rochefort, E.: Model engineering and traceability. In: SIVOES-MDA Workshop. UML 2003 Conference (2003)Google Scholar
  13. 13.
    Walderhaug, S., Johansen, U., Stav, E., Aagedal, J.: Towards a generic solution for traceability in MDD. In: 5th ECMDA Workshop on Traceability. ECMDA Conference (2006)Google Scholar
  14. 14.
    Muller P.A., Fleurey F., Fondement F., Hassenforder M., Schneckenburger R., Grard S., Jzquel J.M.: Model-driven analysis and synthesis of concrete syntax. Model Driven Engineering Languages and Systems, Springer LNCS 4199/2006, 98–110 (2006). doi:10.1007/11880240_8 CrossRefGoogle Scholar
  15. 15.
    Garcia-Molina H., Ullman J.D., Widom J.: Database Systems: The Complete Book. Prentice Hall, Englewood Cliffs (2001)Google Scholar
  16. 16.
    Dittrich K.R., Gatziu S., Geppert A.: The active database management system manifesto: a rulebase of ADBMS features. In: Sellis, T. (eds) Proceedings of the 2nd International Workshop on Rules in Database Systems. Volume 985 of Lecture Notes in Computer Science, Glyfada, Athens, Greece, pp. 1–17. Springer, New York (1995)Google Scholar
  17. 17.
    Alferes, J.J., Banti, F., Brogi, A.: An event-condition-action logic programming language. In: In the Proceedings of the 10th European Conference on Logics in Artificial Intelligence (JELIA 06), pp. 29–42. Springer, New York (2006)Google Scholar
  18. 18.
    Seiriö M., Berndtsson M.: Design and implementation of an ECA. In: Adi, A., Stoutenburg, S., Tabet, S. (eds) Proceedings of the 1st International Conference on Rules and Rule Markup Languages for the Semantic Web. Volume 3791 of Lecture Notes in Computer Science, Galway, Ireland, pp. 98–112. Springer, New York (2005)Google Scholar
  19. 19.
    Schürr, A.: Introduction to PROGRES, an attributed graph grammar based specification language. In: Nagl, M. (ed.) Graph– Theoretic Concepts in Computer Science, Volume 411 of LNCS, pp. 151–165. Springer, Berlin (1990)Google Scholar
  20. 20.
    Giese, H., Wagner, R.: Incremental model synchronization with triple graph grammars. In: Nierstrasz, O., Whittle, J., Harel, D., Reggio, G. (eds.) Proceedings of 9th International Conference on Model Driven Engineering Languages and Systems (MoDELS 2006). Volume 4199 of LNCS, pp. 543–557. Springer, New York (2006)Google Scholar
  21. 21.
    Schürr, A.: Specification of graph translators with triple graph grammars. Technical report, RWTH Aachen, Fachgruppe Informatik, Germany (1994)Google Scholar
  22. 22.
    Klar, F., Königs, A., Schürr, A.: Model transformation in the large. In: ESEC-FSE ’07: Proceedings of the 6th Joint Meeting of the European Software Engineering Conference and the ACM SIGSOFT Symposium on The Foundations of Software Engineering, pp. 285–294. ACM, New York, NY, USA (2007)Google Scholar
  23. 23.
    Gupta, A., Mumick, I.S., Subrahmanian, V.S.: Maintaining views incrementally. In: ACM SIGMOD Proceedings, pp. 157–166. Washington, D.C., USA (1993)Google Scholar
  24. 24.
    Varró G., Varró D.: Graph transformation with incremental updates. In: Heckel, R. (eds) Proceedings of the 4th Workshop on Graph Transformation and Visual Modeling Techniques (GT-VMT 2004), Volume 109 of ENTCS, Barcelona, Spain, pp. 71–83. Elsevier, Amsterdam (2004)Google Scholar
  25. 25.
    Varró G., Friedl K., Varró D.: Implementing a graph transformation engine in relational databases. Softw. Syst. Model. 5(3), 313–341 (2006)CrossRefGoogle Scholar
  26. 26.
    J. Jakob, A.K., Schürr, A.(2006) Non-materialized model view specification with triple graph grammars. In: Corradini, A. (ed.) International Conference on Graph Transformations. Volume 4178 of Lecture Notes in Computer Science (LNCS), pp. 321–335. Springer Verlag, HeidelbergGoogle Scholar
  27. 27.
    Becker S.M., Thomas Haase B.W.: Model-based a-posteriori integration of engineering tools for incremental development processes. Softw. Syst. Model. 4(2), 123–140 (2005)CrossRefGoogle Scholar
  28. 28.
    The Object Management Group: Documents Associated With Meta Object Facility (MOF) 2.0 and Query/View/Transformation, V1.0 (2008). http://www.omg.org/spec/QVT/1.0
  29. 29.
    The University of Queensland: The TefKat tool homepage. http://tefkat.sourceforge.net/
  30. 30.
    Egyed, A.: Instant consistency checking for the uml. In: Proceedings of the 28th International Conference on Software Engineering, pp. 381–390. ACM, New York, NY, USA (2006)Google Scholar
  31. 31.
    Del Fabro, M.D., Valduriez, P.: Towards the efficient development of model transformations using model weaving and matching transformations. Software and Systems Modeling (July 2008) Special section paper. Springer, Berlin/Heidelberg. doi:10.1007/s10270-008-0094-z
  32. 32.
    Kolovos, D.S.: Editing EMF Models with Exeed. Technical report, Department of Computer Science, University of York (2007). http://www.eclipse.org/gmt/epsilon/doc/Exeed.pdf
  33. 33.
    Rose L.M., Paige R.F., Kolovos D.S., Polack F.A.C.: The Epsilon Generation Language. Model Driven Architecture Foundations and Applications, Springer LNCS 5095/2008, 1–16 (2008). doi:10.1007/978-3-540-69100-6_1 CrossRefGoogle Scholar
  34. 34.
    Metacase: MetaEdit+. http://www.metacase.com/mep/
  35. 35.
  36. 36.
    Greenfield, J.: Software Factories: Assembling Applications with Patterns, Models, Frameworks, and Tools. http://msdn.microsoft.com/library/en-us/dnbda/html/softfact3.asp
  37. 37.
    Zhu, N., Grundy, J.C., Hosking, J.G.: Pounamu: a meta-tool for multi-view visual language environment construction. In: Proceedings of the 2004 International Conference on Visual Languages and Human-Centric Computing, pp. 254–256. Rome, Italy (September 2004)Google Scholar
  38. 38.
    Daniel Amyot H.F., Roy J.F.: Evaluation of Development Tools for Domain-Specific Modeling Languages. System Analysis and Modeling: Language Profiles, Springer LNCS 4320/2006, 183–197 (2006). doi:10.1007/11951148_12 CrossRefGoogle Scholar
  39. 39.
    Ehrig K., Ermel C., Hänsgen S., Taentzer G.: Generation of visual editors as Eclipse plug-ins. In: Redmiles, D.F., Ellman, T., Zisman, A. (eds) 20th IEEE/ACM International Conference on Automated Software Engineering (ASE 2005), November 7–11, 2005, Long Beach, CA, USA, pp. 134–143. ACM, New York (2005)Google Scholar
  40. 40.
    Bardohl R., Ehrig H.: Conceptual model of the graphical editor GENGED for the visual definition of visual languages. In: Ehrig, H., Engels, G., Kreowski, H.J., Rozenberg, G. (eds) Proceedings of Theory and Application to Graph Transformations (TAGT’98), Volume 1764 of LNCS, pp. 252–266. Springer, New York (2000)Google Scholar
  41. 41.
    Köth, O., Minas, M.: Generating diagram editors providing free-hand editing as well as syntax-directed editing. In: Ehrig, H., Taentzer, G., (eds.) GRATRA 2000 Joint APPLIGRAPH and GETGRATS Workshop on Graph Transformation Systems, pp. 32–39. Berlin, Germany (March 25–27 2000)Google Scholar
  42. 42.
    Minas, M.: Generating visual editors based on fujaba/moflon and diameta. Technical report, University Paderborn. Proceedings of 4th Fujaba Days, pp. 35-42. (2006) Technical Report tr-ri-06-275Google Scholar
  43. 43.
    GME: The Generic Modeling Environment. http://www.isis.vanderbilt.edu/Projects/gme
  44. 44.
    Karsai, G., Agrawal, A., Shi, F., Sprinkle, J.: On the use of graph transformation in the formal specification of model interpreters. J. Univers. Comput. Sci. (2003)Google Scholar
  45. 45.
    Levendovszky, T., Lengyel, L., Mezei, G., Charaf, H.: A systematic approach to metamodeling environments and model transfor- mation systems in vmts. In: Proceedings of GraBaTs 2004: International Workshop on Graph Based Tools. Elsevier, Amsterdam (2004)Google Scholar
  46. 46.
    de Lara J., Vangheluwe H.: AToM3: a tool for multi-formalism and meta-modelling. In: Kutsche, R.D., Weber, H. (eds) 5th International Conference, FASE 2002: Fundamental Approaches to Software Engineering, Grenoble, France, April 8–12, 2002, Proceedings, Volume 2306 of LNCS, pp. 174–188. Springer, New York (2002)Google Scholar
  47. 47.
    Guerra E., de Lara J.: Event-driven grammars: relating abstract and concrete levels of visual languages. Softw. Syst. Model. 6(3), 317–347 (2007)CrossRefGoogle Scholar
  48. 48.
    The SENSORIA EU FP6 Research Project: The SENSORIA Development Environment Homepage (2009). http://svn.pst.ifi.lmu.de/trac/sct
  49. 49.
    Polgár, B., Ráth, I., Szatmári, Z., Majzik, I.: Model-based integration, execution and certification of development tool-chains. In: 2nd ECMDA Workshop on Model-Driven Tool and Process Integration (2009)Google Scholar
  50. 50.
    Bergmann, G., Ákos Horváth, Ráth, I., Varró, D.: A benchmark evaluation of incremental pattern matching in graph transformation. In: ICGT2008, The 4th International Conference on Graph Transformation (2008)Google Scholar

Copyright information

© Springer-Verlag 2009

Authors and Affiliations

  1. 1.Department of Measurement and Information SystemsBudapest University of Technology and EconomicsBudapestHungary
  2. 2.OptXware Research and Development LLC.BudapestHungary

Personalised recommendations