Multidimensional Software Visualization in VR

VR City is our first prototype that combines affordances of software metaphors and virtual reality to fully employ advantages of third dimension. We utilize and modify the city metaphor to show all three kinds of software aspects with higher level of detail and allow users to observe and interact with our city in VR environment using HMD HTC Vive.

In our city:

  • Buildings represent classes.
  • Floors represent methods.
  • Size of the floor represents chosen software metric.
  • The position of buildings reflects amount of coupling between classes.

Visualized aspects are:

  • Static aspects – software metrics and coupling.
  • Dynamic aspects – trace visualization using disharmony maps.
  • Evolution – contribution of authors and the change of static aspects in specified time period.

Possible application scenarios are:

  • Remodularization analysis.
  • Identification and observation of code smells.
  • Observation of test coverage.
  • Identification of dead code.
  • Profiling.
  • Code review.