Documenting and Designing QVTo Model Transformations Through Mathematics
Model transformations play an essential role in Model Driven Engineering (MDE), as they provide the means to use models as first-class artifacts in the software development process. While there exist a number of languages specifically designed to program model transformations, the practical challenges of documenting and designing model transformations are hardly addressed. In this paper we demonstrate how QVTo model transformations can be described and designed informally through the mathematical notation of set theory and functions. We align the QVTo concepts with the mathematical concepts, and, building on the latter, we formulate two design principles of developing QVTo transformations: structural decomposition and chaining model transformations.
KeywordsModel driven engineering Model transformation QVTo Documentation Software design
We are very grateful to the QVTo experts who agreed to access our approach and provided us with very useful insights in its potential benefits and flaws. We also would like to thank Tom Verhoeff and Mark van den Brand (Eindhoven University of Technology, The Netherlands) for their useful comments on this work.
- 1.OMG: Meta Object Facility (MOF) 2.0 Query/View/Transformation Specification (2015). Version 1.2Google Scholar
- 4.Etien, A., Dumoulin, C., Renaux, E.: Towards a Unified Notation to Represent Model Transformation. Research Report 6187, INRIA (2007)Google Scholar
- 5.Rahim, L.A., Mansoor, S.B.R.S: Proposed design notation for model transformation. In: ASWEC, pp. 589–598. IEEE Computer Society (2008)Google Scholar
- 7.Idani, A., Ledru, Y., Anwar, A.: A rigorous reasoning about model transformations using the B method. In: Nurcan, S., Proper, H.A., Soffer, P., Krogstie, J., Schmidt, R., Halpin, T., Bider, I. (eds.) BPMDS 2013 and EMMSAD 2013. LNBIP, vol. 147, pp. 426–440. Springer, Heidelberg (2013)CrossRefGoogle Scholar
- 10.Lano, K.: Model transformation design pattern catalogue. http://www.dcs.kcl.ac.uk/staff/kcl/mtdp. Accessed August 2015
- 11.Jackson, M.: Designing and coding program structures. In: Stevenson, H.P. (ed.) Proceedings of a Codasyl Programming Language Committee Symposium on Structured Programming in COBOL Future and Present, pp. 22–53 (1975)Google Scholar
- 15.Gerpheide, C.M., Schiffelers, R.R.H., Serebrenik, A.: A Bottom-Up quality model for QVTo. In: QUATIC, pp. 85–94. IEEE (2014)Google Scholar