The Recursive Disk (RD) metaphor is a glyph-based approach for software visualization. In this case a glyph is a graphical entity with components, each of which has geometric and appearance attributes. Due to the simple visual appearance of this metaphor it is easy for stakeholders to get a good understanding of the different metaphor entities. Packages are represented by grey disks, which can contain inner packages as well. Classes are visualized by purple disks and can contain methods and attributes. Depending on the chosen variant these attributes and methods can be represented by disks or disk segments. Though they are distinguishable by their color, methods are blue and attributes a yellow.
RD Metaphor: Calls Animation
Classic recursive disk metaphor, without any additional options.
Recursive disk metaphor model with animation of calls. Active or called method will be marked with a white ball, text caption and the color of the element will be changed to white. To restart the animation just reload the page.
The city metaphor is a 3 dimensional real-world metaphor, aimed at creating a better understanding of the visualized system through a natural environment. The packages of an analysed system are represented by districts, its classes by Buildings. Methods and Attributes as well as different metrics of this metaphor differ depending on the chosen version which can either be original, panels, bricks or floors.
City metaphor: First
City metaphor: Second
City metaphor: Third
Classic city metaphor. It is possible to see packages and classes here. Packages are represented as districts and classes as buildings. The height of the buildings depends on the number of methods in the corresponding class. The width depends on the number of attributes.
City metaphor with "bricks" option enabled, meaning that methods and attributes of the corresponding class are represented as bricks. Packages are represented as districts and classes as a building base.
City metaphor with "floors" option enabled. Each package is displayed as a districts and each class as a building. Each method of the corresponding class makes a floor of this class. Member attributes are shown at the top of the building as chimneys.
The dashboard supports project leaders and software architects in decision-making. It provides interactive views concerning architecture and dependencies as well as resource, risk, and quality management. Therefore, jQAssistant plugins scan software artifacts' data such as bytecode, Git logs, test coverage results and static code analysis results. The extracted data is stored as graphs in a Neo4j database. The query language Cypher, React, and D3 are used to create the various visualizations.