Table 5: Evaluation on cases of (Kessentini et al., 2014).
Case Precision Recall F Precision Recall F Execution
(SBSE) (SBSE) (SBSE) time (s)
WebML2EER 0.65 1.0 0.79 0.69 0.72 0.70 0.116
EER2Ecore 0.6 1.0 0.75 0.48 0.59 0.52 0.188
WebML2Ecore 0.7 0.74 0.72 0.82 0.69 0.74 0.125
EER2UML1.4 0.8 0.86 0.83 0.71 0.72 0.71 0.172
EER2UML2.0 0.61 0.67 0.64 0.67 0.72 0.68 0.422
WebML2UML1.4 0.53 0.62 0.57 1.0 0.84 0.91 0.203
WebML2UML2.0 0.79 0.75 0.77 0.91 0.73 0.81 0.219
Ecore-UML1.4 0.76 0.64 0.69 1.0 0.66 0.79 104.5
Ecore-UML2.0 0.76 0.78 0.77 0.64 0.89 0.75 510
UML1.4-UML2.0 0.9 0.6 0.72 1.0 0.67 0.8 393
Average 0.71 0.77 0.73 0.79 0.72 0.74
primarily automated and requires relatively low man-
ual intervention. It is unclear if AMW is able to gen-
erate complex ATL for cases of composed target fea-
tures.
Transformation construction by example is an-
other approach for semi-automated transformation
derivation (Balogh and Varro, 2008). Transforma-
tion rules are inferred from examples of the intended
transformation inputs and outputs (models). Example
source and target models could also be used to en-
hance our approach, to identify detailed feature map-
pings which cannot be inferred from feature typing
(eg., 2 ∗ x 7−→ y for integer-typed features x and y).
6 CONCLUSIONS
We have described a process for synthesising ATL
transformations from metamodel correspondences,
based on analysis of the consistency and complete-
ness of these correspondences. The approach is novel
in attempting to formally emulate the processes which
a software engineer would informally undertake when
creating a transformation.
We have shown that this approach can produce
correct and effective transformations, with a higher
quality than manually-produced transformation code,
and that development times for transformations can
be reduced in principle by the approach.
REFERENCES
Addazi, L., Cicchetti, A., Rocco, J. D., Ruscio, D. D.,
Iovino, L., and Pierantonio, A. (2016). Semantic-
based model matching with EMFCompare. In ME
2016, CEUR-WS vol. 1706, pages 40–49.
Balogh, Z. and Varro, D. (2008). Model transformation by
example using inductive logic programming. SoSyM.
Eclipse (2019). Atl user guide. eclipse.org.
Fabro, M. D. D. and Valduriez, P. (2009). Towards the
efficient development of model transformations us-
ing model weaving and matching transformations.
SoSyM.
Fang, S. and Lano, K. (2019). Extracting correspondences
from metamodels using metamodel matching. In PhD
symposium, STAF 2019.
Garces, K., Jouault, F., Cointe, P., and Bezivin, J. (2009).
Managing model adaptation by precise detection of
metamodel changes. In ECMDA-FA, LNCS vol. 5562,
pages 34–49.
Kessentini, M., Ouni, A., Langer, P., Wimmer, M., and
Bechikh, S. (2014). Search-based metamodel match-
ing with structural and syntactic measures. JSS,
(97):1–14.
Lano, K., Kolahdouz-Rahimi, S., Sharbaf, M., and Alfraihi,
H. (2018a). Technical debt in model transformation
specifications. In ICMT 2018.
Lano, K., Kolahdouz-Rahimi, S., Yassipour-Tehrani, S.,
and Sharbaf, M. (2018b). A survey of model trans-
formation design patterns in practice. JSS.
Melnik, S., Garcia-Molina, H., and Rahm, E. (2002). Sim-
ilarity flooding: a versatile graph-matching algorithm
and its application to schema matching. In ICDE
2002.
Schwichtenberg, S., Gerth, C., Huma, Z., and Engels, G.
(2014). Normalising heterogeneous service descrip-
tion models with generated qvt transformations. In
ECMFA 2014, LNCS vol. 8569, pp. 180–195.
Voigt, K. and Heinze, T. (2010). Metamodel matching
based on planar graph edit distance. In ICMT 2010,
LNCS vol. 6142, pages 245–259.
MODELSWARD 2020 - 8th International Conference on Model-Driven Engineering and Software Development
270