Extending ATL for Native UML Profile Support: An Experience Report 49-62
Abstract
With the rise of Model-driven Engineering (MDE) the ap- plication field of model transformations broadens drastically. Current model transformation languages provide appropriate support for stan- dard MDE scenarios such as model-to-model transformations specified between metamodels. However, for other transformation scenarios often the escape to predefined APIs for handling specific model manipulations is required such as is the case for supporting UML profiles in transforma- tions. Thus, the need arises to extend current transformation languages for natively supporting such additional model manipulations. In this paper we report on extending ATL for natively supporting UML profiles in transformations. The extension is realized by providing an extended ATL syntax comprising keywords for handling UML profiles which is reduced by a preprocessor based on a Higher-Order Transfor- mation (HOT) again to the standard ATL syntax. In particular, we elab- orate on our methodology of extending ATL by presenting the extension process step-by-step as well as reporting on lessons learned. With this experience report we aim at providing design guidelines for extending ATL as well as stimulating the research of providing further extensions for ATL.