Investigating the Origins of Complexity and Expressiveness in ATL Transformations

By: Stefan Götz, Matthias Tichy


Model transformations provide an essential element to the model driven engineering approach. Over the years, many languages tailored to this special task, so-called model transformation languages, have been developed. A multitude of advantages have been proclaimed as reasons to why these dedicated languages are better suited to the task of transforming models than general purpose programming languages. However, little work has been done to confirm many of these claims. In this paper, we analyse ATL transformation scripts from various sources to investigate three common claims about the expressiveness of model transformation languages. The claims we are interested in assert that automatic trace handling and implicit rule ordering are huge advantages for model transformation languages and that model transformation languages are able to hide complex semantics behind simple syntax. We use complexity measures to analyse the distribution of complexity over transformation modules and to gain insights about what this means for the abstractions used by ATL. We found that a large portion of the complexity of transformations stem from simple attribute assignments. We also found indications for the usefulness of conditioning on types, implicit rule ordering and automatic trace resolution.


ATL, Complexity, Expressiveness, Model Transformation Languages, Analysis

Cite as:

Stefan Götz, Matthias Tichy, “Investigating the Origins of Complexity and Expressiveness in ATL Transformations”, Journal of Object Technology, Volume 19, no. 2 (July 2020), pp. 12:1-21, doi:10.5381/jot.2020.19.2.a12.

PDF | DOI | BiBTeX | Tweet this | Post to CiteULike | Share on LinkedIn

This article is accompanied by a video realized by the author(s).

The JOT Journal   |   ISSN 1660-1769   |   DOI 10.5381/jot   |   AITO   |   Open Access   |    Contact