Gesellschaft für Informatik e.V.

Lecture Notes in Informatics


Software Engineering 2016 P-252, 87-88 (2016).

Gesellschaft für Informatik, Bonn
2016


Copyright © Gesellschaft für Informatik, Bonn

Contents

Hierarchical software landscape visualization for system comprehension: A controlled experiment

Florian Fittkau , Alexander Krause and Wilhelm Hasselbring

Abstract


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\&nbsError: Illegal entry in bfrange block in ToUnicode CMap Error: Illegal entry in bfrange block in ToUnicode CMap Error: Illegal entry in bfrange block in ToUnicode CMap Error: Illegal entry in bfrange block in ToUnicode CMap Error: Illegal entry in bfrange block in ToUnicode CMap Error: Illegal entry in bfrange block in ToUnicode CMap Error: Illegal entry in bfrange block in ToUnicode CMap Error: Illegal entry in bfrange block in ToUnicode CMap Error: Illegal entry in bfrange block in ToUnicode CMap Error: Illegal entry in bfrange block in ToUnicode CMap Error: Illegal entry in bfrange block in ToUnicode CMap Error: Illegal entry in bfrange block in ToUnicode CMap Error: Illegal entry in bfrange block in ToUnicode CMap Error: Illegal entry in bfrange block in ToUnicode CMap Error: Illegal entry in bfrange block in ToUnicode CMap Error: Illegal entry in bfrange block in ToUnicode CMap Error: Illegal entry in bfrange block in ToUnicode CMap Error: Illegal entry in bfrange block in ToUnicode CMap Error: Illegal entry in bfrange block in ToUnicode CMap Error: Illegal entry in bfrange block in ToUnicode CMap Error: Illegal entry in bfrange block in ToUnicode CMap Error: Illegal entry in bfrange block in ToUnicode CMap Error: Illegal entry in bfrange block in ToUnicode CMap Error: Illegal entry in bfrange block in ToUnicode CMap Error: Illegal entry in bfrange block in ToUnicode CMap Error: Illegal entry in bfrange block in ToUnicode CMap Error: Illegal entry in bfrange block in ToUnicode CMap Error: Illegal entry in bfrange block in ToUnicode CMap Error: Illegal entry in bfrange block in ToUnicode CMap Error: Illegal entry in bfrange block in ToUnicode CMap Error: Illegal entry in bfrange block in ToUnicode CMap Error: Illegal entry in bfrange block in ToUnicode CMap Error: Illegal entry in bfrange block in ToUnicode CMap Error: Illegal entry in bfrange block in ToUnicode CMap Error: Illegal entry in bfrange block in ToUnicode CMap Error: Illegal entry in bfrange block in ToUnicode CMap Error: Illegal entry in bfrange block in ToUnicode CMap Error: Illegal entry in bfrange block in ToUnicode CMap Error: Illegal entry in bfrange block in ToUnicode CMap Error: Illegal entry in bfrange block in ToUnicode CMap Error: Illegal entry in bfrange block in ToUnicode CMap Error: Illegal entry in bfrange block in ToUnicode CMap Error: Illegal entry in bfrange block in ToUnicode CMap Error: Illegal entry in bfrange block in ToUnicode CMap Error: Illegal entry in bfrange block in ToUnicode CMap Error: Illegal entry in bfrange block in ToUnicode CMap Error: Illegal entry in bfrange block in ToUnicode CMap Error: Illegal entry in bfrange block in ToUnicode CMap Error: Illegal entry in bfrange block in ToUnicode CMap Error: Illegal entry in bfrange block in ToUnicode CMap Error: Illegal entry in bfrange block in ToUnicode CMap Error: Illegal entry in bfrange block in ToUnicode CMap Error: Illegal entry in bfrange block in ToUnicode CMap Error: Illegal entry in bfrange block in ToUnicode CMap Error: Illegal entry in bfrange block in ToUnicode CMap Error: Illegal entry in bfrange block in ToUnicode CMap Error: Illegal entry in bfrange block in ToUnicode CMap Error: Illegal entry in bfrange block in ToUnicode CMap Error: Illegal entry in bfrange block in ToUnicode CMap Error: Illegal entry in bfrange block in ToUnicode CMap Error: Illegal entry in bfrange block in ToUnicode CMap Error: Illegal entry in bfrange block in ToUnicode CMap Error: Illegal entry in bfrange block in ToUnicode CMap Error: Illegal entry in bfrange block in ToUnicode CMap Error: Illegal entry in bfrange block in ToUnicode CMap Error: Illegal entry in bfrange block in ToUnicode CMap Error: Illegal entry in bfrange block in ToUnicode CMap Error: Illegal entry in bfrange block in ToUnicode CMap p;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.3 1 PPI AG, Wall 55, 24103 Kiel, Germany, http://www.ppi.de 2 Kiel University, Software Engineering Group, 24118 Kiel, http://se.informatik.uni-kiel.de/ 3 http://www.explorviz.net References [EvHWH11] Jens Ehlers, André van Hoorn, Jan Waller, and Wilhelm Hasselbring. Self-Adaptive Software System Monitoring for Performance Anomaly Localization. In Proceedings of the 8th IEEE/ACM International Conference on Autonomic Computing (ICAC 2011), pages 197-200. ACM, June 2011. [FFHW15] Florian Fittkau, Santje Finke, Wilhelm Hasselbring, and Jan Waller. Comparing Trace Visualizations for Program Comprehension through Controlled Experiments. In Proceedings of the 23rd IEEE International Conference on Program Comprehension (ICPC 2015), pages 266-276. IEEE, May 2015. [FH15] Florian Fittkau and Wilhelm Hasselbring. Elastic Application-Level Monitoring for Large Software Landscapes in the Cloud. In Schahram Dustdar, Frank Leymann, and Massimo Villari, editors, Service Oriented and Cloud Computing, volume 9306 of Lecture Notes in Computer Science, pages 80-94. Springer-Verlag, September 2015. [FKH15a] Florian Fittkau, Erik Koppenhagen, and Wilhelm Hasselbring. Research Perspective on Supporting Software Engineering via Physical 3D Models. In Proceedings of the 3rd IEEE Working Conference on Software Visualization (VISSOFT 2015), pages 125- 129. IEEE, September 2015. [FKH15b] Florian Fittkau, Alexander Krause, and Wilhelm Hasselbring. Exploring Software Cities in Virtual Reality. In Proceedings of the 3rd IEEE Working Conference on Software Visualization (VISSOFT 2015), pages 130-134. IEEE, September 2015. [FKH15c] Florian Fittkau, Alexander Krause, and Wilhelm Hasselbring. Hierarchical Software Landscape Visualization for System Comprehension: A Controlled Experiment. In Proceedings of the 3rd IEEE Working Conference on Software Visualization (VIS- SOFT 2015), pages 36-45. IEEE, September 2015. [FRH15] Florian Fittkau, Sascha Roth, and Wilhelm Hasselbring. ExplorViz: Visual Runtime Behavior Analysis of Enterprise Application Landscapes. In Proceedings of the 23rd European Conference on Information Systems (ECIS 2015), pages 1-13. AIS, 2015. [FSH14] Florian Fittkau, Phil Stelzer, and Wilhelm Hasselbring. Live Visualization of Large Software Landscapes for Ensuring Architecture Conformance. In Proceedings of the 2014 European Conference on Software Architecture Workshops (ECSAW 2014), pages 28:1-28:4. ACM, August 2014. [FvHH14] Florian Fittkau, André van Hoorn, and Wilhelm Hasselbring. Towards a Dependability Control Center for Large Software Landscapes. In Proceedings of the 10th European Dependable Computing Conference (EDCC 2014). IEEE, May 2014. [FWWH13] Florian Fittkau, Jan Waller, Christian Wulf, and Wilhelm Hasselbring. Live Trace Visualization for Comprehending Large Software Landscapes: The ExplorViz Ap- proach. In Proceedings of the 1st International Working Conference on Software Vi- sualization (VISSOFT 2013), pages 1-4, September 2013. [MRvHH09] Nina S. Marwede, Matthias Rohr, André van Hoorn, and Wilhelm Hasselbring. Automatic Failure Diagnosis in Distributed Large-Scale Software Systems based on Timing Behavior Anomaly Correlation. In Proceedings of the 13th European Conference on Software Maintenance and Reengineering (CSMR'09), pages 47-57. IEEE, 2009. [vHRGH09] André van Hoorn, Matthias Rohr, Imran Asad Gul, and Wilhelm Hasselbring. An Adaptation Framework Enabling Resource-efficient Operation of Software Systems. In Proceedings of the Warm Up Workshop (WUP 2009) for ICSE 2010. ACM, 2009.


Full Text: PDF

Gesellschaft für Informatik, Bonn
ISBN 978-3-88579-646-6


Last changed 25.02.2016 18:39:18