Visualising program analysis data

Hintergrund

This paper seeks to evaluate the use of three-dimensional graph representations to compliment traditional graphs in the context of visualising program analysis data in Continental software projects.

Zielsetzung der Arbeit

The goal is to make the data already gathered during large projects more accessible to more people. All the project’s stake-holders should be able to gain the information they need from the visualisation tools provided for them, irrespective of their role in the project and whether the information they need is broad or detailed. Over the past year a Three.js based program analysis data visualisation library has been developed as an internal innovation project. During its development first insights about the strengths and weaknesses of using three-dimensional graphs in this context were collected. On the one hand, it excels at visualizing large projects for insights about structure, scope and overall code health as well as enabling the user to quickly spot problematic files, even if the user is unfamiliar with the project. On the other hand, it performs badly for more detailed analyses of small collections of project files, where traditional graphs provide higher information density.

Konkrete Aufgaben

With the technological part of the library nearing maturity, the emphasis now shifts to investigating the conceptual possibilities it enables and questioning the insights gained earlier. To this end, several visualisation concepts will be developed based on research into traditional graphs as well as 3D graphs from other fields. Emphasis is placed on displaying a high density of information while keeping the graph easily understandable and intuitive. The amount of noise in the graph should be kept so low as to allow problematic areas to stand out clearly. There should be no need to spend a lot of time with the graph to find the needed information. Those graphs that promise to meet these criteria will then be implemented in the library and evaluated using data from a current major software project. The findings gained thereby will inform the further development of the library and define where traditional graphs may be replaced or supplemented with this new technology.

Erwartete Vorkenntnisse

Keine

Weiterführende Quellen

Nach Absprache mit dem Betreuer.