Efficient Model Synchronization with View Triple Graph Grammars

  • Anthony Anjorin
  • Sebastian Rose
  • Frederik Deckwerth
  • Andy Schürr
Part of the Lecture Notes in Computer Science book series (LNCS, volume 8569)

Abstract

Model synchronization is a crucial task in the context of Model Driven Engineering. Especially when creating and maintaining multiple suitable abstractions or views of a complex system, a bidirectional transformation is required to keep all views and the corresponding system synchronized by automatically propagating changes in both directions. Triple Graph Grammars (TGGs) are a declarative, rule-based bidirectional transformation language, which can be used to support model synchronization. In practice, most TGG tools restrict the supported class of TGGs for efficiency reasons. These restrictions are, however, seldom intuitive and are often difficult to understand and adhere to, especially for non-experts. View Triple Graph Grammars (VTGGs) are a restricted form of TGGs, which can be highly optimized for efficient view update propagation. We argue that the restrictions posed by VTGGs are explicit and intuitive for users, as they can be adequately motivated based on the main application scenarios for VTGGs. In this paper, we present for the first time a formalization of VTGGs, stating precisely the advantages and limitations of VTGGs as compared to TGGs, and backing our claims with initial runtime measurements from a practical case study.

Keywords

model driven engineering bidirectional model transformation triple graph grammars view triple graph grammars 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Anjorin, A., Varró, G., Schürr, A.: Complex Attribute Manipulation in TGGs with Constraint-Based Programming Techniques. In: BX 2012. ECEASST, vol. 49, pp. 1–15. EASST (2012)Google Scholar
  2. 2.
    Bohannon, A., Foster, J., Pierce, B., Pilkiewicz, A., Schmitt, A.: Boomerang: Resourceful Lenses for String Data. ACM SIGPLAN Notices 43(1), 407–419 (2008)CrossRefGoogle Scholar
  3. 3.
    Bohannon, A., Pierce, B.C., Vaughan, J.A.: Relational Lenses: A Language for Updatable Views. In: PODS 2006, pp. 338–347. ACM (2006)Google Scholar
  4. 4.
    Diskin, Z., Xiong, Y., Czarnecki, K.: From State- to Delta-Based Bidirectional Model Transformations: The Asymmetric Case. JOT 10, 1–25 (2011)CrossRefGoogle Scholar
  5. 5.
    Ehrig, H., Ehrig, K., Ermel, C., Prange, U.: Consistent Integration of Models based on Views of Meta Models. Formal Aspects of Computing 22(3-4), 327–344 (2010)CrossRefMATHGoogle Scholar
  6. 6.
    Ehrig, H., Ehrig, K., Prange, U., Taentzer, G.: Fundamentals of Algebraic Graph Transformation, 1st edn. Springer (2006)Google Scholar
  7. 7.
    Jakob, J., Königs, A., Schürr, A.: Non-Materialized Model View Specification with Triple Graph Grammars. In: Corradini, A., Ehrig, H., Montanari, U., Ribeiro, L., Rozenberg, G. (eds.) ICGT 2006. LNCS, vol. 4178, pp. 321–335. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  8. 8.
    Lauder, M., Anjorin, A., Varró, G., Schürr, A.: Efficient Model Synchronization with Precedence Triple Graph Grammars. In: Ehrig, H., Engels, G., Kreowski, H.-J., Rozenberg, G. (eds.) ICGT 2012. LNCS, vol. 7562, pp. 401–415. Springer, Heidelberg (2012)CrossRefGoogle Scholar
  9. 9.
    Nentwich, C., Capra, L., Emmerich, W., Finkelstein, A.: Xlinkit: A Consistency Checking and Smart Link Generation Service. ACM Transactions on Internet Technology 2(2), 151–185 (2002)CrossRefGoogle Scholar
  10. 10.
    Nuseibeh, B., Kramer, J., Finkelstein, A.: ViewPoints: Meaningful Relationships are Difficult!. In: Clarke, L.A., Dillon, L., Tichy, F.W. (eds.) ICSE 2003, pp. 676–683. IEEE (2003)Google Scholar
  11. 11.
    Ranger, U., Gruber, K., Holze, M.: Defining Abstract Graph Views as Module Interfaces. In: Schürr, A., Nagl, M., Zündorf, A. (eds.) AGTIVE 2007. LNCS, vol. 5088, pp. 120–135. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  12. 12.
    Yokoyama, T., Axelsen, H., Glück, R.: Principles of a Reversible Programming Language. In: Ramírez, A., Bilardi, G., Gschwind, M. (eds.) CF 2008, pp. 43–54. ACM (2008)Google Scholar

Copyright information

© Springer International Publishing Switzerland 2014

Authors and Affiliations

  • Anthony Anjorin
    • 1
  • Sebastian Rose
    • 1
  • Frederik Deckwerth
    • 1
  • Andy Schürr
    • 1
  1. 1.Real-Time Systems Lab.Technische Universität DarmstadtDarmstadtGermany

Personalised recommendations