Hierarchical software landscape visualization for system comprehension: A controlled experiment
ISSN der Zeitschrift
Software Engineering 2016
Gesellschaft für Informatik e.V.
An efficient and effective way to comprehend large software landscapes is required. The current state of the art often visualizes software landscapes via flat graph-based representations of nodes, applications, and their communication. In our ExplorViz visualization, we introduce hierarchical abstractions aiming at solving typical system comprehension tasks fast and accurately for large software landscapes. To evaluate our hierarchical approach, we conduct a controlled experiment comparing our hierarchical landscape visualization to a flat, state-of-the-art visualization. In addition, we thoroughly analyze the strategies employed by the participants and provide a package containing all our experimental data to facilitate the verifiability, reproducibility, and further extensibility of our results. We observed a statistically significant increase in task correctness of the hierarchical visualization group compared to the flat visualization group in our experiment. The time spent on the system comprehension tasks did not show any significant differences. The results backup our claim that our hierarchical concept enhances the current state of the art in landscape visualization for better software system comprehension. While program comprehension has been researched extensively, system comprehension has received much less attention. From a historical point of view, program comprehension became important when programs reached more than a few hundreds lines of code. Today's IT infrastructures in enterprises often consist of several hundreds of applications forming large software landscapes [FRH15]. Our ExplorViz approach [FWWH13] provides live visualization for large software landscapes introducing three hierarchical abstractions [FRH15]. Life visualization with Ex- plorViz is scalable [FH15] and elastic in cloud environments [vHRGH09]. We present a controlled experiment to compare a flat, state-of-the-art landscape visualization to our hierarchical visualization in the context of system comprehension [FKH15c]. Additional features of ExplorViz include trace visualizations [FFHW15], architecture conformance checks [FSH14], and a landscape control center [FvHH14] with performance anomaly detection [EvHWH11, MRvHH09]. New perspectives on employing virtual reality [FKH15b] and physical models [FKH15a] are further explored. Beneath evaluating if a hierarchical visualization provides benefits, we conducted this experiment to get input for improving our ExplorViz tool.