Advertisement

Henshin: A Usability-Focused Framework for EMF Model Transformation Development

  • Daniel Strüber
  • Kristopher Born
  • Kanwal Daud Gill
  • Raffaela Groner
  • Timo Kehrer
  • Manuel Ohrndorf
  • Matthias Tichy
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 10373)

Abstract

Improved usability of tools is a fundamental prerequisite for a more widespread industrial adoption of Model-Driven Engineering. We present the current state of Henshin, a model transformation language and framework based on algebraic graph transformations. Our demonstration focuses on Henshin’s novel usability-oriented features, specifically: (i) a textual syntax, complementing the existing graphical one by improved support for rapid transformation development, (ii) extended static validation, including checks for correct integration with general-purpose-language code, (iii) advanced refactoring support, in particular, for splitting large transformation programs, (iv) editing utilities for facilitating recurring tasks in model transformation development. We demonstrate the usefulness of these features using a running example.

Notes

Acknowledgement

We thank the reviewers for their valuable and constructive suggestions. This research was partially supported by the research project Visual Privacy Management in User Centric Open Environments (supported by the EU’s Horizon 2020 programme, Proposal number: 653642). This work was partially supported by the DFG (German Research Foundation) (grant numbers TI 803/2-2 and TI 803/4-1).

References

  1. 1.
    Sendall, S., Kozaczynski, W.: Model transformation: the heart and soul of model-driven software development. IEEE Softw. 20(5), 42–45 (2003)CrossRefGoogle Scholar
  2. 2.
    Whittle, J., Hutchinson, J., Rouncefield, M., Burden, H., Heldal, R.: Industrial adoption of model-driven engineering: are the tools really the problem? In: Moreira, A., Schätz, B., Gray, J., Vallecillo, A., Clarke, P. (eds.) MODELS 2013. LNCS, vol. 8107, pp. 1–17. Springer, Heidelberg (2013). doi: 10.1007/978-3-642-41533-3_1 CrossRefGoogle Scholar
  3. 3.
    Liebel, G., Marko, N., Tichy, M., Leitner, A., Hansson, J.: Assessing the state-of-practice of model-based engineering in the embedded systems domain. In: Dingel, J., Schulte, W., Ramos, I., Abrahão, S., Insfran, E. (eds.) MODELS 2014. LNCS, vol. 8767, pp. 166–182. Springer, Cham (2014). doi: 10.1007/978-3-319-11653-2_11 Google Scholar
  4. 4.
    Arendt, T., Biermann, E., Jurack, S., Krause, C., Taentzer, G.: Henshin: advanced concepts and tools for in-place EMF model transformations. In: Petriu, D.C., Rouquette, N., Haugen, Ø. (eds.) MODELS 2010. LNCS, vol. 6394, pp. 121–135. Springer, Heidelberg (2010). doi: 10.1007/978-3-642-16145-2_9 CrossRefGoogle Scholar
  5. 5.
    Strüber, D., Kehrer, T., Arendt, T., Pietsch, C., Reuling, D.: Scalability of model transformations: position paper and benchmark set. In: Workshop on Scalable Model Driven Engineering (BigMDE), pp. 21–30 (2016)Google Scholar
  6. 6.
    Varró, G., Schurr, A., Varró, D.: Benchmarking for graph transformation. In: Symposion on Visual Languages and Human-Centric Computing, pp. 79–88. IEEE (2005)Google Scholar
  7. 7.
    Voelter, M., Szabó, T., Lisson, S., Kolb, B., Erdweg, S., Berger, T.: Efficient development of consistent projectional editors using grammar cells. In: International Conference on Software Language Engineering (SLE), pp. 28–40 (2016)Google Scholar
  8. 8.
    Maro, S., Steghöfer, J., Anjorin, A., Tichy, M., Gelin, L.: On integrating graphical and textual editors for a UML profile based domain specific language: an industrial experience. In: International Conference on Software Language Engineering (SLE), pp. 1–12 (2015)Google Scholar
  9. 9.
    Biermann, E., Ermel, C., Taentzer, G.: Formal foundation of consistent EMF model transformations by algebraic graph transformation. Softw. Syst. Model. 11(2), 227–250 (2012)CrossRefGoogle Scholar
  10. 10.
    Strüber, D., Plöger, J., Acreţoaie, V.: Clone detection for graph-based model transformation languages. In: Van Gorp, P., Engels, G. (eds.) ICMT 2016. LNCS, vol. 9765, pp. 191–206. Springer, Cham (2016). doi: 10.1007/978-3-319-42064-6_13 CrossRefGoogle Scholar
  11. 11.
    Strüber, D., Rubin, J., Arendt, T., Chechik, M., Taentzer, G., Plöger, J.: RuleMerger: automatic construction of variability-based model transformation rules. In: Stevens, P., Wąsowski, A. (eds.) FASE 2016. LNCS, vol. 9633, pp. 122–140. Springer, Heidelberg (2016). doi: 10.1007/978-3-662-49665-7_8 CrossRefGoogle Scholar
  12. 12.
    Strüber, D., Schulz, S.: A tool environment for managing families of model transformation rules. In: Echahed, R., Minas, M. (eds.) ICGT 2016. LNCS, vol. 9761, pp. 89–101. Springer, Cham (2016). doi: 10.1007/978-3-319-40530-8_6 CrossRefGoogle Scholar
  13. 13.
    Kappel, G., Langer, P., Retschitzegger, W., Schwinger, W., Wimmer, M.: Model transformation by-example: a survey of the first wave. In: Düsterhöft, A., Klettke, M., Schewe, K.-D. (eds.) Conceptual Modelling and Its Theoretical Foundations. LNCS, vol. 7260, pp. 197–215. Springer, Heidelberg (2012). doi: 10.1007/978-3-642-28279-9_15 CrossRefGoogle Scholar
  14. 14.
    Acreţoaie, V., Störrle, H., Strüber, D.: VMTL: a language for end-user model transformation. Softw. Syst. Model. 1–29 (2016)Google Scholar
  15. 15.
    Panach, J.I., España, S., Moreno, A.M., Pastor, Ó.: Dealing with usability in model transformation technologies. In: Li, Q., Spaccapietra, S., Yu, E., Olivé, A. (eds.) ER 2008. LNCS, vol. 5231, pp. 498–511. Springer, Heidelberg (2008). doi: 10.1007/978-3-540-87877-3_36 CrossRefGoogle Scholar
  16. 16.
    Ammar, L.B., Trabelsi, A., Mahfoudhi, A.: Incorporating usability requirements into model transformation technologies. Requir. Eng. 20(4), 465–479 (2015)CrossRefGoogle Scholar
  17. 17.
    Varró, D., Balogh, A.: The model transformation language of the VIATRA2 framework. Sci. Comput. Program. 68(3), 214–234 (2007)MathSciNetCrossRefzbMATHGoogle Scholar
  18. 18.
    Geiß, R., Batz, G.V., Grund, D., Hack, S., Szalkowski, A.: GrGen: a fast SPO-based graph rewriting tool. In: Corradini, A., Ehrig, H., Montanari, U., Ribeiro, L., Rozenberg, G. (eds.) ICGT 2006. LNCS, vol. 4178, pp. 383–397. Springer, Heidelberg (2006). doi: 10.1007/11841883_27 CrossRefGoogle Scholar
  19. 19.
    Schürr, A., Winter, A.J., Zündorf, A.: The PROGRES Approach: Language and Environment. Handbook of Graph Grammars and Computing by Graph Transformation. World Scientific Publishing Co. Inc., River Edge (1999)Google Scholar
  20. 20.
    Leblebici, E., Anjorin, A., Schürr, A.: Developing eMoflon with eMoflon. In: Ruscio, D., Varró, D. (eds.) ICMT 2014. LNCS, vol. 8568, pp. 138–145. Springer, Cham (2014). doi: 10.1007/978-3-319-08789-4_10 Google Scholar
  21. 21.
    Rensink, A., Schmidt, Á., Varró, D.: Model checking graph transformations: a comparison of two approaches. In: Ehrig, H., Engels, G., Parisi-Presicce, F., Rozenberg, G. (eds.) ICGT 2004. LNCS, vol. 3256, pp. 226–241. Springer, Heidelberg (2004). doi: 10.1007/978-3-540-30203-2_17 CrossRefGoogle Scholar
  22. 22.
    Cabot, J., Clarisó, R., Guerra, E., De Lara, J.: Verification and validation of declarative model-to-model transformations through invariants. J. Syst. Softw. 83(2), 283–302 (2010)CrossRefGoogle Scholar
  23. 23.
    Strüber, D., Selter, M., Taentzer, G.: Tool support for clustering large meta-models. In: Workshop on Scalability in Model Driven Engineering (BigMDE), pp. 7:1–7:4 (2013)Google Scholar
  24. 24.
    Rentschler, A., Werle, D., Noorshams, Q., Happe, L., Reussner, R.H.: Remodularizing legacy model transformations with automatic clustering techniques. In: Workshop on Analysis of Model Transformations (AMT), pp. 4–13 (2014)Google Scholar
  25. 25.
    Baki, I., Sahraoui, H.: Multi-step learning and adaptive search for learning complex model transformations from examples. ACM Trans. Softw. Eng. Methodol. 25(3), 20:1–20:37 (2016)CrossRefGoogle Scholar
  26. 26.
    Buchmann, T., Westfechtel, B., Winetzhammer, S.: The added value of programmed graph transformations – a case study from software configuration management. In: Schürr, A., Varró, D., Varró, G. (eds.) AGTIVE 2011. LNCS, vol. 7233, pp. 198–209. Springer, Heidelberg (2012). doi: 10.1007/978-3-642-34176-2_17 CrossRefGoogle Scholar

Copyright information

© Springer International Publishing AG 2017

Authors and Affiliations

  • Daniel Strüber
    • 1
  • Kristopher Born
    • 2
  • Kanwal Daud Gill
    • 1
  • Raffaela Groner
    • 3
  • Timo Kehrer
    • 4
  • Manuel Ohrndorf
    • 5
  • Matthias Tichy
    • 3
  1. 1.Universität Koblenz-LandauKoblenzGermany
  2. 2.Philipps-Universität MarburgMarburgGermany
  3. 3.Universität UlmUlmGermany
  4. 4.Humboldt-Universität zu BerlinBerlinGermany
  5. 5.Universität SiegenSiegenGermany

Personalised recommendations