J. Schönböck, G. Kappel, M. Wimmer, A. Kusel, W. Retschitzegger, W. Schwinger: Debugging Model-to-Model Transformations, 19th Asia-Pacific Software Engineering Conference (APSEC 2012), Hong Kong; 04.12.2012 - 07.12.2012; in Proceedings of the 19th Asia-Pacific Software Engineering Conference (APSEC 2012) pages 1 - 10. Doi: 10.1109/APSEC.2012.56
Model-Driven Engineering places models as first-class artifacts throughout the software lifecycle requiring the availability of proper model transformation languages. Although numerous languages are available, they lack convenient facilities for debugging and supporting understanding of the transformation logic. This is not least because the underlying transformation engines operate on a low level of abstraction, hiding the operational semantics of a high-level language. Consequently, low-level debugging information is available only, e.g., variable values. To tackle these limitations, we propose a DSL on top of Colored Petri Nets (CPNs) – called Transformation Nets (TNs) – for the execution and debugging of model transformations. By integrating all artifacts of a transformation, i.e., metamodel elements, model elements, and transformation logic, a runtime model for model transformations is provided, making the afore hidden operational semantics explicit. Based on this runtime model we present various means for debugging by means of an example showing how a QVT-Relations (QVT-R) specification may be debugged using TNs.