about the same. Thus, while the overall complexity
is reduced with newer Java versions, the overhead en-
tailed by using a general purpose language for writing
model transformations still seems to be present.
For future work, we propose to also look at the
transformation development process as a whole, in-
stead of only at the resulting transformations. In
particular, we are interested in investigating how the
maintenance effort differs between transformations
written in a GPL and those written in a MTL. For this
purpose, the presented artefacts can be reused. Sim-
ple modifications to the ATL transformations can be
compared to what needs to be adjusted in the corre-
sponding Java code. Furthermore, because develop-
ers are the first to be impacted by the languages, it is
also important to include users into such studies. For
this reason, we propose to focus on user-centric study
setups to be able to better study the impact of the lan-
guage choice on developers.
Another potential avenue to explore is the compar-
ison with a general purpose language that has a more
complete support for functional programming such as
e.g. Scala. Additional features such as pattern match-
ing and easier use of functional syntax for translating
OCL expressions into could potentially help to further
reduce the complexity of the resulting transformation
code.
REFERENCES
Akehurst, D. H., Bordbar, B., Evans, M. J., Howells, W.
G. J., and McDonald-Maier, K. D. (2006). SiTra:
Simple Transformations in Java. In Model Driven
Engineering Languages and Systems, pages 351–364.
Springer.
Aniche, M. (2015). Java code metrics calculator (CK).
https://github.com/mauricioaniche/ck.
Anjorin, A., Buchmann, T., and Westfechtel, B. (2017). The
Families to Persons Case.
Beurer-Kellner, L., von Pilgrim, J., and Kehrer, T. (2020).
Round-trip migration of object-oriented data model
instances. In Transformation Tool Contest at the Con-
ference on Software Technologies: Applications and
Foundations (TTC@STAF).
Burgueno, L., Cabot, J., and Gerard, S. (2019). The Fu-
ture of Model Transformation Languages: An Open
Community Discussion. Journal of Object Technol-
ogy, 18(3):7:1–11. The 12th International Conference
on Model Transformations.
Czarnecki, K. and Helsen, S. (2006). Feature-based sur-
vey of model transformation approaches. IBM systems
journal, 45(3):621–645.
Getir, S., Vu, D. A., Peverali, F., Str
¨
uber, D., and Kehrer,
T. (2017). State Elimination as Model Transformation
Problem. In Transformation Tool Contest at the Con-
ference on Software Technologies: Applications and
Foundations (TTC@STAF), pages 65–73.
G
¨
otz, S. and Tichy, M. (2020). Investigating the Origins of
Complexity and Expressiveness in ATL Transforma-
tions. Journal of Object Technology, 19(2):12:1–21.
The 16th European Conference on Modelling Foun-
dations and Applications (ECMFA 2020).
G
¨
otz, S., Tichy, M., and Groner, R. (2020). Claimed advan-
tages and disadvantages of (dedicated) model trans-
formation languages: a systematic literature review.
Software and Systems Modeling.
Gray, J. and Karsai, G. (2003). An examination of DSLs for
concisely representing model traversals and transfor-
mations. In 36th Annual Hawaii International Con-
ference on System Sciences, 2003. Proceedings of the.
Hebig, R., Seidl, C., Berger, T., Pedersen, J. K., and Wa-
sowski, A. (2018). Model Transformation Languages
Under a Magnifying Glass: A Controlled Experi-
ment with Xtend, ATL, and QVT. In Proceedings of
the 2018 26th ACM Joint Meeting on European Soft-
ware Engineering Conference and Symposium on the
Foundations of Software Engineering, New York, NY,
USA.
Jabangwe, R., B
¨
orstler, J.,
ˇ
Smite, D., and Wohlin, C.
(2015). Empirical evidence on the link between
object-oriented measures and external quality at-
tributes: a systematic literature review. Empirical
Software Engineering, 20(3):640–693.
Jouault, F., Allilaire, F., B
´
ezivin, J., Kurtev, I., and Val-
duriez, P. (2006). ATL: A QVT-like Transforma-
tion Language. In Companion to the 21st ACM SIG-
PLAN Symposium on Object-oriented Programming
Systems, Languages, and Applications.
Jouault, F., Allilaire, F., B
´
ezivin, J., and Kurtev, I. (2008).
ATL: A model transformation tool. Science of Com-
puter Programming.
Kehrer, T., Kelter, U., Ohrndorf, M., and Sollbach, T.
(2012). Understanding model evolution through se-
mantically lifting model differences with silift. In 28th
IEEE International Conference on Software Mainte-
nance (ICSM), pages 638–641. IEEE.
Kehrer, T., Taentzer, G., Rindt, M., and Kelter, U. (2016).
Automatically deriving the specification of model
editing operations from meta-models. In International
Conference on Theory and Practice of Model Trans-
formations, pages 173–188. Springer.
Krikava, F., Collet, P., and France, R. (2014). Manipulating
Models Using Internal Domain-Specific Languages.
In Symposium On Applied Computing, Gyeongju,
South Korea.
OMG (2014). Object Constraint Language (OCL).
https://www.omg.org/spec/OCL/2.4/PDF.
OMG (2016). Meta Object Facility (MOF).
https://www.omg.org/spec/MOF.
Rindt, M., Kehrer, T., and Kelter, U. (2014). Auto-
matic Generation of Consistency-Preserving Edit Op-
erations for MDE Tools. Demos@ MoDELS, 14.
Sanchez Cuadrado, J., Burgueno, L., Wimmer, M., and Val-
lecillo, A. (2020). Efficient execution of ATL model
transformations using static analysis and parallelism.
IEEE Transactions on Software Engineering.
MODELSWARD 2021 - 9th International Conference on Model-Driven Engineering and Software Development
134