A. Bergmayr, J. Troya, M. Wimmer: From Out-Place Transformation Evolution to In-Place Model Patching, in Proceedings of the 29th IEEE/ACM International Conference on Automated Software Engineering (ASE 2014), ACM, ACM New York, NY, USA, September 15-19, 2014, pages 647 - 652. doi: 10.1145/2642937.2642946


Model transformation is a key technique to automate software engineering tasks. Like any other software, transformations are not resilient to change. As changes to transformations can invalidate previously produced models, these changes need to be reflected on existing models. Currently, revised out-place transformations are re-executed entirely to achieve this co-evolution task. However, this induces an unnecessary overhead, particularly when computation-intensive transformations are marginally revised, and if existing models have undergone updates prior the re-execution, these updates get discarded in the newly produced models.

To overcome this co-evolution challenge, our idea is to infer from evolved out-place transformations patch transformations that propagate changes to existing models by re-executing solely the affected parts based on an in-place execution strategy. Thereby, existing models are only updated by a patch instead of newly produced. In this paper, we present the conceptual foundation of our approach and report on its evaluation in a real-world case study.

From Out-Place Transformation Evolution to In-Place Model Patching