CocoViz: Towards Cognitive Software Visualizations

Understanding software projects is a complex task. There is an increasing need for visualizations that improve comprehensiveness of the evolution of a software system. This paper discusses our recent work in software visualization with respect to metaphors. Our goal is to use simple and well-known graphical elements known from daily life such as houses, spears, or tables to allow a user a quick and intuitive understanding of a given visualization via their proportions. We present a software metrics configurator that handle different metaphors and allows optimizations to their graphical representation. The results so far show that large systems can be visualized effectively with metaphor glyphs, yet more case studies and more metaphor glyphs are required for a better understanding for offering a simple and cognitive visual understanding of a software system.

[1]  Anas N. Al-Rabadi,et al.  A comparison of modified reconstructability analysis and Ashenhurst‐Curtis decomposition of Boolean functions , 2004 .

[2]  Michele Lanza,et al.  Program Comprehension through Software Habitability , 2007, 15th IEEE International Conference on Program Comprehension (ICPC '07).

[3]  Tobias Isenberg,et al.  An interactive 3D integration of parallel coordinates and star glyphs , 2005, IEEE Symposium on Information Visualization, 2005. INFOVIS 2005..

[4]  Harald C. Gall,et al.  Populating a Release History Database from version control and bug tracking systems , 2003, International Conference on Software Maintenance, 2003. ICSM 2003. Proceedings..

[5]  Harald C. Gall,et al.  Visualizing multiple evolution metrics , 2005, SoftVis '05.

[6]  Jürgen Ebert,et al.  Collapsible cylindrical trees: a fast hierarchical navigation technique , 2001, IEEE Symposium on Information Visualization, 2001. INFOVIS 2001..

[7]  Ben Shneiderman,et al.  Tree-maps: a space-filling approach to the visualization of hierarchical information structures , 1991, Proceeding Visualization '91.

[8]  Matthew O. Ward,et al.  Hierarchical parallel coordinates for exploration of large datasets , 1999, Proceedings Visualization '99 (Cat. No.99CB37067).

[9]  Ramana Rao,et al.  A focus+context technique based on hyperbolic geometry for visualizing large hierarchies , 1995, CHI '95.

[10]  Martin Pinzger,et al.  ArchView - Analyzing Evolutionary Aspects of Complex Software Systems , 2005 .

[11]  Martin Fowler,et al.  Refactoring - Improving the Design of Existing Code , 1999, Addison Wesley object technology series.

[12]  Alfred Inselberg,et al.  Parallel coordinates: a tool for visualizing multi-dimensional geometry , 1990, Proceedings of the First IEEE Conference on Visualization: Visualization `90.

[13]  Jock D. Mackinlay,et al.  Cone Trees: animated 3D visualizations of hierarchical information , 1991, CHI.

[14]  Radu Marinescu,et al.  Detection strategies: metrics-based rules for detecting design flaws , 2004, 20th IEEE International Conference on Software Maintenance, 2004. Proceedings..

[15]  Andrian Marcus,et al.  3D representations for software visualization , 2003, SoftVis '03.

[16]  Stéphane Ducasse,et al.  Polymetric Views - A Lightweight Visual Approach to Reverse Engineering , 2003, IEEE Trans. Software Eng..

[17]  Maurice H. Halstead,et al.  Elements of software science (Operating and programming systems series) , 1977 .

[18]  Stephen G. Eick,et al.  Seesoft-A Tool For Visualizing Line Oriented Software Statistics , 1992, IEEE Trans. Software Eng..

[19]  Helwig Hauser,et al.  Parallel Sets: Visual Analysis of Categorical Data , 2005, INFOVIS.

[20]  Matthew D. Cooper,et al.  3-dimensional display for clustered multi-relational parallel coordinates , 2005, Ninth International Conference on Information Visualisation (IV'05).