5 DISCUSSION & VALIDATION
Above we demonstrated how the mathematical nota-
tion of set theory can be used to describe QVTo map-
pings, their signatures and implementations, to de-
rive organizational structure of mappings, and to de-
scribe the information flow in chains of model trans-
formations. In this paper, we did not discuss QVTo
constructs such as inheritance of mappings, impera-
tive statements, OCL expressions, recursion, etc. We
were, however, able to describe such concepts in a
larger application (for instance, inheritance of map-
pings can be described using union of functions; and
OCL expressions can be represented as predicates).
While the proposed approach for describing and de-
signing model transformations still requires further
investigation and experiments, we have the following
early validation results:
1. we applied the proposed approach when develop-
ing, documenting, and refactoring two different
model transformations;
2. feedback provided by QVTo practitioners on our
proposal (we performed three semi-structured in-
terviews with developers from three different af-
filiations and different engineering domains).
Based on our experience and on the feedback of the
QVTo practitioners, we conclude that:
• there is a need for a notation for documenting and
designing model transformations;
• the description of QVTo mappings in the form of
formulas is clear and understandable (also to en-
gineers with no computer science background);
• the design principles can assist in the creative pro-
cess of designing model transformations;
• designing a model transformation in the form of
formulas before coding it in QVTo improves read-
ability and understandability of the resulting code.
In addition to these results, we conclude that for the
successful application of the proposed notation the
following questions require further investigation:
• whether the proposed notation restricts the result-
ing design of a model transformation;
• what are the limits of the proposed notation,
whether all essential situations can be described.
6 CONCLUSION
In this paper we showed how the mathematical nota-
tion of set theory and functions can be used to explain
QVTo concepts, to facilitate the design process of
model transformations, and to document model trans-
formations. The resulting formulas give an overview
of the organizational structure and the information
flow of a transformation in an unambiguous and con-
cise way. To assess the applicability of this approach,
we applied it when designing, developing, and refac-
toring two model transformations
2
, one of which is
a complex transformation bridging a wide semantic
gap. Moreover, we performed interviews with QVTo
practitioners. While the results of these experiments
and interviews are positive, the approach requires fur-
ther investigation and experiments. In addition to the
research questions listed in Section 5, we aim to ex-
amine if the proposed approach is language indepen-
dent and can be used for developing in other model
transformation languages, e.g. ATL.
REFERENCES
(2011). Meta Object Facility (MOF) 2.0 Query/View/Trans-
formation Specification. OMG. Version 1.1.
Czarnecki, K. and Helsen, S. (2006). Feature-based Survey
of Model Transformation Approaches. IBM Syst. J.,
45(3):621–645.
Etien, A., Dumoulin, C., and Renaux, E. (2007). Towards a
Unified Notation to Represent Model Transformation.
Research Report 6187, INRIA.
Gerpheide, C. M., Schiffelers, R. R. H., and Serebrenik, A.
(2014). A Bottom-Up Quality Model for QVTo. In
QUATIC, pages 85–94. IEEE.
Guerra, E., de Lara, J., Kolovos, D., Paige, R., and dos
Santos, O. (2013). Engineering model transforma-
tions with transML. Software and Systems Modeling,
12(3):555–577.
Idani, A., Ledru, Y., and Anwar, A. (2013). A Rigorous
Reasoning about Model Transformations Using the B
Method. In BPMDS, pages 426–440.
Jackson, M. (2002). JSP in Perspective. In Broy, M. and
Denert, E., editors, Software Pioneers, pages 480–
493. Springer-Verlag New York, Inc.
Kalnins, A., Barzdins, J., and Celms, E. (2004). Model
Transformation Language MOLA. In MDAFA, pages
62–76.
Lano, K. and Rahimi, S. K. (2014). Model-transformation
design patterns. IEEE Trans. Software Eng.,
40(12):1224–1259.
Rahim, L. A. and Mansoor, S. B. R. S. (2008). Proposed De-
sign Notation for Model Transformation. In ASWEC,
pages 589–598. IEEE Computer Society.
van Amstel, M., van den Brand, M. G. J., Protic, Z., and
Verhoeff, T. (2008). Transforming Process Algebra
Models into UML State Machines: Bridging a Seman-
tic Gap? In ICMT.
2
The source code and the description of the transforma-
tion used as an example in this paper are available online at
code.google.com/p/qvto-flatten-stm/
ICSOFT-EA2015-10thInternationalConferenceonSoftwareEngineeringandApplications
406