CodeMetropolis: Eclipse over the city of source code

The graphical representations of software (code visualization in particular) may provide both professional programmers and students learning only the basics with support in program comprehension. Among the numerous proposed approaches, our research applies the city metaphor for the visualisation of such code elements as classes, functions, or attributes by the tool CodeMetropolis. It uses the game engine of Minecraft for the graphics, and is able to visualize various properties of the code based on structural metrics. In this work, we present our approach to integrate our visualization tool into the Eclipse IDE environment. Previously, only standalone usage was possible, but with this new version the users can invoke the visualization directly from the IDE, and all the analysis is performed in the background. The new version of the tool now includes an Eclipse plug-in and a Minecraft modification in addition to the analysis and visualization modules which have also been extended with some new features. Possible use cases and a detailed scenario are presented.

[1]  Árpád Beszédes,et al.  CodeMetrpolis — A minecraft based collaboration tool for developers , 2013, 2013 First IEEE Working Conference on Software Visualization (VISSOFT).

[2]  Tibor Gyimóthy,et al.  Empirical validation of object-oriented metrics on open source software for fault prediction , 2005, IEEE Transactions on Software Engineering.

[3]  Michele Lanza,et al.  Visualizing Software Systems as Cities , 2007, 2007 4th IEEE International Workshop on Visualizing Software for Understanding and Analysis.

[4]  Tibor Gyimóthy,et al.  Columbus - reverse engineering tool and schema for C++ , 2002, International Conference on Software Maintenance, 2002. Proceedings..

[5]  Margo McCall,et al.  IEEE Computer Society , 2019, Encyclopedia of Software Engineering.

[6]  Michele Lanza,et al.  Manhattan — 3D City Visualizations in Eclipse , 2011 .

[7]  David H. Laidlaw,et al.  The application visualization system: a computational environment for scientific visualization , 1989, IEEE Computer Graphics and Applications.

[8]  Xiaomin Wu,et al.  Plugging-in visualization: experiences integrating a visualization tool with Eclipse , 2003, SoftVis '03.

[9]  Árpád Beszédes,et al.  CodeMetropolis - code visualisation in MineCraft , 2013, 2013 IEEE 13th International Working Conference on Source Code Analysis and Manipulation (SCAM).

[10]  Stephan Diehl,et al.  Software Visualization - Visualizing the Structure, Behaviour, and Evolution of Software , 2007 .