Imovision is a software visualization tool to support software developers and maintainers to comprehend C++ software system through the use of a visual representation of it in virtual reality, using a CAVE.
The placement of the different types of member functions reflect their usage, constructors in white are grouped in the centre, accessors in green are placed around these, and modifiers in purple are placed on the outer edges of the class platform. To depict information hiding (public versus private), private items are positioned on the bottom side of the class (platform), Class adjacency represents inheritance. Platform size is proportional to the size of the class (i.e., number of methods and attributes). Attributes of a class are viewed as spheres and member functions viewed as columns. The height or size represents either lines of code or memory size, respectively. Dependency is represented with a white link.
Moreover, upon object selection a text editor with the object’s source code is opened on an additional 2D screen outside of the virtual environment. Also, viewpoints can be saved to be reviewed later.
Sources
[1] J. I. Maletic, J. Leigh, A. Marcus, and G. Dunlap, “Visualizing object-oriented software in virtual reality,” in Proceedings 9th International Workshop on Program Comprehension. IWPC 2001. IEEE Comput. Soc, 2001, pp. 26–35.
[2] J. I. Maletic, J. Leigh, and A. Marcus, “Visualizing Software in an Immersive Virtual Reality Environment,” in Proceedings of ICSE, Toronto, Canada, 2001, p. 12.