CodeMetrpolis — A minecraft based collaboration tool for developers

Data visualisation with high expressive power plays an important role in code comprehension. Recent visualisation tools try to fulfill the expectations of the users and use various analogies. For example, in an architectural metaphor, each class is represented by a building. Buildings are grouped into districts according to the structure of the namespaces. We think that these unique ways of code representation have great potential, but in our opinion they use very simple graphical techniques (shapes, figures, low resolution) to visualise the structure of the source code. On the other hand, computer games use high quality graphic and have high expressive power. A good example is Minecraft, a popular role playing game that supports both high definition, photorealistic textures and long range 3D scene displaying. Additionally, it provides great extensibility and interactivity for third party software. In this paper, we introduce our mission to create a virtual world of source code in which developers and other stakeholders could explore and evaluate their project collaboratively in a virtual Minecraft world. Code properties are represented by graphical primitives offered by the game engine, and various interactivity features are planned. Besides challenges of the implementation there are some fundamental research issues considering the selection of a set of visual elements and mapping to source code properties. These elements have to be compatible not only with the visualisation and with the data model but also with the thinking of developers.

[1]  Denis Lalanne,et al.  Human Machine Interaction, Research Results of the MMI Program , 2009, Human Machine Interaction.

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

[3]  Marin Litoiu,et al.  SHriMP views: an interactive environment for information visualization and navigation , 2002, CHI Extended Abstracts.

[4]  Andrian Marcus,et al.  Supporting the evolution of a software visualization tool through usability studies , 2005, 13th International Workshop on Program Comprehension (IWPC'05).

[5]  Andrian Marcus,et al.  A task oriented view of software visualization , 2002, Proceedings First International Workshop on Visualizing Software for Understanding and Analysis.

[6]  Hausi A. Müller,et al.  Rigi User’s Manual , 1998 .

[7]  Proceedings First International Workshop on Visualizing Software for Understanding and Analysis , 2002, Proceedings First International Workshop on Visualizing Software for Understanding and Analysis.

[8]  Michele Lanza,et al.  CodeCity: 3D visualization of large-scale software , 2008, ICSE Companion '08.

[9]  Kwan-Liu Ma StarGate: A Unified, Interactive Visualization of Software Projects , 2008, 2008 IEEE Pacific Visualization Symposium.