TROPIC Debugging Environment
In the course of the project, a prototype called TROPIC (Transformations on Petri Nets in Colour) has been realized which can be used to edit, execute as well as debug transformation nets. The implementation is based on the Eclipse Modeling Framework (EMF) and the Graphical Modeling Framework (GMF). The figure below represents a screenshot taken from the prototype.
Our development and debugging environment is based on Eclipse including two editors, one presenting the transformation specication, e.g, QVT Relations code and another one that shows the graphical representation thereof in terms of Transformation Nets. To provide
common debugging functionalities, such as stepwise debugging, an editor toolbar is offered. Furthermore, functionalities to save the generated target model, i.e., to switch from the token representation to a model representation, and to load a new source model into the debugging environment are included. Besides these standard functionalities, there are additional debugging features resulting as a benefit of using a dedicated runtime model. In particular, OCL is employed for two dierent debugging purposes. First, OCL is used to dene conditional breakpoints at different levels of granularity. Second, OCL is used to tackle the well-known problem in debugging that programs execute forwards in time whereas programmers must reason backwards in time to find the origin of a bug. For this, a dedicated debugging console based on the Interactive OCL Console of Eclipse is supported, providing several pre-defined debugging functions to explore and to understand the history of a transformation by determining and tracking paths of produced tokens
Features of the Prototype
- Graphical editing of Transformation Nets
- Automatic as well as interactive execution of Transformation Nets
- Visual Debugging of Transformation Nets