Viatra 3: A Reactive Model Transformation Platform

  • Gábor Bergmann
  • István Dávid
  • Ábel Hegedüs
  • Ákos Horváth
  • István Ráth
  • Zoltán Ujhelyi
  • Dániel Varró
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 9152)

Abstract

Model-driven tools frequently rely on advanced technologies to support model queries, view maintenance, design rule validation, model transformations or design space exploration. Some of these features are initiated explicitly by domain engineers (batch execution) while others are executed automatically when certain trigger events are detected (live execution). Unfortunately, their integration into a complex industrial modeling environment is difficult due to hidden interference and unspecified interaction between different features. In this paper, we present a reactive, event-driven model transformation platform over EMF models, which captures tool features as model queries and transformations, and provides a systematic, well-founded integration between a variety of such tool features. Viatra 3 offers a family of internal DSLs (i.e. dedicated libraries) to specify advanced tool features built on top of existing languages like EMF-IncQuery and Xtend. Its main innovation is a source incremental execution scheme built on the reactive programming paradigm ssupported by an event-driven virtual machine.

Keywords

Event-driven transformation Virtual machine Reactive programming Source incremental transformations 

Notes

Acknowledgements

The authors wish to thank all the contributors of the Viatra 3 and EMF-IncQuery projects, in particular Tamás Szabó.

References

  1. 1.
    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, 80–99 (2015)CrossRefGoogle Scholar
  2. 2.
    Willink, E.D.: An extensible OCL virtual machine and code generator. In: Proceedings of the 12th Workshop on OCL and Textual Modelling, pp. 13–18. ACM (2012)Google Scholar
  3. 3.
    Giese, H., Wagner, R.: From model transformation to incremental bidirectional model synchronization. Softw. Syst. Model. (SoSyM) 8(1), 21–43 (2009)CrossRefGoogle Scholar
  4. 4.
    Abdeen, H., Varró, D., Sahraoui, H., Nagy, A.S., Hegedüs, Á., Horváth, Á., Debreceni, C.: Multi-objective optimization in rule-based design space exploration. In: 29th IEEE/ACM International Conference on Automated Software Engineering (ASE 2014), pp. 289–300. IEEE, Vasteras, Sweden (2014)Google Scholar
  5. 5.
    The Eclipse Project: Eclipse Modeling Framework. Accessed: (2007)Google Scholar
  6. 6.
    Bainomugisha, E., Carreton, A.L., Cutsem, T.V., Mostinckx, S., Meuter, W.D.: A survey on reactive programming. ACM Comput. Surv. 45(4), 52:1–52:34 (2012)MATHGoogle Scholar
  7. 7.
    Bergmann, G., Ráth, I., Varró, G., Varró, D.: Change-driven model transformations. Software and Systems Modeling 11, 431–461 (2012)CrossRefGoogle Scholar
  8. 8.
    Dávid, I., Ráth, I., Varró, D.: Streaming model transformations by complex event processing. In: Dingel, J., Schulte, W., Ramos, I., Abrahão, S., Insfran, E. (eds.) MODELS 2014. LNCS, vol. 8767, pp. 68–83. Springer, Heidelberg (2014) Google Scholar
  9. 9.
    Tisi, M., Martίnez, S., Jouault, F., Cabot, J.: Lazy Execution of Model-to-Model Transformations. In: Whittle, J., Clark, T., Kühne, T. (eds.) MODELS 2011. LNCS, vol. 6981, pp. 32–46. Springer, Heidelberg (2011) CrossRefGoogle Scholar
  10. 10.
    Jouault, F., Tisi, M.: Towards incremental execution of ATL transformations. In: Tratt, L., Gogolla, M. (eds.) ICMT 2010. LNCS, vol. 6142, pp. 123–137. Springer, Heidelberg (2010) CrossRefGoogle Scholar
  11. 11.
    Wagelaar, D., Tisi, M., Cabot, J., Jouault, F.: Towards a general composition semantics for rule-based model transformation. In: Whittle, J., Clark, T., Kühne, T. (eds.) MODELS 2011. LNCS, vol. 6981, pp. 623–637. Springer, Heidelberg (2011) CrossRefGoogle Scholar
  12. 12.
    Syriani, E., Vangheluwe, H., LaShomb, B.: T-core: a framework for custom-built model transformation engines. Softw. Syst. Model. 1–29 (2013)Google Scholar
  13. 13.
    Yie, A., Casallas, R., Deridder, D., Wagelaar, D.: Realizing model transformation chain interoperability. Softw. Syst. Model. 11(1), 55–75 (2012)CrossRefMATHGoogle Scholar
  14. 14.
    Bergmann, G., Horváth, D., Horváth, A.: Applying incremental graph transformation to existing models in relational databases. In: Ehrig, H., Engels, G., Kreowski, H.-J., Rozenberg, G. (eds.) ICGT 2012. LNCS, vol. 7562, pp. 371–385. Springer, Heidelberg (2012) CrossRefGoogle Scholar
  15. 15.
    van Pinxten, J., Basten, T.: Motrusca: interactive model transformation use case repository. In: 7th York Doctor Symposium on Computer Science & Electronics, vol. 57 (2014)Google Scholar

Copyright information

© Springer International Publishing Switzerland 2015

Authors and Affiliations

  • Gábor Bergmann
    • 1
  • István Dávid
    • 3
  • Ábel Hegedüs
    • 2
  • Ákos Horváth
    • 1
    • 2
  • István Ráth
    • 1
    • 2
  • Zoltán Ujhelyi
    • 2
  • Dániel Varró
    • 1
  1. 1.Department of Measurement and Information SystemsBudapest University of Technology and EconomicsBudapestHungary
  2. 2.IncQuery Labs Ltd.BudapestHungary
  3. 3.Modelling, Simulation and Design LabUniversity of AntwerpAntwerpBelgium

Personalised recommendations