The Role of Visualization in Computer Science Education

Computer science core instruction attempts to provide a detailed understanding of dynamic processes such as the working of an algorithm or the flow of information between computing entities. Such dynamic processes are not well explained by static media such as text and images, and are difficult to convey in lecture. The authors survey the history of visualization in computer science education, focusing on artifacts that have a documented positive educational assessment. Changes in how computing technology has affected the development and uptake of such visualization artifacts in computer science education, and how recent technology changes are leading to progress in developing online hypertextbooks are then discussed.

[1]  Rockford J. Ross,et al.  Hypertextbooks: Animated, Active Learning, Comprehensive Teaching and Learning Resources for the Web , 2001, Software Visualization.

[2]  Nikol Rummel,et al.  A rating scheme for assessing the quality of computer-supported collaboration processes , 2007, Int. J. Comput. Support. Collab. Learn..

[3]  Clifford A. Shaffer,et al.  Truly Interactive Textbooks for Computer Science Education , 2011 .

[4]  Tapio Salakoski,et al.  Effectiveness of Program Visualization: A Case Study with the ViLLE Tool , 2008, J. Inf. Technol. Educ. Innov. Pract..

[5]  T. Dean Hendrix,et al.  Experimental evaluation of animated-verifying object viewers for Java , 2006, SoftVis '06.

[6]  Albert T. Corbett,et al.  Assessing dynamics in computer-based instruction , 1996, CHI.

[7]  John T. Stasko,et al.  Evaluating animations as student aids in learning computer algorithms , 1999, Comput. Educ..

[8]  Thomas L. Naps,et al.  Exploring the role of visualization and engagement in computer science education , 2003, ITiCSE-WGR '02.

[9]  Bernd Freisleben,et al.  The ANIMAL algorithm animation tool , 2000, ITiCSE '00.

[10]  Rachelle S. Heller,et al.  Integrating algorithm animation into a learning environment , 1997, Comput. Educ..

[11]  Susan H. Rodger,et al.  Merging interactive visualizations with hypertextbooks and course management , 2006, ACM SIGCSE Bull..

[12]  Pierluigi Crescenzi,et al.  Fully integrating algorithm visualization into a cs2 course.: a two-year experience , 2007, ITiCSE.

[13]  T. Dean Hendrix,et al.  An extensible framework for providing dynamic data structure visualizations in a lightweight IDE , 2004, SIGCSE.

[14]  J. Ross,et al.  Annotated bibliography. , 1994, AJNR. American journal of neuroradiology.

[15]  Stephen H. Edwards,et al.  Algorithm Visualization: The State of the Field , 2010, TOCE.

[16]  Adrian Nye Xlib reference manual : for version 11 of the X window system , 1988 .

[17]  Dean Sanders,et al.  Introduction to BlueJ: a Java development environment , 2001 .

[18]  Lauri Malmi,et al.  Evaluating the educational impact of visualization , 2003, ITiCSE-WGR '03.

[19]  David Furcy JHAVEPOP: visualizing linked-list operations in C++ and Java , 2009 .

[20]  Tapio Salakoski,et al.  Effects of course-long use of a program visualization tool , 2010, ACE '10.

[21]  John T. Stasko,et al.  Using student-built algorithm animations as learning aids , 1997, SIGCSE '97.

[22]  Susan H. Rodger,et al.  Increasing engagement in automata theory with JFLAP , 2009, SIGCSE '09.

[23]  Mordechai Ben-Ari,et al.  The Jeliot 2000 program animation system , 2003, Comput. Educ..

[24]  Johanna D. Moore,et al.  Proceedings of the Conference on Human Factors in Computing Systems , 1989 .

[25]  Tapio Salakoski,et al.  Effects, Experiences and Feedback from Studies of a Program Visualization Tool , 2009, Informatics Educ..

[26]  Robert Sedgewick,et al.  Techniques for Algorithm Animation , 1985, IEEE Software.

[27]  Jaime Urquiza-Fuentes,et al.  A Survey of Successful Evaluations of Program Visualization and Algorithm Animation Systems , 2009, TOCE.

[28]  FurcyDavid,et al.  Sorting out sorting , 2008 .

[29]  Roberto Grossi,et al.  STRUTTURE DI DATI E ALGORITMI. PROGETTAZIONE, ANALISI E VISUALIZZAZIONE , 2006 .

[30]  George A. Champine MIT Project Athena: A Model for Distributed Campus Computing , 1991 .

[31]  Benjamin S. Bloom,et al.  Taxonomy of Educational Objectives: The Classification of Educational Goals. , 1957 .

[32]  Tapio Salakoski,et al.  VILLE: a language-independent program visualization tool , 2007 .

[33]  Erkki Sutinen,et al.  Layered Architecture for Automatic Generation of Conflictive Animations in Programming Education , 2010, IEEE Transactions on Learning Technologies.

[34]  James R. Eagan,et al.  JHAVÉ—an environment to actively engage students in Web-based algorithm visualizations , 2000, SIGCSE '00.

[35]  J.T. Stasko,et al.  Tango: a framework and system for algorithm animation , 1990, Computer.

[36]  John T. Stasko,et al.  Do algorithm animations assist learning?: an empirical study and analysis , 1993, INTERCHI.

[37]  Marc H. Brown,et al.  Exploring algorithms using Balsa-II , 1988, Computer.

[38]  Bruce J. Klein,et al.  Proceedings of the 28th SIGCSE Technical Symposium on Computer Science Education, 1997, San Jose, California, USA, February 27 - March 1, 1997 , 1997, SIGCSE.

[39]  Shelley V. Goldman Sorting out sorting , 1982 .

[40]  Essi Lahtinen,et al.  Kick-Start Activation to Novice Programming - A Visualization-Based Approach , 2009, Electron. Notes Theor. Comput. Sci..

[41]  Thomas A. Brush,et al.  Integrating technology into K-12 teaching and learning: current knowledge gaps and recommendations for future research , 2007 .

[42]  Christopher D. Hundhausen,et al.  What you see is what you code: a radically dynamic algorithm visualization development model for novice learners , 2005, 2005 IEEE Symposium on Visual Languages and Human-Centric Computing (VL/HCC'05).

[43]  Erkki Sutinen,et al.  Extending the Engagement Taxonomy: Software Visualization and Collaborative Learning , 2009, TOCE.

[44]  Randy Pausch,et al.  Alice: a 3-D tool for introductory programming concepts , 2000 .

[45]  John T. Stasko,et al.  Data Structure Visualization , 2018, Handbook of Data Structures and Applications.

[46]  Stephen H. Edwards,et al.  Getting algorithm visualizations into the classroom , 2011, SIGCSE.

[47]  Marc Roper,et al.  Improving the mental models held by novice programmers using cognitive conflict and jeliot visualisations , 2009, ITiCSE '09.

[48]  Susan H. Rodger,et al.  Merging interactive visualizations with hypertextbooks and course management , 2006, ITiCSE-WGR '06.

[49]  John Stasko Animating algorithms with XTANGO , 1992, SIGA.

[50]  Susan H. Rodger,et al.  Web-based animation of data structures using JAWAA , 1998, SIGCSE '98.

[51]  Tapio Salakoski,et al.  Multi-Perspective Study of Novice Learners Adopting the Visual Algorithm Simulation Exercise System TRAKLA2 , 2005, Informatics Educ..

[52]  Oshkosh Oshkosh JHAVEPOP: VISUALIZING LINKED-LIST OPERATIONS IN C++ AND JAVA , 2009 .

[53]  J. Stanley,et al.  Book Review: Taxonomy of Educational Objectives, The Classification of Educational Goals, Handbook I: Cognitive Domain , 1957 .

[54]  Stephen Cooper,et al.  Evaluating the effectiveness of a new instructional approach , 2004, SIGCSE.

[55]  Christopher D. Hundhausen,et al.  Designing, visualizing, and discussing algorithms within a CS 1 studio experience: An empirical study , 2008, Comput. Educ..

[56]  Ari Korhonen,et al.  Comparing Learning Performance of Students Using Algorithm Visualizations Collaboratively on Different Engagement Levels , 2009, J. Educ. Technol. Soc..

[57]  John T. Stasko,et al.  Please address correspondence to , 2000 .

[58]  Erkki Sutinen,et al.  Conflictive animations as engaging learning tools , 2007 .

[59]  Mordechai Ben-Ari,et al.  We work so hard and they don't use it: acceptance of software tools by teachers , 2007, ITiCSE '07.