Advanced Visual Metaphors and Techniques for Software Maps

Software maps provide a general-purpose interactive user interface and information display for software analytics tools. This paper systematically introduces and classifies software maps as a treemap-based technique for software cartography. It provides an overview of advanced visual metaphors and techniques, each suitable for interactive visual analytics tasks, that can be used to enhance the expressiveness of software maps. Thereto, the metaphors and techniques are briefly described, located within a visualization pipeline model, and considered within the software map design space. Consequent applications and use cases w.r.t. different types of software system data and software engineering data are discussed, arguing for a versatile use of software maps in visual software analytics.

[1]  Koji Koyamada,et al.  Hierarchical visualization of network intrusion detection data , 2006, IEEE Computer Graphics and Applications.

[2]  Matthias Trapp,et al.  In-situ Comparison for 2.5D Treemaps , 2019, VISIGRAPP.

[3]  Valerio Pascucci,et al.  Visualizing High-Dimensional Data: Advances in the Past Decade , 2017, IEEE Transactions on Visualization and Computer Graphics.

[4]  Jürgen Döllner,et al.  Hybrid-Treemap Layouting , 2017, EuroVis.

[5]  Jürgen Döllner,et al.  Monitoring code quality and development activity by software maps , 2011, MTD '11.

[6]  Heidrun Schumann,et al.  2D and 3D presentation of spatial data: A systematic review , 2014, 2014 IEEE VIS International Workshop on 3DVis (3DVis).

[7]  Stephan Diehl,et al.  Software Visualization - Visualizing the Structure, Behaviour, and Evolution of Software , 2007 .

[8]  Jürgen Döllner,et al.  EvoCells - A Treemap Layout Algorithm for Evolving Tree Data , 2018, VISIGRAPP.

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

[10]  Colin Ware,et al.  Information Visualization: Perception for Design , 2000 .

[11]  Pierre Poulin,et al.  Visualization-based analysis of quality for large-scale software systems , 2005, ASE.

[12]  Olivier Zendra,et al.  Visualization of the Static Aspects of Software: A Survey , 2011, IEEE Transactions on Visualization and Computer Graphics.

[13]  Sarah H. Creem-Regehr,et al.  Examining Implicit Discretization in Spectral Schemes , 2019, Comput. Graph. Forum.

[14]  Jarke J. van Wijk,et al.  Visual Realism for the Visualization of Software Metrics , 2005, 3rd IEEE International Workshop on Visualizing Software for Understanding and Analysis.

[15]  Jeffrey Heer,et al.  Perceptual Guidelines for Creating Rectangular Treemaps , 2010, IEEE Transactions on Visualization and Computer Graphics.

[16]  Harald C. Gall,et al.  CocoViz: Towards Cognitive Software Visualizations , 2007, 2007 4th IEEE International Workshop on Visualizing Software for Understanding and Analysis.

[17]  Matthias Trapp,et al.  Evaluation of Sketchiness as a Visual Variable for 2.5D Treemaps , 2016, 2016 20th International Conference Information Visualisation (IV).

[18]  Matthias Trapp,et al.  Mixed-Projection Treemaps: A Novel Approach Mixing 2D and 2.5D Treemaps , 2017, 2017 21st International Conference Information Visualisation (IV).

[19]  Michele Lanza,et al.  CodeCity: 3D visualization of large-scale software , 2008, ICSE Companion '08.

[20]  John Riedl,et al.  An operator interaction framework for visualization systems , 1998, Proceedings IEEE Symposium on Information Visualization (Cat. No.98TB100258).

[21]  Anderson Marques,et al.  Visualizing Multidimensional Data in Treemaps with Adaptive Glyphs , 2018, 2018 22nd International Conference Information Visualisation (IV).

[22]  Karen B. Schloss,et al.  Mapping Color to Meaning in Colormap Data Visualizations , 2019, IEEE Transactions on Visualization and Computer Graphics.

[23]  Theresa-Marie Rhyne,et al.  Data Vases: 2D and 3D Plots for Visualizing Multiple Time Series , 2009, ISVC.

[24]  Malcolm Munro,et al.  Comprehension with[in] virtual environment visualisations , 1999, Proceedings Seventh International Workshop on Program Comprehension.

[25]  Jürgen Döllner,et al.  Reducing Visual Complexity in Software Maps using Importance-based Aggregation of Nodes , 2017, VISIGRAPP.

[26]  Jeremiah Scholl,et al.  Extending Tree-Maps to Three Dimensions: A Comparative Study , 2004, APCHI.

[27]  Heidrun Schumann,et al.  Illustrative halos in information visualization , 2008, AVI '08.

[28]  Árpád Beszédes,et al.  CodeMetropolis: Eclipse over the city of source code , 2015, 2015 IEEE 15th International Working Conference on Source Code Analysis and Manipulation (SCAM).

[29]  Oscar Nierstrasz,et al.  Consistent Layout for Thematic Software Maps , 2008, 2008 15th Working Conference on Reverse Engineering.

[30]  Matthias Trapp,et al.  Interactive Revision Exploration using Small Multiples of Software Maps , 2016, VISIGRAPP.

[31]  Jarke J. van Wijk,et al.  Cushion Treemaps: Visualization of Hierarchical Information , 1999, INFOVIS.

[32]  David Turo,et al.  Improving the visualization of hierarchies with treemaps: design issues and experimentation , 1992, Proceedings Visualization '92.

[33]  Heidrun Schumann,et al.  The Design Space of Implicit Hierarchy Visualization: A Survey , 2011, IEEE Transactions on Visualization and Computer Graphics.

[34]  Abon Chaudhuri,et al.  A self-adaptive treemap-based technique for visualizing hierarchical data in 3D , 2009, 2009 IEEE Pacific Visualization Symposium.

[35]  Jean-Daniel Fekete,et al.  Hierarchical Aggregation for Information Visualization: Overview, Techniques, and Design Guidelines , 2010, IEEE Transactions on Visualization and Computer Graphics.

[36]  Hala Skaf-Molli,et al.  State Treemap: an awareness widget for multi-synchronous groupware , 2001, Proceedings Seventh International Workshop on Groupware. CRIWG 2001.

[37]  Danny Holten,et al.  Hierarchical Edge Bundles: Visualization of Adjacency Relations in Hierarchical Data , 2006, IEEE Transactions on Visualization and Computer Graphics.

[38]  Michael Balzer,et al.  Software landscapes: visualizing the structure of large software systems , 2004, VISSYM'04.

[39]  Ed H. Chi,et al.  A taxonomy of visualization techniques using the data state reference model , 2000, IEEE Symposium on Information Visualization 2000. INFOVIS 2000. Proceedings.

[40]  Jürgen Döllner,et al.  Interactive software maps for web-based source code analysis , 2013, Web3D '13.

[41]  Claus Lewerentz,et al.  Understanding software evolution with software cities , 2013, Inf. Vis..

[42]  Jürgen Döllner,et al.  Progressive high-quality rendering for interactive information cartography using WebGL , 2017, Web3D.

[43]  Jürgen Döllner,et al.  Dynamic 2.5D treemaps using declarative 3D on the web , 2016, Web3D.

[44]  Ben Shneiderman,et al.  Treemaps for space-constrained visualization of hierarchies , 2005 .

[45]  Ben Shneiderman,et al.  The eyes have it: a task by data type taxonomy for information visualizations , 1996, Proceedings 1996 IEEE Symposium on Visual Languages.

[46]  K. Andrews,et al.  Case study. Visualising cyberspace: information visualisation in the Harmony Internet browser , 1995, Proceedings of Visualization 1995 Conference.

[47]  Keith Andrews,et al.  Visual exploration of large hierarchies with information pyramids , 2002, Proceedings Sixth International Conference on Information Visualisation.

[48]  Jin Zhang The Implication of Metaphors in Information Visualization , 2008 .

[49]  Matthias Trapp,et al.  Interactive Rendering of Complex 3D-Treemaps with a Comparative Performance Evaluations , 2013, GRAPP/IVAPP.

[50]  Matthias Trapp,et al.  Interactive, Height-Based Filtering in 2.5D Treemaps , 2018, VINCI.

[51]  Michael Balzer,et al.  Hierarchy Based 3D Visualization of Large Software Structures , 2004, IEEE Visualization 2004.

[52]  Matthias Trapp,et al.  Natural Phenomena as Metaphors for Visualization of Trend Data in Interactive Software Maps , 2015, CGVC.

[53]  Tao Lin,et al.  Toward improved aesthetics and data discrimination for treemaps via color schemes , 2018 .

[54]  Jarke J. van Wijk,et al.  The value of visualization , 2005, VIS 05. IEEE Visualization, 2005..

[55]  F. Bremmer,et al.  Preattentive Processing of Numerical Visual Information , 2017, Front. Hum. Neurosci..

[56]  Oh-Hyun Kwon,et al.  Strata treemaps , 2011, SIGGRAPH '11.

[57]  Ken Brodlie,et al.  Gaining understanding of multivariate and multidimensional data through visualization , 2004, Comput. Graph..

[58]  Ben Shneiderman,et al.  Readings in information visualization - using vision to think , 1999 .

[59]  Rainer Koschke,et al.  Comparing the EvoStreets Visualization Technique in Two-and Three-Dimensional Environments A Controlled Experiment , 2019, 2019 IEEE/ACM 27th International Conference on Program Comprehension (ICPC).

[61]  Thomas Ertl,et al.  A 3D treemap approach for analyzing the classificatory distribution in patent portfolios , 2008, 2008 IEEE Symposium on Visual Analytics Science and Technology.

[62]  Han-Wei Shen,et al.  Visualizing Changes of Hierarchical Data using Treemaps , 2007, IEEE Transactions on Visualization and Computer Graphics.

[63]  Daniel A. Keim,et al.  Visual Analytics: Definition, Process, and Challenges , 2008, Information Visualization.

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

[65]  Daniel Weiskopf,et al.  Bubble Treemaps for Uncertainty Visualization , 2018, IEEE Transactions on Visualization and Computer Graphics.

[66]  M. S. T. Carpendale,et al.  Considering Visual Variables as a Basis for Information Visualisation , 2003 .

[67]  Victoria Interrante,et al.  Weaving Versus Blending: a quantitative assessment of the information carrying capacities of two alternative methods for conveying multivariate data with color. , 2006, IEEE Transactions on Visualization and Computer Graphics.