Jean-Sébastien Sottet (Public Research Centre Henri Tudor, Luxemburg) and Hugo Bruneliere (AtlanMod Team – Inria, Ecole des Mines de Nantes & LINA) collaborated and won a prize during the last SoTeSoLa 2012 Hackathon in August.
The objective of this hackathon was to experiment on innovative Reverse & Re-engineering technologies by using the 101companies initiative as the source context (i.e. the legacy). To this intent, a small solution has been developed and proposed based on several Eclipse Modeling tools, namely MoDisco , ATL , Acceleo and Xtext .
It implements three different (model driven) reverse engineering scenarios to demonstrate the variety and capabilities of these modeling tools:
- Java model discovery from Java source code (using the MoDisco Java model discoverer) + Simple metrics computation from the obtained Java model (using a model transformation implemented in ATL) + HTML rendering/visualization of these computed metrics (reusing the MoDisco metrics visualization builder implemented with ATL)
- Java model discovery from Java source code (using the MoDisco Java model discoverer) + Refactoring on the obtained Java model (using a model transformation implemented in ATL) + Regeneration of the Java source code from the refactored model (reusing the MoDisco Java generator implemented with Acceleo)
- Json model discovery (new model discoverer implemented with Xtext) + Mapping from the Json model to UML2 for simplifying the representation as classes and instances (using a model transformation implemented in ATL)
All these scenarios have been integrated into a single project thanks to the MoDisco framework. Thus, three directly runnable MoDisco workflows are also provided. This solution is fully downloadable from here.
If you liked this post, you should subscribe to the blog feed or facebook page and follow my thoughts on twitter about software development or web design and social media .