Skip to main content
Log in

Bridging the gap between formal semantics and implementation of triple graph grammars

Ensuring conformance of relational model transformation specifications and implementations

Software & Systems Modeling Aims and scope Submit manuscript

Abstract

The correctness of model transformations is a crucial element for model-driven engineering of high-quality software. A prerequisite to verify model transformations at the level of the model transformation specification is that an unambiguous formal semantics exists and that the implementation of the model transformation language adheres to this semantics. However, for existing relational model transformation approaches, it is usually not really clear under which constraints particular implementations really conform to the formal semantics. In this paper, we will bridge this gap for the formal semantics of triple graph grammars (TGG) and an existing efficient implementation. While the formal semantics assumes backtracking and ignores non-determinism, practical implementations do not support backtracking, require rule sets that ensure determinism, and include further optimizations. Therefore, we capture how the considered TGG implementation realizes the transformation by means of operational rules, define required criteria, and show conformance to the formal semantics if these criteria are fulfilled. We further outline how static and runtime checks can be employed to guarantee these criteria.

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

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Institutional subscriptions

Similar content being viewed by others

References

  1. Amelunxen, C., Klar, F., Königs, A., Rötschke, T., Schürr, A.: Metamodel-based tool integration with MOFLON. In: ICSE ’08: Proceedings of the 30th ICSE, pp. 807–810. ACM, New York (2008)

  2. Bapodra, M., Heckel, R.: From graph transformations to differential equations. In: Graph and Model Transformation. EC-EASST (2010)

  3. Becker, B., Giese, H.: Incremental verification of inductive invariants for the run-time evolution of self-adaptive software-intensive systems. In: Proceedings of 23rd IEEE/ACM International Conference on Automated Software Engineering—Workshops, pp. 33–40. IEEE Computer Society Press (2008)

  4. Biermann, E., Ermel, C., Taentzer, G.: Precise semantics of EMF model transformations by graph transformation. In: Czarnecki, K., Ober, I., Bruel, J.-M., Uhl, A., Völter, M. (eds) Proceedings of the 11th International Conference on Model Driven Engineering Languages and Systems, Toulouse, France, September 28–October 3, 2008. LNCS, pp. 53–67 (2008)

  5. Burmester S., Giese H., Niere J., Tichy M., Wadsack J.P., Wagner R., Wendehals L., Zündorf A.: Tool integration at the meta-model level within the fujaba tool suite. Int. J. Softw. Tools Technol. Transf. (STTT) 6(3), 203–218 (2004)

    Article  Google Scholar 

  6. de Lara, J., Vangheluwe, H.: AToM3 as a Meta-CASE Environment (DFD to SC). In: Proceedings of the 4th International Conference on Enterprise Information Systems (2002)

  7. Ehrig, H., Ehrig, K., Prange, U., Taentzer, G.: Fundamentals of algebraic graph transformation. EATCS Monographs in Theoretical Computer Science. Springer, Berlin (2006)

  8. Ehrig, H., Ermel, C., Hermann, F.: On the relationship of model transformations based on triple and plain graph grammars. In: GRaMoT’08: Proceedings of the third International Workshop on Graph and Model Transformations, pp. 9–16. ACM, New York (2008)

  9. Ehrig, H., Ermel, C., Hermann, F., Prange, U.: On-the-fly construction, correctness and completeness of model transformations based on triple graph grammars. In: Proceedings Models 2009 Model Driven Engineering Languages and Systems. LNCS, vol. 5795/2009, pp. 241–255. Springer Berlin (2009)

  10. Ehrig, H., Prange, U.: Formal analysis of model transformations based on triple graph rules with kernels. In: ICGT’08: Proceedings of the 4th International Conference on Graph Transformation, pp. 178–193. Springer, Berlin (2008)

  11. Fischer, T., Niere, J., Torunski, L., Zündorf, A.: Story Diagrams: a new graph rewrite language based on the unified modeling language and java. In: TAGT’98: Selected papers from the 6th International Workshop on Theory and Application of Graph Transformations. Lecture Notes in Computer Science (LNCS), vol. 1764/2000, pp. 296–309. Springer, London, 16–20 November 2000

  12. Giese, H., Glesner, S., Leitner, J., Schäfer, W., Wagner, R.: Towards verified model transformations. In: Hearnden, D., Süß, J., Baudry, B., Rapin, N. (eds.) Proceedings of the 3rd International Workshop on Model Development, Validation and Verification (MoDeVa) Genova, Italy, pp. 78–93. Le Commissariat à l’Energie Atomique—CEA, (2006)

  13. Giese, H., Hildebrandt, S.: Incremental model synchronization for multiple updates. In: Proceedings of the 3rd International Workshop on Graph and Model Transformations, May 12, 2008, Leipzig, Germany, volume Proceedings of GraMoT’08, May 12, 2008, Leipzig, Germany. ACM Press (2008)

  14. Giese, H., Hildebrandt, S.: Efficient model synchronization of large-scale models. Technical Report 28, Hasso Plattner Institute at the University of Potsdam (2009)

  15. Giese, H., Hildebrandt, S., Lambers, L.: Toward bridging the gap between formal semantics and implementation of triple graph grammars. Technical Report 37, Hasso Plattner Institute at the University of Potsdam (2010)

  16. Giese, H., Hildebrandt, S., Lambers, L.: Toward bridging the gap between formal semantics and implementation of triple graph grammars. In: Proceedings of MoDeVVa 2010, Models Workshop on Model-Driven Engineering, Verification and Validation, pp. 19–24. IEEE Computer Society (2010)

  17. Giese, H., Hildebrandt, S., Neumann, S., Wätzoldt, S.: Industrial Case Study on the Integration of SysML and AUTOSAR with Triple Graph Grammars. Technical Report 57, Hasso Plattner Institute at the University of Potsdam (2012)

  18. Giese, H., Hildebrandt, S., Seibel, A.: improved flexibility and scalability by interpreting story diagrams. In: Magaria, T., Padberg, J., Taentzer, G. (eds.) Proceedings of the Eighth International Workshop on Graph Transformation and Visual Modeling Techniques (GT-VMT 2009), vol. 18. Electronic Communications of the EASST (2009)

  19. Giese, H., Neumann, S., Hildebrandt, S.: Model synchronization at work: keeping SysML and AUTOSAR models consistent. In: Engels, G., Lewerentz, C., Schäfer, W., Schürr, A., Westfechtel, B. (eds.) Graph Transformations and Model Driven Enginering—Essays Dedicated to Manfred Nagl on the Occasion of his 65th Birthday. Lecture Notes in Computer Science, vol. 5765, pp. 555–579. Springer, Berlin (2010)

  20. Giese, H., Wagner, R.: From model transformation to incremental bidirectional model synchronization. Softw. Syst. Model. (SoSyM) 8(1) (2009)

  21. Greenyer J., Kindler E.: Comparing relational model transformation technologies: implementing query/view/transformation with triple graph grammars. Softw. Syst. Model. 9(1), 21–46 (2010)

    Article  Google Scholar 

  22. Hermann, F., Ehrig, H., Golas, U., Orejas, F.: Efficient analysis and execution of correct and complete model transformations based on triple graph grammars. In: Proceedings of the First International Workshop on Model-Driven Interoperability, MDI ’10, pp. 22–31. ACM, New York (2010)

  23. Hermann, F., Ehrig, H., Orejas, F., Golas, U.: Formal analysis of functional behaviour for model transformations based on triple graph grammars. In: Ehrig, H., Rensink, A., Rozenberg, G., Schrr, A. (eds.) Graph Transformations. Lecture Notes in Computer Science, vol. 6372, pp. 155–170. Springer Berlin (2010)

  24. ITU International Telecommunication Union. ITU-T Recommendation Z.100: Specification and Description Language (SDL) (2002)

  25. Jouault, F., Kurtev, I.: Transforming models with ATL. In: Satellite Events at the MoDELS 2005 Conference. LNCS, vol. 3844, pp. 128–138. Springer, Berlin (2006)

  26. Kindler, E., Rubin, V., Wagner, R.: An adaptable TGG interpreter for in-memory model transformation. In: Schürr, A., Zündorf, A. (eds.) Proceedings of the 2nd International Fujaba Days 2004, Darmstadt, Germany, vol. tr-ri-04-253 of Technical Report, pp. 35–38. University of Paderborn (2004)

  27. Klar, F., Lauder, M., Königs, A., Schürr, A.: Extended triple graph grammars with efficient and compatible graph translators. In: Engels, G., Lewerentz, C., Schäfer, W., Schürr, A., Westfechtel, B. (eds.) Graph Transformations and Model-Driven Engineering. Lecture Notes in Computer Science, vol. 5765, pp. 141–174. Springer, Berlin (2010)

  28. Küster J.: Definition and validation of model transformations. Softw. Syst. Model. 5(3), 233–259 (2006)

    Article  Google Scholar 

  29. Lambers, L., Ehrig, H., Prange, U., Orejas, F.: Embedding and confluence of graph transformations with negative application conditions. In: Ehrig, H., Heckel, R., Rozenberg, G., Taentzer, G. (eds.) Proceedings of International Conference on Graph Transformation (ICGT’08), LNCS, vol. 5214, pp. 162–177. Springer, Heidelberg (2008)

  30. Lambers, L.: Certifying Rule-based models using graph transformation. PhD thesis, Technische Universität Berlin (2010)

  31. Lambers, L., Hildebrandt, S., Giese, H., Orejas, F.: Attribute handling for bidirectional model transformations: the triple graph grammar case. In: Proceedings of First International Workshop on Bidirectional Transformations. EC-EASST, (2012, to appear)

  32. Mens, T., Van Der Straeten, R., D’Hondt, M.: Detecting and resolving model inconsistencies using transformation dependency analysis. In: Nierstrasz, O., Whittle, J., Harel, D., Reggio, G. (eds.) Model Driven Engineering Languages and Systems. Lecture Notes in Computer Science, vol. 4199, pp. 200–214. Springer, Berlin (2006)

  33. Object Management Group. MOF 2.0 QVT 1.0 Specification (2008)

  34. Orejas, F., Guerra, E., de Lara, J., Ehrig, H.: Correctness, completeness and termination of pattern-based model-to-model transformation. In: Kurz, A., Lenisa, M., Tarlecki, A. (eds.) CALCO. LNCS, vol. 5728, pp. 383–397. Springer, Berlin (2009)

  35. Orejas, F., Lambers, L.: Delaying constraint solving in symbolic graph transformation. In: Proceedings of International Conference on Graph Transformation (ICGT’10), vol. 6372, pp. 43–58 (2010)

  36. Schäfer, W., Wagner, R., Gausemeier, J., Eckes, R.: An Engineer’s Workstation to support integrated development of flexible production control systems. In: Ehrig, H., Damm, W., Desel, J., Grosse-Rhode M., Reif, W., Schnieder, E., Westkämper, E. (eds.) Integration of Software Specification Techniques for Applications in Engineering. Lecture Notes in Computer Science (LNCS), vol. 3147, pp. 48–68. Springer, Berlin (2004)

  37. Schürr, A.: Specification of graph translators with triple graph grammars. In: Mayr, E.W., Schmidt, G., Tinhofer, G. (eds.) Proceedings of the 20th International Workshop on Graph-Theoretic Concepts in Computer Science. LNCS, vol. 903, pp. 151–163. Spinger, Herrsching (1994)

  38. Schürr, A., Klar, F.: 15 Years of triple graph grammars: research challenges, new contributions, open problems. In: 4th International Conference of Graph Transformation, ICGT 2008, Leicester, United Kingdom, September 7–13, 2008. LNCS, vol. 5214, pp. 411–425. Springer, Berlin (2008)

  39. Sendall, S., Kozaczynski, W.: Model transformation: the heart and soul of model-driven software development. IEEE Software, pp. 42–45 (2003)

  40. Stevens P.: Bidirectional model transformations in QVT: semantic issues and open questions. Softw. Syst. Model. 9(1), 7–20 (2010)

    Article  Google Scholar 

  41. Taentzer, G., Ermel, C., Rudolf, M.: The AGG-approach: language and tool environment. In: Ehrig, H., Engels, G., Kreowski, H.-J., Rozenberg, G. (eds.) Handbook of graph grammars and computing by graph transformation, vol. 2: Applications, Languages and Tools, pp. 551–603. World Scientific, Singapore (1999)

  42. Vogel, T., Neumann, S., Hildebrandt, S., Giese, H., Becker, B.: Incremental model synchronization for efficient run-time monitoring. In: Ghosh, S. (ed.) Models in Software Engineering, Workshops and Symposia at MODELS 2009, Denver, CO, USA, October 4–9, 2009, Reports and Revised Selected Papers. LNCS, vol. 6002, pp. 124–139. Springer, Berlin (2010)

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Stephan Hildebrandt.

Additional information

Communicated by Dr. Andy Schürr and Arend Rensink.

This work was developed in the course of the project—Correct Model Transformations—Hasso Plattner Institut, Universität Potsdam and was published on its behalf and funded by the Deutsche Forschungsgemeinschaft. http://www.hpi.uni-potsdam.de/giese/projekte/kormoran.html?L=1.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Giese, H., Hildebrandt, S. & Lambers, L. Bridging the gap between formal semantics and implementation of triple graph grammars. Softw Syst Model 13, 273–299 (2014). https://doi.org/10.1007/s10270-012-0247-y

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10270-012-0247-y

Keywords

Navigation