Abstract
We give an overview of rules and techniques to create a good algorithm animation, with emphasis on animations that would be used when teaching algorithms. In this context, we propose that animations should in particular emphasize the visualization of correctness invariants and the complexity of the algorithms. This implies that writing a good animation must be more than just showing the graphically enhanced runtime debugging provided by most common animation systems; instead, each animation must be individually designed and programmed.
This research was partially supported by Hong Kong RGC grant HKUST 6010/01E
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
R. Baecker. Sorting out Sorting: A case study of software visualization for teaching computer science. In J. T. Stasko, J. Domingue, M. H. Brown, and B. A. Price, editors, Software Visualization: Programming as a Multimedia Experience, chapter 24, pages 369–381. The MIT Press, Cambridge, MA, and London, England, 1997.
R. Baecker and B. Price. The early history of software visualization. In J. T. Stasko, J. Domingue, M. H. Brown, and B. A. Price, editors, Software Visualization: Programming as a Multimedia Experience, chapter 2, pages 29–34. The MIT Press, Cambridge, MA, and London, England, 1997.
R. M. Baecker. Sorting out sorting, 1983. Narrated colour videotape, 30 minutes, presented at ACM SIGGRAPH’ 81 and excerpted in ACM SIGGRAPH Video Review No. 7, 1983.
M. H. Brown. Exploring algorithms using Balsa-II. Computer, 21(5):14–36, 1988.
M. H. Brown. Zeus: A a system for algorithm animation and multi-view editing. In Proceedings of the 7th IEEE Workshop on Visual Languages, pages 4–9, 1991.
M. H. Brown and J. Hershberger. Color and sound in algorithm animation. Computer, 25:52–63, 1992.
M. H. Brown and R. Sedgewick. A system for algorithm animation. Computer Graphics, 18(3):177–186, 1984.
N. G. de Bruijn. Sorting by means of swapping. Discrete Mathematics, 9:333–339, 1974.
G. Cattaneo, U. Ferraro, G. F. Italiano, and V. Scarano. Cooperative algorithm and data types animation over the net. In Proceedings of the IFIP 15th World Computer Congress on Information Processing (IFIP’98), pages 63–80, 1998. System home page: http://isi.dia.unisa.it/catai.
P. Crescenzi, C. Demetrescu, I. Finocchi, and R. Petreschi. Reversible execution and visualization of programs with LEONARDO. Journal of Visual Languages and Computing, 11(2):125–150, 2000. System home page: http://www.dis.uniroma1.it/~demetres/Leonardo.
C. Demetrescu, I. Finocchi, G. F. Italiano, and S. Näher. Visualization in algorithm engineering: Tools and techniques. In Experimental Algorithics — The State of the Art. Springer-Verlag, Heidelberg. To appear.
C. Demetrescu, I. Finocchi, and G. Liotta. Visualizing algorithms over the Web with the publication-driven approach. In Proceedings of the 4th Workshop of Algorithms and Engineering (WAE’00), 2000.
E.W. Dijkstra. On the cruelty of really teaching computing science, The SIGCSE Award Lecture. Communications of the ACM, 32(12):1398–1404, 1989.
N. Faltin. Aktives Lernen von Algorithmen mit interaktiven Visualisierungen. In K. Mehlhorn and G. Snelting, editors, Neue Horizonte im neuen Jahrhundert. 30. Jahrestagung der Gesellschaft für InformatikBerlin, 19.-23. September 2000, pages 131–137. Springer-Verlag, Heidelberg, 2000. http://www-cg-hci-e.informatik.uni-oldenburg.de/~faltin/ALernAlg.
V. Fix and P. Sriram. Empirical studies of algorithm animation for the selection sort. In W. Gray and D. Boehm-Davis, editors, Empirical Studies of Programmers: 6th Workshop, pages 271–282. Ablex Publishing Corporation, Norwood, NJ, 1996.
P. A. Gloor. Animated algorithms. In J. T. Stasko, J. Domingue, M. H. Brown, and B. A. Price, editors, Software Visualization: Programming as a Multimedia Experience, chapter 27, pages 409–416. The MIT Press, Cambridge, MA, and London, England, 1997.
P. A. Gloor. User interface issues for algorithm animation. In J. T. Stasko, J. Domingue, M. H. Brown, and B. A. Price, editors, Software Visualization: Programming as a Multimedia Experience, chapter 11, pages 145–152. The MIT Press, Cambridge, MA, and London, England, 1997.
H. H. Goldstein and J. von Neumann. Planning and coding problems of an electronic computing instrument. In A. H. Traub, editor, von Neumann, J., Collected Works, pages 80–151. McMillan, New York, 1947.
R. R. Henry, K. M. Whaley, and B. Forstall. The University of Washington Program Illustrator. In Proceedings of the 1990 ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI’90), pages 223–233, 1990.
C. A. Hipke and S. Schuierer. VEGA: A user centered approach to the distributed visualization of geometric algorithms. In Proceedings of the 7th International Conference in Central Europe on Computer Graphics, Visualization and Interactive Digital Media (WSCG’99), pages 110–117, 1999.
C. Kehoe, J. Stasko, and A. Taylor. Rethinking the evaluation of algorithm animations as learning aids: An observational study. International Journal of Human-Computer Studies, 54(2):265–284, 2001.
K. Knowlton. Bell telephone laboratories low-level linked list language, 1966. 16-minute black and white.lm, Murray Hill, N.J.
L. Kucera. Homepage. http://www.ms.mff.cuni.cz/acad/kam/kucera.
S. P. Lahtinen, E. Sutinen, and J. Tarhio. Automated animation of algorithms with Eliot. Journal of Visual Languages and Computing, 9:337–349, 1998.
B. P. Miller. What to draw? When to draw? An essay on parallel program visualization. Journal of Parallel and Distributed Computing, 18:265–269, 1993.
P. Mulholland and M. Eisenstadt. Using software to teach computer programming: Past, present and future. In J. T. Stasko, J. Domingue, M. H. Brown, and B. A. Price, editors, Software Visualization: Programming as a Multimedia Experience, chapter 26, pages 399–408. The MIT Press, Cambridge, MA, and London, England, 1997.
B. A. Myers. Taxonomies of visual programming and program visualization. Journal of Visual Languages and Computing, 1:97–123, 1990.
M. Petre, A. Blackwell, and T. Green. Cognitive questions in software visualization. In J. T. Stasko, J. Domingue, M. H. Brown, and B. A. Price, editors, Software Visualization: Programming as a Multimedia Experience, chapter 30, pages 453–480. The MIT Press, Cambridge, MA, and London, England, 1997.
W. C. Pierson and S. H. Rodger. Web-based animation of data structures using JAWAA. In 29th SIGCSE Technical Symposium on Computer Science Education, 1998. System home page: http://www.cs.duke.edu/csed/jawaa/JAWAA.html.
B. A. Price, R. M. Baecker, and I. S. Small. A principled taxonomy of software visualization. Journal of Visual Languages and Computing, 4(3):211–266, 1993.
G. C. Roman and K. C. Cox. A declarative approach to visualizing concurrent computations. Computer, 22:25–36, 1989.
G. C. Roman and K. C. Cox. A taxonomy for program visualization systems. Computer, 26:11–24, 1993.
G. C. Roman, K. C. Cox, C. D. Wilcox, and J. Y. Plun. PAVANE: A system for declarative visualization of concurrent computations. Journal of Visual Languages and Computing, 3:161–193, 1992.
J. Stasko and A. Lawrence. Empirically assessing algorithm animations as learning aids. In J. T. Stasko, J. Domingue, M. H. Brown, and B. A. Price, editors, Software Visualization: Programming as a Multimedia Experience, chapter 28, pages 419–438. The MIT Press, Cambridge, MA, and London, England, 1997.
J. T. Stasko. Tango: A framework and system for algorithm animation. Computer, 23(9):27–39, 1990.
J. T. Stasko, J. Domingue, M. H. Brown, and B. A. Price. Software Visualization: Programming as a Multimedia Experience. The MIT Press, Cambridge, MA, and London, England, 1997.
Xtango. A general purpose algorithm animation system. http://www.cc.gatech.edu/gvu/softviz/algoanim/xtango.html.
A. Zeller. Ddd — data display debugger, version 3.3, 2000. http://www.gnu.org/software/ddd. s
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2002 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Fleischer, R., Kučera, L. (2002). Algorithm Animation for Teaching. In: Diehl, S. (eds) Software Visualization. Lecture Notes in Computer Science, vol 2269. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-45875-1_9
Download citation
DOI: https://doi.org/10.1007/3-540-45875-1_9
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-43323-1
Online ISBN: 978-3-540-45875-3
eBook Packages: Springer Book Archive