IMMV: An interactive multi-matrix visualization for program comprehension (original) (raw)
Many visualization techniques are used by software engineers to understand and to analyze the static structure of software systems, with the static structure being extracted from the source code. However, the need for scalable visualizations, which take into account the increasing number of code entities (classes and interfaces) and different types of code couplings (relations between them) in software systems, is still not sufficiently fulfilled. In this paper, we extend the design of an existing multimatrix visualization approach to represent the static structure of software systems in a scalable way. First, we extended the data model and the algorithms. Second, we added more visualization and interaction elements. Finally, we incorporated the folding (collapsing) and the unfolding (expanding) of the package hierarchy, which have quadratic time complexity and quadratic space complexity in the number of nodes. This extended approach can be applied to support program comprehension and to analyze the static structure of software systems.