Quick look at Obeo Traceability
In several messages on this blog, I’ve talked about Traceability, so I think that it’s time for me to present this tool on which I’ve been working on with Laurent during the last few months. Obeo Traceability is an Eclipse based tool created in order to gather and visualize traceability informations coming for example from an Acceleo generation. By keeping an eye in real time on all the aspects of your generation, you can easily maintain and improve your generators.
The UI of Traceability is composed of five views: Generated Files, Related Files, Metamodel, User Code and Marked Files. The Generated Files view shows all the files that have been generated from the current selection in the editor. With this view, you can select any element of an EMF model an see the files generated thanks to an Acceleo generation.
The Related Files view shows all the files related to the selection in the active editor in any generation. For example, you can see that the selection in the editor, here the name of the method “canDrive” has been generated by the region [1080, 1086] from the Acceleo module common.mtl.
The Metamodel view allows the user to navigate in a metamodel while keeping an eye on the model element at the same time. You can see here the UML model of the UML to Java example of Acceleo 3.
The User Code view shows the generated files containing some user code or some protected areas in order to quickly find the generated files modified by the user. This view also indicates the percentage of user code in those files.
Finally, the Marked Files view shows all the files containing some user code out of a protected area that have been marked. Once marked, the user code that has been written in those file out of a protected area will be saved to be put back in place after the next launch generation thus allowing the user to quickly add some code out of a protected area with the security net in order to prevent any lose of code.
You can also quickly open the input element and the region of the generator that have generated any text selected in a generated file. As such, in a very big and complex generation, you can identify easily where the generated element is coming from. You can also regenerate a subset of your previously generated files and you also have the possibility to see a preview of your next generation.
Traceability will also feature the Code Coverage system for Acceleo 3 described previously on this blog within the Acceleo connector.