← Software

CityVR

Bitbucket Repository Paper Demo Video
CityVR screenshot — city metaphor visualization in VR

Description

CityVR is an interactive software visualization tool that implements the city metaphor technique in an immersive 3D (I3D) environment using virtual reality. The goal is to boost developer engagement in software comprehension tasks by providing an experience analogous to a game, going beyond typical gamification mechanisms like points and badges.

In CityVR, a software system is represented as a virtual city: each building corresponds to a class, districts represent packages, and three software metrics are encoded visually — number of lines of code (color), number of methods (building height), and number of attributes (width/depth). Developers physically walk, crouch, and jump through the city using VR controllers, and can create a "bubble" to inspect the source code of any class.

The tool was evaluated with a case study based on ArgoUML 0.34. Developers reported feeling curious, immersed, in control, excited, and challenged, and perceived that time passed faster while using it — indicating high engagement. CityVR was developed at the Software Composition Group, University of Bern.

Stack

Technologies

  • Immersive 3D (I3D)
  • City metaphor visualization
  • Room-scale VR interaction
  • Software metric encoding

Software

  • Unity
  • SteamVR SDK

Hardware

  • HTC Vive (2160×1200, 90 Hz)
  • Handheld controllers

Collaborators