ABSTRACT
A key component of our attempt to integrate the object-oriented paradigm into introductory and intermediate courses is algorithm visualization. Such visualization depicts an algorithm as a sequence of graphical snapshots of data structures that are operated upon at “interesting events” in the algorithm's execution. Using object-oriented techniques, we have significantly enchanced a previous version of the algorithm visualization system called GAIGS, developed at Lawrence. These enhancements allow instructors and students to develop dynamic visualizations with relative ease and, if desired, extend the graphic operations that are built into GAIGS to allow more personalized visualizations. The resulting software package is being used in a core of courses as a means of illustrating the power of the object-oriented approach while at the same time advancing students' understanding of difficult algorithms. Because of the extensibility of the object-oriented features of the system, we envision many future applications in which it could be used. To encourage the development of such applications, the system is conveniently available via ftp.
- 1.Brown, Marc. Algorithm Animation. MIT Press, Cambridge, MA, 1987.Google Scholar
- 2.Hunkins, Dalton R. (moderator) and Andrianoff, Steven K. and Naps, Thomas L. and Nerheim-Wolfe, Rosalee. "Computer Graphics Across the Computer Science Curriculum." Papers of the 24th SIGCSE Technical Symposium on Computer Science Education, February 1993, Vol. 25, No. 1, Indianapolis, IN, p.295. Google ScholarDigital Library
- 3.Naps, Thomas L. "Design of a Completely General Algorithm Visualization System." Proceedings of the 22nd Small College Computing Symposium, April, 1989, Eau Claire, WI, pp. 233-241.Google Scholar
- 4.Naps, Thomas L. "Algorithm Visualization in Computer Science laboratories." Papers of the 21st SIGCSE Technical Syposium on Computer Science Education, VOl. 22, No. I, Washington, DC, pp. 105-110. Google ScholarDigital Library
- 5.Naps, Thomas L. and Hundhansen, Christopher D. "The Evolution of an Algorithm Visualization System." Proceedings of the 24th Small College Computing Symposium, April, 1991, pp. 259-263.Google Scholar
- 6.Naps, Thomas L. and Hundhausen, Christopher D. and Swander, Brian. GAIGS User Manual, Ver. 3.0. Lawrence Computing Center Publications, Appleton, WI, 1993.Google Scholar
- 7.Rettig, Mark and Simons, Gary and Thomson, John. "Extended Objects." Communications of the ACM, August, 1993, Vol. 36, No.8, pp.19-24. Google ScholarDigital Library
- 8.Stasko, John and Badre, Albert and Lewis, Claytcm. "Do Algorithm Animations Assist Learning? An Empirical Study and Analysis." Proceedings of the INTERCHI '93 Conference on Human Factors in Computing System, April, 1993, Amsterdam, Netherlands, pp. 61- 66. Google ScholarDigital Library
- 9.Schwetizer, Dino. "Designing Interactive Visualization Tools for the Graphics Classroom." Papers of the 23rd Technical Symposium on Computer Science Education, March 1992, Vol. 24, No.1, Kansas City, MO, pp. 299-303. Google ScholarDigital Library
Index Terms
- An object-oriented approach to algorithm visualization—easy, extensible, and dynamic
Recommendations
An object-oriented approach to algorithm visualization—easy, extensible, and dynamic
A key component of our attempt to integrate the object-oriented paradigm into introductory and intermediate courses is algorithm visualization. Such visualization depicts an algorithm as a sequence of graphical snapshots of data structures that are ...
Interactive visualization of object-oriented programs
OOPSLA '04: Companion to the 19th annual ACM SIGPLAN conference on Object-oriented programming systems, languages, and applicationsWe describe a novel approach to runtime visualization of object-oriented programs. Our approach features: visualizations of execution state and history; forward and reverse execution; interactive queries during program execution; and advanced drawing ...
Comments