“Weaving” MTL model transformations

  • Authors:
  • Raul Silaghi;Frédéric Fondement;Alfred Strohmeier

  • Affiliations:
  • Software Engineering Laboratory, Swiss Federal Institute of Technology in Lausanne, Lausanne EPFL, Switzerland;Software Engineering Laboratory, Swiss Federal Institute of Technology in Lausanne, Lausanne EPFL, Switzerland;Software Engineering Laboratory, Swiss Federal Institute of Technology in Lausanne, Lausanne EPFL, Switzerland

  • Venue:
  • MDAFA'03 Proceedings of the 2003 European conference on Model Driven Architecture: foundations and Applications
  • Year:
  • 2003

Quantified Score

Hi-index 0.00

Visualization

Abstract

Model transformations are the core of the MDA approach to software development. As specified by the OMG, model transformations should act on any kind of model of any kind of metamodel, which implies the possible “reflective” use of model transformations, i.e., model transformations acting on model trans formations. However, this requires transformation developers to be familiar with the metamodel of the transformation language itself, which is not always the case. In order to overcome such a frustrating impediment for the MTL language, and inspired by AOP approaches, we have designed and implemented an MTL weaver that modifies MTL transformations according to some weaving behavior, which is specified as special MTL transformations, called MTL-aspects, using an AOP-like extension to the MTL language. Both the weaver and the language extension are presented in this paper, and an example is used to show how transformation developers can take advantage of the proposed language extension constructs in order to write “reflective” model transformations in MTL without requiring any previous knowledge of the MTL metamodel itself.