Abstract
This article reviews successful educational experiences in using program and algorithm visualizations (PAVs). First, we survey a total of 18 PAV systems that were subject to 33 evaluations. We found that half of the systems have only been tested for usability, and those were shallow inspections. The rest were evaluated with respect to their educational effectiveness. Script-based systems seem to be well suited for the viewing, responding, and changing engagement levels, while compiler-based systems do well for the construction and presenting engagement levels. Finally, we analyze additional PAV features of successful evaluations and hypothesize that they are relevant.
- Ahoniemi, T. and Lahtinen, E. 2007. Visualizations in preparing for programming exercise sessions. Elec. Notes Theor. Comput. Sci. 178, 137--144. Google ScholarDigital Library
- Akingbade, A., Finley, T., Jackson, D., Patel, P., and Rodger, S.H. 2003. JAWAA: Easy Web-based animation from CS 0 to advanced CS courses. In Proceedings of the 34th Technical Symposium on Computer Science Education (SIGCSE’03). 162--166. Google ScholarDigital Library
- Ben-Bassat, R., Ben-Ari, M., and Uronen, P. 2003. The Jeliot 2000 program animation system. Comput.&Educ. 40, 1, 1--15. Google ScholarDigital Library
- Bonifaci, V., Demetrescu, C., Finocchi, I., and Laura, L. 2006. Visual editing of animated algorithms: The Leonardo Web builder. In Proceedings of the Working Conference on Advanced Visual Interfaces (AVI’06). 476--479. Google ScholarDigital Library
- Bruce-Lockhart, M., Norvell, T., and Cotronis, Y. 2007. Program and algorithm visualization in engineering and physics. Elec. Notes Theor. Comput. Sci. 178, 111--119. Google ScholarDigital Library
- Bruce-Lockhart, M. and Norvell, T. S. 2006. Interactive embedded examples: A demonstration. In Proceedings of the 11th Annual Conference on Innovation and Technology in Computer Science Education (ITiCSE’06). 357--357. Google ScholarDigital Library
- Byrne, M., Catrambone, R., and Stasko, J. 1999. Evaluating animations as student aids in learning computer algorithms. Comput.&Educ. 33, 253--278. Google ScholarDigital Library
- Crescenzi, P., Demetrescu, C., Finocchi, I., and Petreschi, R. 2000. Reversible execution and visualization of programs with Leonardo. J. Vis. Lang. Comput. 11, 2, 125--150.Google ScholarDigital Library
- Crescenzi, P. and Nocentini, C. 2007. Fully integrating algorithm visualization into a CS2 course: a two-year experience. In Proceedings of the 12th Annual Conference on Innovation and Technology in Computer Science Education (ITiCSE’07). 296--300. Google ScholarDigital Library
- Crosby, M. and Stelovsky, J. 1995. From multimedia instruction to multimedia evaluation. J. Educ. Multimedia and Hypermedia 4, 147--162. Google ScholarDigital Library
- Cross, J., Hendrix, T., Jain, J., and Barowski, L. 2007. Dynamic object viewers for data structures. In Proceedings of the 38th SIGCSE Technical Symposium on Computer Science Education (SIGCSE’07). 4--8. Google ScholarDigital Library
- Grissom, S., McNally, M., and Naps, T. 2003. Algorithm visualization in CS education: comparing levels of student engagement. In Proceedings of the ACM Symposium on Software Visualization (SOFTVIS’03). 87--94. Google ScholarDigital Library
- Hamer, J. 2004. A lightweight visualizer for Java. In Proceedings of the 3rd Program Visualization Workshop (PVW’04). 54--61.Google Scholar
- Hansen, S., Narayanan, N., and Schrimpsher, D. 2000. Helping learners visualize and comprehend algorithms. Interactive Multimedia Electr. J. Comput.-Enhanc. Learn. 2, 1. http://imej.wfu.edu/articles/2000/1/02/.Google Scholar
- Hendrix, T., Cross, J., and Barowski, L. 2004. An extensible framework for providing dynamic data structure visualizations in a lightweight IDE. In Proceedings of the 35th SIGCSE Technical Symposium on Computer Science Education (SIGCSE’04). 387--391. Google ScholarDigital Library
- Hübscher-Younger, T. and Narayanan, N. 2003. Dancing hamsters and marble statues: characterizing student visualizations of algorithms. In Proceedings of the ACM Symposium on Software Visualization (SOFTVIS’03). 95--104. Google ScholarDigital Library
- Hundhausen, C. 2002. Integrating algorithm visualization technology into an undergraduate algorithms course: Ethnographic studies of a social constructivist approach. Comput.&Educ. 39, 3, 237--260. Google ScholarDigital Library
- Hundhausen, C. and Brown, J. 2005. What you see is what you code: A “radically-dynamic” algorithm visualization development model for novice learners. In Proceedings of the IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC’05). 163--170. Google ScholarDigital Library
- Hundhausen, C. and Brown, J. 2008. Designing, visualizing, and discussing algorithms within a CS 1 studio experience: an empirical study. Comput.&Educ. 50, 1, 301--326. Google ScholarDigital Library
- Hundhausen, C. and Douglas, S. 2002. Low-fidelity algorithm visualization. J. Vis. Lang. Comput. 13, 5, 449--470.Google ScholarCross Ref
- Hundhausen, C., Douglas, S., and Stasko, J. 2002. A meta-study of algorithm visualization effectiveness. J. Vis. Lang. Comput. 13, 3, 259--290.Google ScholarCross Ref
- Jain, J., Cross, J., Hendrix, T., and Barowski, L. 2006. Experimental evaluation of animated-verifying object viewers for Java. In Proceedings of the ACM Symposium on Software Visualization (SOFTVIS’06). 27--36. Google ScholarDigital Library
- Kann, C., Lindeman, R., and Heller, R. 1997. Integrating algorithm animation into a learning environment. Comput.&Educ. 28, 4, 223--228. Google ScholarDigital Library
- Kehoe, C., Stasko, J., and Taylor, A. 2001. Rethinking the evaluation of algorithm animations as learning aids: An observational study. Int. J. Hum.-Comput. Studies 54, 2, 265--284. Google ScholarDigital Library
- Koifman, I., Shimshoni, I., and Tal, A. 2008. MAVIS: A multi-level algorithm visualization system within a collaborative distance learning environment. J. Vis. Lang. Comput. 19, 2, 182--202. Google ScholarDigital Library
- Korhonen, A., Malmi, L., Silvasti, P., Karavirta, V., Lönnberg, J., Nikander, J., Stlnacke, K., and Ihantola, P. 2004. Matrix - A framework for interactive software visualization. Tech. Rep. TKO-B 154/04. Laboratory of Information Processing Science, Department of Computer Science and Engineering, Helsinki University of Technology, Helsinki, Finland.Google Scholar
- Kulyk, O., Kosara, R., Urquiza-Fuentes, J., and I., W. 2007. Human-centered visualization environments. Lecture Notes in Computer Science, vol. 4417, Chapter Human-Centered Aspects. Springer-Verlag, 13--75.Google Scholar
- Kumar, A. 2005. Results from the evaluation of the effectiveness of an online tutor on expression evaluation. In Proceedings of the 36th SIGCSE Technical Symposium on Computer Science Education (SIGCSE’05). 216--220. Google ScholarDigital Library
- Laakso, M.-J., Salakoski, T., Grandell, L., Qiu, X., Korhonen, A., and Malmi, L. 2005. Multi-perspective study of novice learners adopting the visual algorithm simulation exercise system TRAKLA2. Informatics Educ. 4, 1, 49--68.Google Scholar
- Lawrence, A. 1993. Empirical studies of the value of algorithm animation in algorithm understanding. PhD thesis. Department of Computer Science, Georgia Institute of Technology. Google ScholarDigital Library
- Lawrence, A., Badre, A., and Stasko, J. 1994. Empirically evaluating the use of animations to teach algorithms. In Proceedings of the IEEE Symposium on Visual Languages (VL’94). 48--54.Google Scholar
- Malmi, L., Karavirta, V., Korhonen, A., Nikander, J., Seppälä, O., and Silvasti, P. 2004. Visual algorithm simulation exercise system with automatic assessment: TRAKLA2. Informatics Educ. 3, 2, 267--288.Google Scholar
- Moreno, A., Myller, N., Sutinen, E., and Ben-Ari, M. 2004. Visualizing programs with Jeliot 3. In Proceedings of the Working Conference on Advanced Visual Interfaces (AVI’04). 373--376. Google ScholarDigital Library
- Moskal, B., Lurie, D., and Cooper, S. 2004. Evaluating the effectiveness of a new instructional approach. In Proceedings of the 35th SIGCSE Technical Symposium on Computer Sceince Education (SIGCSE’04). 75--79. Google ScholarDigital Library
- Myller, N. 2007. Automatic generation of prediction questions during program visualization. Elec. Notes Theor. Comput. Sci. 178, 43--49. Google ScholarDigital Library
- Naps, T. 2005. JHAVE: Supporting algorithm visualization. IEEE Comput. Graph. Appl. 25, 49--55. Google ScholarDigital Library
- Naps, T., Rößling, G., Almstrum, V., Dann, W., Fleischer, R., Hundhausen, C., Korhonen, A., Malmi, L., McNally, M., Rodger, S., and Velázquez-Iturbide, J. 2003. Exploring the role of visualization and engagement in computer science education. SIGCSE Bull. 35, 2, 131--152. Google ScholarDigital Library
- Naps, T. and Rößling, G. 2007. JHAVÉ -- More visualizers (and visualizations) needed. Elec. Notes Theor. Comput. Sci. 178, 33--41. Google ScholarDigital Library
- Norvell, T. and Bruce-Lockhart, M. 2000. Taking the hood of the computer: Program animation with the Teaching Machine. In Proceedings of the Canadian Electrical and Computer Engineering Conference (CCECE’00). 831--835.Google Scholar
- Pareja-Flores, C., Urquiza-Fuentes, J., and Velázquez-Iturbide, J. 2007. WinHIPE: An IDE for functional programming based on rewriting and visualization. SIGPLAN Notes 42, 3, 14--23. Google ScholarDigital Library
- Pierson, W. and Rodger, S. 1998. Web-based animation of data structures using JAWAA. In Proceedings of the 29th SIGCSE Technical Symposium on Computer Science Education (SIGCSE’98). 267--271. Google ScholarDigital Library
- Price, B., Baecker, R., and Small, I. 1998. An introduction to software visualization. In Software Visualization, J. Stasko, J. Domingue, M. Brown, and B. Price Eds. MIT Press, Cambridge, MA, 3--27.Google Scholar
- Rößling, G. and Ackermann, T. 2007. A framework for generating AV content on-the-fly. Elec. Notes Theor. Comput. Sci. 178, 23--31. Google ScholarDigital Library
- Rößling, G. and Naps, T. 2002. A testbed for pedagogical requirements in algorithm visualizations. In Proceedings of the 7th Annual Conference on Innovation and Technology in Computer Science Education (ITiCSE 02). 96--100. Google ScholarDigital Library
- Rößling, G. and Schroeder, P. 2009. Animalipse - An Eclipse plugin for AnimalScript. Elec. Notes Theor. Comput. Sci. 224, 3--14. Google ScholarDigital Library
- Rößling G., Schüer, M., and Freisleben, B. 2000. The ANIMAL algorithm animation tool. In Proceedings of the 5th Annual Conference on Innovation and Technology in Computer Science Education (ITiCSE’00). 37--40. Google ScholarDigital Library
- Shaffer, C., Heath, L., and Yang, J. 1996. Using the Swan data structure visualization system for computer science education. In Proceedings of the 27th Technical Symposium on Computer Science Education (SIGCSE’96). 140--144. Google ScholarDigital Library
- Stasko, J. 1992. Animating algorithms with XTANGO. SIGACT News 23, 2, 67--71. Google ScholarDigital Library
- Stasko, J. 1997. Using student-built algorithm animations as learning aids. In Proceedings of the 28th SIGCSE Technical Symposium on Computer Science Education (SIGCSE’97). 25--29. Google ScholarDigital Library
- Stasko, J., Badre, A., and Lewis, C. 1993. Do algorithm animations assist learning? An empirical study and analysis. In Proceedings of the SIGCHI Conference on Human Factors in Computing Systems (CHI’93). 61--66. Google ScholarDigital Library
- Urquiza-Fuentes, J. 2008. Generación semiautomática de animaciones de programas funcionales con fines educativos. PhD thesis. Department de Lenguajes y Sistemas Informáticos I, Universidad Rey Juan Carlos.Google Scholar
- Urquiza-Fuentes, J. and Velázquez-Iturbide, J. 2007. An evaluation of the effortless approach to build algorithm animations with WinHIPE. Elec. Notes Theor. Comput. Sci. 178, 3--13. Google ScholarDigital Library
- Velázquez-Iturbide, J., Pareja-Flores, C., and Urquiza-Fuentes, J. 2008. An approach to effortless construction of program animations. Comput.&Educ. 50, 1, 179--192. Google ScholarDigital Library
- Velázquez-Iturbide, J., Pérez-Carrasco, A., and Urquiza-Fuentes, J. 2008. SRec: An animation system of recursion for algorithm courses. In Proceedings of the 13th Annual Conference on Innovation and Technology in Computer Science Education (ITiCSE’08). 225--229. Google ScholarDigital Library
- Virtanen, A., Lahtinen, E., and Järvinen, H.-M. 2005. VIP, a visual interpreter for learning introductory programming with C++. In Proceedings of the 5th Koli Calling Conference on Computer Science Education (KOLI’05). 125--130.Google Scholar
Index Terms
- A Survey of Successful Evaluations of Program Visualization and Algorithm Animation Systems
Recommendations
A Review of Generic Program Visualization Systems for Introductory Programming Education
This article is a survey of program visualization systems intended for teaching beginners about the runtime behavior of computer programs. Our focus is on generic systems that are capable of illustrating many kinds of programs and behaviors. We ...
Algorithm visualization in CS education: comparing levels of student engagement
SoftVis '03: Proceedings of the 2003 ACM symposium on Software visualizationSoftware technology for algorithm visualization (AV) has advanced faster than our understanding of how such technology impacts student learning. In this paper we present results of a multi-university study. We measured the effect of varying levels of ...
Pedagogical Effectiveness of Engagement Levels -- A Survey of Successful Experiences
In this paper we survey experiments with program and algorithm visualizations (PAVs) where learning improvements have been detected. We analyze these experiments based on the student's level of engagement with the visualizations. There are some features ...
Comments