Software Visualization in the Large Thomas j. Ball and Stephen G. Eick, 1996

advertisement
Software Visualization in the
Large
Thomas j. Ball and Stephen
G. Eick, 1996
Presented by Xu Liu
April 19, 2005
Overview
 “Software is invisible”
 4 visual representations of software
 To help software engineers cope with
complexity
 5 Case studies involving different
development tasks
Main Goals
 Increasing programmer
 Productivity
 Efficiency
 Improving program structure
 Scalable visualizations
Visualizing software
 Structure
 Run-time behavior
 Code itself <- here we go
Visual representations
 Line representation
 Pixel representation
 Show line as a pixel
 File summary representation
 File as a rectangle, inner time-series
 Hierarchical representation
 Zoomable tree-map
Line representation
Pixel representation
File summary
representation
Hierarchical
representation
Origin from Ben Shneiderman at U Maryland
Application





Code version history
Difference between releases
Static properties of code
Code profiling and execution hot spots
Program slices
Differencing
Fix on fix
Cross Platform
Preprocessor
Nesting Level
Program Execution Hot
Spots
Slicing
Critique (1)
 “Use every available monitor pixel to
show information”
 Don’t make my eyes too busy
 “Hiding system complexity… contributes
to low programmer productivity”
 Sometimes we’ve to hide e.g. Information
Hiding
Critique (2)
 Based on program “line”
 line is not the atom element of source code
after OO & STL
What happened after this
paper?
3D Representations for Software Visualization
Andrian Marcus, Louis Feng, Jonathan I.
Maletic, 2003
What happened after this
paper?
Gatech
http://www.cc.gatech.edu/gvu/softviz/
Softvis.org
http://www.softvis.org/
Download