Advertisement

Leveraging Incremental Pattern Matching Techniques for Model Synchronisation

  • Erhan Leblebici
  • Anthony Anjorin
  • Lars Fritsche
  • Gergely Varró
  • Andy Schürr
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 10373)

Abstract

Triple Graph Grammars (TGGs) are a declarative, rule-based approach to model synchronisation with numerous implementations. TGG-based approaches derive typically a set of operational graph transformations from direction-agnostic TGG rules to realise model synchronisation. In addition to these derived graph transformations, however, further runtime analyses are required to calculate the consequences of model changes in a synchronisation run. This part of TGG-based synchronisation is currently manually implemented, which not only increases implementation and tool maintenance effort, but also requires tool or at least approach-specific proofs for correctness. In this paper, therefore, we discuss how incremental graph pattern matchers can be leveraged to simplify the runtime steps of TGG-based synchronisation. We propose to outsource the task of calculating the consequences of model changes to an underlying incremental pattern matcher. As a result, a TGG-based synchroniser is reduced to a component reacting solely to appearing and disappearing matches. This abstracts high-level synchronisation goals from low-level details of handling model changes, providing a viable and unifying foundation for a new generation of TGG tools.

Notes

Acknowledgement

This work has been funded by the German Federal Ministry of Education and Research within the Software Campus project GraTraM at TU Darmstadt, funding code 01IS12054.

References

  1. 1.
    Anjorin, A., Leblebici, E., Schürr, A., Taentzer, G.: A static analysis of non-confluent triple graph grammars for efficient model transformation. In: Giese, H., König, B. (eds.) ICGT 2014. LNCS, vol. 8571, pp. 130–145. Springer, Cham (2014). doi: 10.1007/978-3-319-09108-2_9 Google Scholar
  2. 2.
    Bergmann, G., Ráth, I., Varró, G., Varró, D.: Change-driven model transformations - change (in) the rule to rule the change. SoSym 11(3), 431–461 (2012)Google Scholar
  3. 3.
    Cicchetti, A., Ruscio, D., Eramo, R., Pierantonio, A.: JTL: a bidirectional and change propagating transformation language. In: Malloy, B., Staab, S., Brand, M. (eds.) SLE 2010. LNCS, vol. 6563, pp. 183–202. Springer, Heidelberg (2011). doi: 10.1007/978-3-642-19440-5_11 CrossRefGoogle Scholar
  4. 4.
    Czarnecki, K., Foster, J.N., Hu, Z., Lämmel, R., Schürr, A., Terwilliger, J.F.: Bidirectional transformations: a cross-discipline perspective. In: Paige, R.F. (ed.) ICMT 2009. LNCS, vol. 5563, pp. 260–283. Springer, Heidelberg (2009). doi: 10.1007/978-3-642-02408-5_19 CrossRefGoogle Scholar
  5. 5.
    Ehrig, H., Ehrig, K., Prange, U., Taentzer, G.: Fundamentals of Algebraic Graph Transformation. Monographs in Theoretical Computer Science. An EATCS Series. Springer, Heidelberg (2006)zbMATHGoogle Scholar
  6. 6.
    Forgy, C.: Rete: a fast algorithm for the many patterns/many objects match problem. Artif. Intell. 19(1), 17–37 (1982)CrossRefGoogle Scholar
  7. 7.
    Giese, H., Hildebrandt, S.: Efficient model synchronization of large-scale models. Technical report, HPI at the University of Potsdam (2009)Google Scholar
  8. 8.
    Greenyer, J., Pook, S., Rieke, J.: Preventing information loss in incremental model synchronization by reusing elements. In: France, R.B., Kuester, J.M., Bordbar, B., Paige, R.F. (eds.) ECMFA 2011. LNCS, vol. 6698, pp. 144–159. Springer, Heidelberg (2011). doi: 10.1007/978-3-642-21470-7_11 CrossRefGoogle Scholar
  9. 9.
    Hermann, F., Ehrig, H., Golas, U., Orejas, F.: Efficient analysis and execution of correct and complete model transformations based on triple graph grammars. In: Bézivin, J., Soley, R.M., Vallecillo, A. (eds.) MDI 2010, pp. 22–31. ACM (2010)Google Scholar
  10. 10.
    Hermann, F., Ehrig, H., Orejas, F., Czarnecki, K., Diskin, Z., Xiong, Y.: Correctness of model synchronization based on triple graph grammars. In: Whittle, J., Clark, T., Kühne, T. (eds.) MODELS 2011. LNCS, vol. 6981, pp. 668–682. Springer, Heidelberg (2011). doi: 10.1007/978-3-642-24485-8_49 CrossRefGoogle Scholar
  11. 11.
    Klassen, L., Wagner, R.: EMorF - a tool for model transformations. ECEASST 54 (2012)Google Scholar
  12. 12.
    Ko, H.-S., Zan, T., Hu, Z.: BiGUL: a formally verified core language for putback-based bidirectional programming. In: PPEPM 2016, pp. 61–72. ACM, New York (2016)Google Scholar
  13. 13.
    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). doi: 10.1007/978-3-642-33654-6_27 CrossRefGoogle Scholar
  14. 14.
    Leblebici, E., Anjorin, A., Schürr, A., Hildebrandt, S., Rieke, J., Greenyer, J.: A comparison of incremental triple graph grammar tools. ECEASST 67 (2014)Google Scholar
  15. 15.
    Orejas, F., Pino, E.: Correctness of incremental model synchronization with triple graph grammars. In: Ruscio, D., Varró, D. (eds.) ICMT 2014. LNCS, vol. 8568, pp. 74–90. Springer, Cham (2014). doi: 10.1007/978-3-319-08789-4_6 Google Scholar
  16. 16.
    Schürr, A.: Specification of graph translators with triple graph grammars. In: Mayr, E.W., Schmidt, G., Tinhofer, G. (eds.) WG 1994. LNCS, vol. 903, pp. 151–163. Springer, Heidelberg (1995). doi: 10.1007/3-540-59071-4_45 CrossRefGoogle Scholar
  17. 17.
    Ujhelyi, Z., Bergmann, G., Hegedüs, Á., Horváth, Á., Izsó, B., Ráth, I., Szatmári, Z., Varró, D.: EMF-IncQuery: an integrated development environment for live model queries. Sci. Comput. Program. 98(1), 80–99 (2015)CrossRefGoogle Scholar
  18. 18.
    Varró, G., Deckwerth, F.: A rete network construction algorithm for incremental pattern matching. In: Duddy, K., Kappel, G. (eds.) ICMT 2013. LNCS, vol. 7909, pp. 125–140. Springer, Heidelberg (2013). doi: 10.1007/978-3-642-38883-5_13 CrossRefGoogle Scholar

Copyright information

© Springer International Publishing AG 2017

Authors and Affiliations

  • Erhan Leblebici
    • 1
  • Anthony Anjorin
    • 2
  • Lars Fritsche
    • 1
  • Gergely Varró
    • 1
  • Andy Schürr
    • 1
  1. 1.Technische Universität DarmstadtDarmstadtGermany
  2. 2.Universität PaderbornPaderbornGermany

Personalised recommendations