VMTL: a language for end-user model transformation

  • Vlad Acreţoaie
  • Harald Störrle
  • Daniel Strüber
Regular Paper

Abstract

Model transformation is a key enabling technology of Model-Driven Engineering (MDE). Existing model transformation languages are shaped by and for MDE practitioners—a user group with needs and capabilities which are not necessarily characteristic of modelers in general. Consequently, these languages are largely ill-equipped for adoption by end-user modelers in areas such as requirements engineering, business process management, or enterprise architecture. We aim to introduce a model transformation language addressing the skills and requirements of end-user modelers. With this contribution, we hope to broaden the application scope of model transformation and MDE technology in general. We discuss the profile of end-user modelers and propose a set of design guidelines for model transformation languages addressing them. We then introduce Visual Model Transformation Language (VMTL) following these guidelines. VMTL draws on our previous work on the usability-oriented Visual Model Query Language. We implement VMTL using the Henshin model transformation engine, and empirically investigate its learnability via two user experiments and a think-aloud protocol analysis. Our experiments, although conducted on computer science students exhibiting only some of the characteristics of end-user modelers, show that VMTL compares favorably in terms of learnability with two state-of the-art model transformation languages: Epsilon and Henshin. Our think-aloud protocol analysis confirms many of the design decisions adopted for VMTL, while also indicating possible improvements.

Keywords

End-user modelers Transparent model transformation VMTL Henshin Epsilon Learnability Experiment Think-aloud protocol 

References

  1. 1.
    Arendt, T.: Quality Assurance of Software Models. Ph.D. thesis, Philipps-Universität Marburg (2014)Google Scholar
  2. 2.
    Acretoaie, V., Störrle, H., Strüber, D.: Transparent model transformation: turning your favourite model editor into a transformation tool. In: Theory and Practice of Model Transformation, LNCS, vol. 9152, pp. 121–130. Springer, Berlin (2015)Google Scholar
  3. 3.
    Acretoaie, V., Störrle, H.: Hypersonic: Model Analysis and Checking in the Cloud. In: Proceedings of 2nd Workshop on Scalability in Model Driven Engineering. CEUR Workshop Proceedings, vol. 1206, pp. 6–13 (2014)Google Scholar
  4. 4.
    Acretoaie, V., Störrle, H.: MQ-2: a tool for prolog-based model querying. In: Joint Proceedings of Co-located Events at the 8th European Conference on Modelling Foundations and Applications (ECMFA’12), pp. 328–331. Technical University of Denmark, Kgs. Lyngby, DK (2012)Google Scholar
  5. 5.
    Arendt, T., Biermann, E., Jurack, S., Krause, C., Taentzer, G.: Henshin: Advanced Concepts and Tools for In-Place EMF Model Transformations. Model Driven Engineering Languages and Systems. LNCS, vpl. 6394, pp. 121–135. Springer, Berlin (2010)Google Scholar
  6. 6.
    Avazpour, I., Grundy, J., Grunske, L.: Specifying model transformations by direct manipulation using concrete visual notations and interactive recommendations. J. Visual Lang. Comput. 28, 195–211 (2015)CrossRefGoogle Scholar
  7. 7.
    Awad, A., Sakr, S.: On efficient processing of BPMN-Q queries. Comput. Ind. 63(9), 867–881 (2012)CrossRefGoogle Scholar
  8. 8.
    Baar, T., Whittle, J.: On the usage of concrete syntax in model transformation rules. In: Perspectives of Systems Informatics. LNCS, vol. 4378, pp. 84–97. Springer, Berlin (2007)Google Scholar
  9. 9.
    Balogh, Z., Varró, D.: Model transformation by example using inductive logic programming. Softw. Syst. Model. 8(3), 347–364 (2009)CrossRefGoogle Scholar
  10. 10.
    Batory, D., Azanza, M.: Teaching model-driven engineering from a relational database perspective. Softw. Syst. Model. pp. 1–25 (2015)Google Scholar
  11. 11.
    Beeri, C., Eyal, A., Kamenkovich, S., Milo, T.: Querying business processes with BP-QL. Inf. Syst. 33(6), 477–507 (2008)CrossRefGoogle Scholar
  12. 12.
    Bézivin, J., Büttner, F., Gogolla, M., Jouault, F., Kurtev, I., Lindow, A.: Model transformations? Transformation models! In: Model-driven engineering languages and systems, LNCS, vol. 4199, pp. 440–453. Springer, Berlin (2006)Google Scholar
  13. 13.
    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
  14. 14.
    Bollati, V.A., Vara, J.M., Jiménez, Á., Marcos, E.: Applying MDE to the (semi-)automatic development of model transformations. Inf. Softw. Technol. 55(4), 699–718 (2013)CrossRefGoogle Scholar
  15. 15.
    Cohen, J.: Statistical Power Analysis for the Behavioral Sciences, 2 edn. Routledge (1988)Google Scholar
  16. 16.
    Czarnecki, K., Helsen, S.: Feature-based survey of model transformation approaches. IBM Syst. J. 45(3), 621–645 (2006)CrossRefGoogle Scholar
  17. 17.
    Ehrig, H., Ehrig, K., Prange, U., Taentzer, G.: Fundamentals of Algebraic Graph Transformation. Springer, Berlin (2006)MATHGoogle Scholar
  18. 18.
    Gopher, D., Braune, R.: On the psychophysics of workload: Why bother with subjective measures? Hum. Factors 26(5), 519–532 (1984)Google Scholar
  19. 19.
    Grønmo, R., Møller-Pedersen, B., Olsen, G.K.: Comparison of Three Model Transformation Languages. Model Driven Architecture—Foundations and Applications. LNCS, 5562, pp. 2–17. Springer, Berlin (2009)Google Scholar
  20. 20.
    Grossman, T., Fitzmaurice, G., Attar, R.: A survey of software learnability: metrics, methodologies and guidelines. In: Proceedings of SIGCHI Conference on Human Factors in Computing Systems (CHI’09), pp. 649–658. ACM, New York (2009)Google Scholar
  21. 21.
    Guerra, E., de Lara, J., Kolovos, D.S., Paige, R.F., dos Santos, O.M.: Engineering model transformations with transML. Softw. Syst. Model. 12(3), 555–577 (2013)CrossRefGoogle Scholar
  22. 22.
    Internet Engineering Task Force (IETF): IETF RFC 6749: The OAuth 2.0 Authorization Framework. http://tools.ietf.org/html/rfc6749 (2012)
  23. 23.
    Jones, B., Kenward, M.G.: Design and Analysis of Cross-Over Trials, third edn. Chapman and Hall/CRC, London (2014)Google Scholar
  24. 24.
    Jouault, F., Allilaire, F., Bézivin, J., Kurtev, I.: ATL: a model transformation tool. Sci. Comput. Program. 72(1–2), 31–39 (2008)MathSciNetCrossRefMATHGoogle Scholar
  25. 25.
    Kalnins, A., Barzdins, J., Celms, E.: Model transformation language MOLA. In: Model Driven Architecture. LNCS, vol. 3599, pp. 62–76. Springer, Berlin (2005)Google Scholar
  26. 26.
    Kent, S.: Constraint diagrams: visualizing invariants in object-oriented models. In: Proceedings of 12th ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA’97), pp. 327–341. ACM (1997)Google Scholar
  27. 27.
    Kessentini, M., Sahraoui, H., Boukadoum, M., Omar, O.B.: Search-based model transformation by example. Softw. Syst. Model. 11(2), 209–226 (2012)CrossRefGoogle Scholar
  28. 28.
    Kolovos, D.S., Paige, R.F., Polack, F.A.: The Epsilon object language (EOL). In: Model Driven Architecture—Foundations and Applications. LNCS, vol. 4066, pp. 128–142. Springer, Berlin (2006)Google Scholar
  29. 29.
    Kühne, T., Mezei, G., Syriani, E., Vangheluwe, H., Wimmer, M.: Explicit transformation modeling. In: Models in Software Engineering, LNCS, vol. 6002, pp. 240–255. Springer, Berlin (2010)Google Scholar
  30. 30.
    Langer, P., Wimmer, M., Kappel, G.: Model-to-model transformations by demonstration. In: Theory and Practice of Model Transformations. LNCS, vol. 6142, pp. 153–167. Springer, Berlin (2010)Google Scholar
  31. 31.
    Lewis, C.: Using the “Thinking Aloud” Method in Cognitive Interface Design. Tech. Rep. RC-9265, IBM (1982)Google Scholar
  32. 32.
    Mens, T., Van Gorp, P.: A taxonomy of model transformation. Electron. Notes Theor. Comput. Sci. 152, 125–142 (2006)CrossRefGoogle Scholar
  33. 33.
    Montgomery, D.C.: Design and Analysis of Experiments, 8th edn. Wiley, London (2012)Google Scholar
  34. 34.
  35. 35.
    Object Management Group: Business Process Model and Notation (BPMN) 2.0.2. OMG Document formal/2013-12-09 (2013)Google Scholar
  36. 36.
    Object Management Group: Meta Object Facility (MOF) 2.0 Query/View/Transformation Specification 1.2. OMG Document formal/15-02-01 (2015)Google Scholar
  37. 37.
    Object Management Group: Object Constraint Language 2.4. OMG Document formal/2014-02-03 (2014)Google Scholar
  38. 38.
    Object Management Group: Unified Modeling Language (UML) 2.5. OMG Document formal/2015-03-01 (2015)Google Scholar
  39. 39.
    Saada, H., Dolques, X., Huchard, M., Nebut, C., Sahraoui, H.: Generation of operational transformation rules from examples of model transformations. In: Model Driven Engineering Languages and Systems. LNCS, vol. 7590, pp. 546–561. Springer, Berlin (2012)Google Scholar
  40. 40.
    Sarbanes-Oxley Act: 107th Congress Public Law 204. US Government Printing Office (2002)Google Scholar
  41. 41.
    Schmidt, M.: Transformations of UML 2 models using concrete syntax patterns. In: Rapid Integration of Software Engineering Techniques. LNCS, vol. 4401, pp. 130–143. Springer, Berlin (2007)Google Scholar
  42. 42.
    Selic, B.: The pragmatics of model-driven development. IEEE Softw. 20(5), 19–25 (2003)CrossRefGoogle Scholar
  43. 43.
    Sendall, S., Perrouin, G., Guelfi, N., Biberstein, O.: Supporting Model-to-Model Transformations: The VMT Approach. Tech. Rep. LGL-REPORT-2003-005, École Polytechnique Fédérale de Lausanne (2003)Google Scholar
  44. 44.
    Sendall, S., Kozaczynski, W.: Model transformation: the heart and soul of model-driven software development. IEEE Softw. 20(5), 42–45 (2003)CrossRefGoogle Scholar
  45. 45.
    Silva, G.C., Rose, L.M., Calinescu, R.: A qualitative study of model transformation development approaches: supporting novice developers 18–27. In: Proceedings of International Workshop on Model-Driven Development Processes and Practices (MD2P2’14), CEUR Workshop Proceedings, vol. 1249, pp. 18–27 (2014)Google Scholar
  46. 46.
    Stein, D., Hanenberg, S., Unland, R.: Join point designation diagrams: a graphical representation of join point selections. Int. J. Softw. Eng. Knowl. Eng. 16(3), 317–346 (2006)CrossRefGoogle Scholar
  47. 47.
    Steinberg, D., Budinsky, F., Paternostro, M., Merks, E.: EMF: Eclipse Modeling Framework, second edn. Addison-Wesley, Reading (2008)Google Scholar
  48. 48.
    Störrle, H., Acretoaie, V.: Querying business process models with VMQL. In: Proceedings of ACM SIGCHI Annual International Workshop on Behaviour Modelling—Foundations and Applications (BMFA’13), pp. 41–410. ACM, New York (2013)Google Scholar
  49. 49.
    Störrle, H.: MOCQL: a declarative language for ad-hoc model querying. In: Modelling Foundations and Applications. LNCS, vol. 7949, pp. 3–19. Springer, Berlin (2013)Google Scholar
  50. 50.
    Störrle, H.: On the impact of layout quality to understanding UML diagrams: size matters. In: Model-Driven Engineering Languages and Systems, LNCS, vol. 8767, pp. 518–534. Springer, Berlin (2014)Google Scholar
  51. 51.
    Störrle, H.: VMQL: A Visual Language for Ad-Hoc Model Querying. J. Visual Lang. Comput. 22(1) (2011)Google Scholar
  52. 52.
    Stricker, V., Hanenberg, S., Stein, D.: Designing design constraints in the UML using join point designation diagrams. In: Objects, Components, Models and Patterns, LNBIP, vol. 33, pp. 57–76. Springer, Berlin (2009)Google Scholar
  53. 53.
    Sun, Y., White, J., Gray, J.: Model Transformation by Demonstration. Model Driven Engineering Languages and Systems. LNCS, vol. 5795, pp. 712–726. Springer, Berlin (2009)Google Scholar
  54. 54.
    Syriani, E., Vangheluwe, H., Mannadiar, R., Hansen, C., Van Mierlo, S., Huseyin, E.: AToMPM: a web-based modeling environment. In: Joint Proceedings of MODELS’13 Invited Talks, Demonstration Session, Poster Session, and ACM Student Research Competition, CEUR Workshop Proceedings, vol. 1115, pp. 21–25 (2013)Google Scholar
  55. 55.
    Syriani, E., Vangheluwe, H., LaShomb, B.: T-core: a framework for custom-built model transformation engines. Softw. Syst. Model. 13(3), 1–29 (2013)Google Scholar
  56. 56.
    Syriani, E., Vangheluwe, H.: A modular timed graph transformation language for simulation-based design. Softw. Syst. Model. 12(2), 387–414 (2011)CrossRefGoogle Scholar
  57. 57.
    Taentzer, G.: AGG: a graph transformation environment for modeling and validation of software. In: Applications of Graph Transformations with Industrial Relevance. LNCS, vol. 3062, pp. 446–453. Springer, Berlin (2004)Google Scholar
  58. 58.
    Teets, J., Tegarden, D., Russell, R.: Using cognitive fit theory to evaluate the effectiveness of information visualizations: an example using quality assurance data. IEEE Trans. Vis. Comput. Gr. 16(5), 841–853 (2010)CrossRefGoogle Scholar
  59. 59.
    Van Gorp, P., Keller, A., Janssens, D.: Transformation language integration based on profiles and higher order transformations. In: Software Language Engineering. LNCS, vol. 5452, pp. 208–226. Springer, Berlin (2009)Google Scholar
  60. 60.
    Varró, D.: Model transformation by example. In: Model Driven Engineering Languages and Systems. LNCS, vol. 4199, pp. 410–424. Springer, Berlin (2006)Google Scholar
  61. 61.
    Vessey, I.: The theory of cognitive fit: one aspect of a general theory of problem-solving? In: Human-Computer Interaction and Management Information Systems, pp. 141–183. Routledge (2006)Google Scholar
  62. 62.
    Vessey, I.: Cognitive fit: a theory-based analysis of the graphs versus tables literature. Decis. Sci. 22(2), 219–240 (1991)CrossRefGoogle Scholar
  63. 63.
    VMTL Experimental Replication Package. https://vmstar.compute.dtu.dk/doku.php?id=vmtl:evaluation
  64. 64.
    Whittle, J., Jayaraman, P., Elkhodary, A., Moreira, A.: Arajo, J.: MATA: a unified approach for composing UML aspect models based on graph transformation. In: Transactions on Aspect-Oriented Software Development VI. LNCS, vol. 5560, pp. 191–237. Springer, Berlin (2009)Google Scholar
  65. 65.
    Wimmer, M., Strommer, M., Kargl, H., Kramler, G.: Towards model transformation generation by-example. In: Proceedings of 40th Annual Hawaii International Conference on System Sciences, HICSS’07, p. 285b. IEEE Computer Society, Washington, DC (2007)Google Scholar
  66. 66.
    Wohlin, C., Runeson, P., Höst, M., C. Ohlsson, M., Regnell, B., Wesslén, A.: Experimentation in Software Engineering. Springer, Berlin (2012)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2016

Authors and Affiliations

  • Vlad Acreţoaie
    • 1
  • Harald Störrle
    • 1
  • Daniel Strüber
    • 2
  1. 1.Department of Applied Mathematics and Computer ScienceTechnical University of DenmarkKgs. LyngbyDenmark
  2. 2.Department of Mathematics and Computer SciencePhilipps-Universität MarburgMarburgGermany

Personalised recommendations