M. Wimmer, A. Kusel, J. Schönböck, W. Retschitzegger, W. Schwinger, G. Kappel: On using Inplace Transformations for Model Co-evolution, in: Proceedings of the 2nd International Workshop on Model Transformation with ATL (MtATL 2010), INRIA & Ecole des Mines de Nantes, 2010, 14 S. pdf


Metamodel evolution and model co-evolution are considered to be essential ingredients for the successful adoption of model-driven engineering in practice. In this respect, on the one hand, dedicated co-evolution languages have been proposed for migrating models conforming to an initial metamodel to models conforming to a revised metamodel with the drawback of requiring to learn a new language. On the other hand, the employment of dedicated model-to-model transformation languages has been proposed demanding for the specification of rules forcopying unchanged elements. In this paper, we propose to tackle the co-evolution problem from adifferent viewpoint. Instead of describing the co-evolution of models as a transformation between two metamodels, we employ existing inplace transformation languages. For this, the prerequisite is to represent both language versions within one metamodel which is automatically computed by merging the initial and the revised metamodel. This ensures that the initial as well as the revised model conform to the merged metamodel, enabling the employment of inplace transformations for initializ-ing new metamodel elements. Finally, a check-out transformation is used for eliminating model elements which are no longer covered by the revised metamodel. We demonstrate this idea by using ATL for merging themetamodels and realizing the check-out transformation. Furthermore, wediscuss the ATL refinement mode for co-evolving the models.

On using Inplace Transformations for Model Co-evolution