Software Visualization: Programming as a Multimedia Experience

Front Cover
John Stasko
MIT Press, 1998 - Computers - 562 pages

This book describes the history of SV, techniques and frameworks for its construction, its use in education and program debugging, and recent attempts to evaluate its effectiveness.

Foreword by Jim Foley In the past decade, high quality interfaces have become standard in a growing number of areas such as games and CD-ROM-based encyclopedias. Yet the overwhelming majority of programmers edit their code using a single font within a single window and view code execution via the hand insertion of print statements.Software Visualization (SV) redresses this imbalance by using typography, graphics, and animation techniques to show program code, data, and control flow. This book describes the history of SV, techniques and frameworks for its construction, its use in education and program debugging, and recent attempts to evaluate its effectiveness. In making programming a multimedia experience, SV leaves programmers and computer science researchers free to explore more interesting issues and to tackle more challenging problems.

Contributors
Ronald Baecker, John Bazik, Alan Blackwell, Mike Brayshaw, Marc H. Brown, Wim De Pauw, John B. Domingue, Stephen Eick, Marc Eisenstadt, Christopher Fry, Peter Gloor, Thomas Green, Michael Heath, John Hershberger, Clinton L. Jeffery, Doug Kimelman, Eileen Kraemer, Andrea Lawrence, Henry Lieberman, Allen Malony, Aaron Marcus, Paul Mulholland, Marc Najork, Stephen North, Marian Petre, Blaine A. Price, Steven Reiss, Gruia-Catalin Roman, Diane Rover, Bryan Rosenburg, Tova Roth, Robert Sedgewick, Ian Small, John T. Stasko, Roberto Tamassia, Andries van Dam, John Vlissides

 

Contents

The Early History of Software Visualization
29
What to draw? How
43
Fundamental Techniques for Algorithm
44
Visualizing Graph Models of Software
63
Smooth Continuous Animation
103
Algorithm Animation Using Interactive
119
Program Auralization
137
How
153
Visualization of Dynamics in Real World
293
Maintenance of Large Systems
315
Visualizing ObjectOriented Software
329
Visualization for Parallel Performance
347
Visualization for Education
367
Using Software to Teach Computer
399
Animated Algorithms
409
Evaluation
417

Declarative Visualization
173
Building Software Visualizations through
187
Visualization for Specialized Domains
205
Visualizing Knowledge Based Systems
223
Visualizing Concurrent Programs
237
Visualization for Software Engineering
257
A Reversible Animated Source
277
A Principled Approach to the Evaluation
439
Cognitive Questions in Software
453
Bibliography
481
Contributors
523
Index
531
Copyright

Common terms and phrases

Popular passages

Page 500 - Animations Need Narrations: An Experimental Test of a Dual-Coding Hypothesis,

Bibliographic information