Reverse Engineering of Model Transformations for Reusability
- Cite this paper as:
- Sánchez Cuadrado J., Guerra E., de Lara J. (2014) Reverse Engineering of Model Transformations for Reusability. In: Di Ruscio D., Varró D. (eds) Theory and Practice of Model Transformations. ICMT 2014. Lecture Notes in Computer Science, vol 8568. Springer, Cham
Reuse techniques are key for the industrial adoption of Model-Driven Engineering (MDE). However, while reusability has been successfully applied to programming languages, its use is scarce in MDE and, in particular, in model transformations.
In previous works, we developed an approach that enables the reuse of model transformations for different meta-models. This is achieved by defining reusable components that encapsulate a generic transformation template and expose an interface called concept declaring the structural requirements that any meta-model using the component should fulfil. Binding the concept to one of such meta-models induces an adaptation of the template, which becomes applicable to the meta-model. To facilitate reuse, concepts need to be concise, reflecting only the minimal set of requirements demanded by the transformation.
In this paper, we automate the reverse engineering of existing transformations into reusable transformation components. To make a transformation reusable, we use the information obtained from its static analysis to derive a concept that is minimal with respect to the transformation and maximizes its reuse opportunities, and then evolve the transformation accordingly. The paper describes a prototype implementation and an evaluation using transformations from the ATL zoo.
KeywordsModel transformation Reusability Reverse engineering Re-engineering
Unable to display preview. Download preview PDF.