Table of Contents
Fetching ...

Semantic Zoom and Mini-Maps for Software Cities

Malte Hansen, Jens Bamberg, Noe Baumann, Wilhelm Hasselbring

TL;DR

The paper addresses visual scalability in 3D software cities by introducing semantic zoom and a top-right mini-map within ExplorViz. It details distance-based visual adaptations (semantic zoom) and an orthographic, expandable mini-map to preserve overview during exploration and collaboration. Two user studies reveal positive usability and usefulness, especially for large landscapes, though evidence for productivity gains is inconclusive and some implementation limitations are noted. The work demonstrates the potential of semantic zoom and mini-maps to enhance software exploration in 3D city visualizations and outlines concrete avenues for future refinement and professional evaluation.

Abstract

Software visualization tools can facilitate program comprehension by providing visual metaphors, or abstractions that reduce the amount of textual data that needs to be processed mentally. One way they do this is by enabling developers to build an internal representation of the visualized software and its architecture. However, as the amount of displayed data in the visualization increases, the visualization itself can become more difficult to comprehend. The ability to display small and large amounts of data in visualizations is called visual scalability. In this paper, we present two approaches to address the challenge of visual scalability in 3D software cities. First, we present an approach to semantic zoom, in which the graphical representation of the software landscape changes based on the virtual camera's distance from visual objects. Second, we augment the visualization with a miniature two-dimensional top-view projection called mini-map. We demonstrate our approach using an open-source implementation in our software visualization tool ExplorViz. ExplorViz is web-based and uses the 3D city metaphor, focusing on live trace visualization. We evaluated our approaches in two separate user studies. The results indicate that semantic zoom and the mini-map are both useful additions. User feedback indicates that semantic zoom and mini-maps are especially useful for large software landscapes and collaborative software exploration. The studies indicate a good usability of our implemented approaches. However, some shortcomings in our implementations have also been discovered, to be addressed in future work. Video URL: https://youtu.be/LYtUeWvizjU

Semantic Zoom and Mini-Maps for Software Cities

TL;DR

The paper addresses visual scalability in 3D software cities by introducing semantic zoom and a top-right mini-map within ExplorViz. It details distance-based visual adaptations (semantic zoom) and an orthographic, expandable mini-map to preserve overview during exploration and collaboration. Two user studies reveal positive usability and usefulness, especially for large landscapes, though evidence for productivity gains is inconclusive and some implementation limitations are noted. The work demonstrates the potential of semantic zoom and mini-maps to enhance software exploration in 3D city visualizations and outlines concrete avenues for future refinement and professional evaluation.

Abstract

Software visualization tools can facilitate program comprehension by providing visual metaphors, or abstractions that reduce the amount of textual data that needs to be processed mentally. One way they do this is by enabling developers to build an internal representation of the visualized software and its architecture. However, as the amount of displayed data in the visualization increases, the visualization itself can become more difficult to comprehend. The ability to display small and large amounts of data in visualizations is called visual scalability. In this paper, we present two approaches to address the challenge of visual scalability in 3D software cities. First, we present an approach to semantic zoom, in which the graphical representation of the software landscape changes based on the virtual camera's distance from visual objects. Second, we augment the visualization with a miniature two-dimensional top-view projection called mini-map. We demonstrate our approach using an open-source implementation in our software visualization tool ExplorViz. ExplorViz is web-based and uses the 3D city metaphor, focusing on live trace visualization. We evaluated our approaches in two separate user studies. The results indicate that semantic zoom and the mini-map are both useful additions. User feedback indicates that semantic zoom and mini-maps are especially useful for large software landscapes and collaborative software exploration. The studies indicate a good usability of our implemented approaches. However, some shortcomings in our implementations have also been discovered, to be addressed in future work. Video URL: https://youtu.be/LYtUeWvizjU

Paper Structure

This paper contains 11 sections, 11 figures.

Figures (11)

  • Figure 1: A visualization of the distributed PetClinic in the web interface of ExplorViz. Six applications are visualized with a grey foundation and hierarchically stacked packages in blue and green. Packages can contain classes. Communication between classes is visualized with yellow arcs.
  • Figure 2: Visualization in ExplorViz with enabled semantic zoom feature. Among other changes, packages close to the camera are opened, classes are augmented with colored indicators for methods, and arrows on communication lines indicate the direction of the underlying requests. An opened settings component to the right allows to customize the semantic zoom.
  • Figure 3: View of the distributed PetClinic, with the camera zoomed in on a single application. The mini-map in the top right corner provides a less detailed top-view of the entire software landscape.
  • Figure 4: The mini-map can be temporarily enlarged. This provides an orthographic view of the software landscape. Colorings show what was highlighted by the connected users that are displayed as colored circles. A web component with an overview of connected users is opened to the right.
  • Figure 5: Overview of the software landscapes and their names that were used in our evaluation.
  • ...and 6 more figures