Index
AV Overviews: #Bergin1996 #SVBook98 #Naps2002
Exploring the pedagogical value of algoviz: #Stasko1990 #Stasko1992 #Stasko1993 #Stasko1997 #Lawrence1993 #Hundhausen2000 #Hundhausen2002 #Gurka1996 #Wilson1996
Experiments, creation of algoviz artifacts: #Saraiya2004 #Stasko1990 #Stasko1992 #Stasko1993 #Stasko1997 #Lawrence1993 #Hundhausen2000 #Hundhausen2002 #Hansen2000
No significant educational difference found: #Stasko1993 #Byrne1996 #Jarc2000
Encouraging results found: #Bergin1996 #Lawrence1994 #Byrne1996 #Kehoe2001 (homework-style instead of exam-style) #Lawrence1993 #Hansen1998 #Douglas1996 (hand-made art project visualizations)
Effectiveness:
Meta-study of 24 prior studies in AV effectiveness: #Hundhausen2002
Epistemic Fidelity: #Lawrence1993 chapter 7, #Hansen2000
Dual-Coding: #Lawrence1993 chapters 5,7
Individual Differences: #Lawrence1993 chapter 5, #Crosby1995
Cognitive Constructivism: #Stasko1993, #Crosby1995, #Hansen2000, #Kann1999
Comparing Interfaces: #Crowe2000
AlgoViz Systems:
Brown University Algorithm Simulator and Animator (BALSA): #Brown1984, #Brown1985
Tango/XTango: #Stasko1992
Generalized Algorithm Illustration through Graphical Software (GAIGS): #Naps1994
Dynamic Laboratory (DynaLab): #Boroni1996
Swan: #Shaffer1996
Java and Web-based Algorithm Animated (JAWAA): #Pierson1998
Flexible Learning with an Aritificial Intelligence Repository (FLAIR): #Ingargiola1994
Parallel program-focused Object-oriented Low Key Animation (POLKA): #Jerding1997
Samba: (builds on POLKA), #Stasko1997
Mocha: #Baker1996
HyperMedia Algorithm Visualization System (HalVis): #Hansen1999
JHAVE: #Naps2000
ANIMAL: #Roessling2000
jGRASP: #Hendrix2004,#CrossII2007
PAPERS
- * = Discusses a system
- + = Studies AV effectiveness
*Baker 1995
http://doi.acm.org/10.1145/234782.234792
Discusses the Mocha system.
#!bibtex (-)
@article{Baker1995,
author = {James E. Baker and Isabel F. Cruz and Giuseppe Liotta and Roberto Tamassia},
title = {A New Model for Algorithm Animation Over the WWW.},
journal = {ACM Comput. Surv.},
volume = {27},
number = {4},
year = {1995},
pages = {568-572},
issn = {0360-0300},
bibsource = {DBLP, http://dblp.uni-trier.de}
doi = {http://doi.acm.org/10.1145/234782.234792},
publisher = {ACM Press},
address = {New York, NY, USA},
}
*Baker 1996
http://doi.acm.org/10.1145/237218.237407
Discusses the Mocha system.
#!bibtex (-)
@inproceedings{geometricalgorithms,
author = {James E. Baker and Isabel F. Cruz and Giuseppe Liotta and Roberto Tamassia},
title = {Animating geometric algorithms over the web},
booktitle = {SCG '96: Proceedings of the twelfth annual symposium on Computational geometry}, year = {1996},
isbn = {0-89791-804-5},
pages = {403--404},
location = {Philadelphia, Pennsylvania, United States},
doi = {http://doi.acm.org/10.1145/237218.237407},
publisher = {ACM Press},
address = {New York, NY, USA},
}
Bergin 1996
http://doi.acm.org/10.1145/237466.237647
This is a paper from the working group on Algorithm Visualization in the conference ITiCSE96 and it presents an overview of visualization in Computer Science instruction. It is divided into a few sections. The authors present the motivation for using visualization and visual techniques in instruction. Then they consider when the use of visualization is most appropriate. They discuss the various types of visualizations like algorithm visualization, data visualization, etc. The authors come up with possible uses of visualization in Computer Science instruction. These are sorted according to the level of activity the student engages in with the visualization, from passive to highly interactive. Some design issues for instructional tools are discussed, including MVC paradigm and data flow analysis. They discuss these issues from the perspective of the instructor who is constructing the visualization tool for students and then from the perspective of the programmer who is creating visualization software. At the end, there are some suggestions for constructing and maintaining a web-based repository of visualization tools.
#!bibtex (-)
@inproceedings{overviewviz,
author = {Joe Bergin and Ken Brodie and Marta Patiño-Martínez and Myles McNally and Tom Naps
and Susan Rodger and Judith Wilson and Michael Goldweber and Sami Khuri and Ricardo Jiménez-Peris},
title = {An overview of visualization: its use and design: report of the working group in visualization},
booktitle = {ITiCSE '96: Proceedings of the 1st conference on Integrating technology into computer science education},
year = {1996},
isbn = {0-89791-844-4},
pages = {192--200},
location = {Barcelona, Spain},
doi = {http://doi.acm.org/10.1145/237466.237647},
publisher = {ACM Press},
address = {New York, NY},
}
*Birch 1995
Discusses the Dynalab system. But the description is not clear, it is hard to tell from this what Dynalab does.
#!bibtex (-)
@inproceedings{Birch1995,
author = {Michael R. Birch and Christopher M. Boroni and Frances W. Goosey and Samuel D. Patton and
David K. Poole and Craig M. Pratt and Rockford J. Ross},
title = {DYNALAB: a dynamic computer science laboratory infrastructure
featuring program animation (abstract).},
booktitle = {SIGCSE '95: Proceedings of the twenty-sixth SIGCSE technical symposium on Computer science education},
year = {1995},
pages = {29-33},
ee = {http://doi.acm.org/10.1145/199688.199706},
bibsource = {DBLP, http://dblp.uni-trier.de}
}
Bongiovanni 1998
Discusses the JAZ project.
#!bibtex (-)
@INPROCEEDINGS{Bongiovanni98jaz:java,
author = {Giancarlo Bongiovanni and Pierluigi Crescenzi and Gabriella Hago},
title = {JAZ: Java Algorithm visualiZer. A Multi-Platform Collaborative Tool for Teaching and Testing Graph Algorithms},
booktitle = {In Proceedings of the 6th Iteratioal Coferece m Cetral Europe o Computer Craphics ad Visualizatio (WSCC'93},
year = {1998},
pages = {73--80}
}
*Boroni 1996
http://doi.acm.org/10.1145/236452.236526
Discusses the Dynalab system.
#!bibtex (-)
@inproceedings{dancingdynalab,
author = {Christopher M. Boroni and Torlief J. Eneboe and Frances W. Goosey and Jason A. Ross and Rockford J. Ross},
title = {Dancing with DynaLab: endearing the science of computing to students},
booktitle = {SIGCSE '96: Proceedings of the twenty-seventh SIGCSE technical symposium on Computer science education},
year = {1996},
isbn = {0-89791-757-X},
pages = {135--139},
location = {Philadelphia, Pennsylvania, United States},
doi = {http://doi.acm.org/10.1145/236452.236526},
publisher = {ACM Press},
address = {New York, NY},
}
*Brown 1984
#!bibtex (-)
@inproceedings{Balsa,
author = {Marc H. Brown and Robert Sedgewick},
title = {A system for algorithm animation},
booktitle = {SIGGRAPH '84: Proceedings of the 11th annual conference on Computer graphics and interactive techniques},
year = {1984},
isbn = {0-89791-138-5},
pages = {177--186},
doi = {http://doi.acm.org/10.1145/800031.808596},
publisher = {ACM Press},
address = {New York, NY, USA},
}
*Brown 1985
#!bibtex (-)
@article{techniques,
author = {Marc H. Brown and Robert Sedgewick},
title = {Techniques for Algorithm Animation.},
journal = {IEEE Software},
volume = {2},
number = {1},
year = {1985},
pages = {28-39},
bibsource = {DBLP, http://dblp.uni-trier.de}
}
*Brown 1988
http://dx.doi.org/10.1109/2.56
Thorough desciption of Balsa-II. Balsa-II is an algorithm anotation system with displays. The paper discusses the user's view of the the animations, and the programmer's side of annotating algorithms for display. No studies.
#!bibtex (-)
@article{Brown1988IEEE,
author = {Marc H. Brown},
title = {Exploring Algorithms Using Balsa-II.},
journal = {IEEE Computer},
volume = {21},
number = {5},
year = {1988},
pages = {14-36},
issn = {0018-9162},
bibsource = {DBLP, http://dblp.uni-trier.de}
doi = {http://dx.doi.org/10.1109/2.56},
publisher = {IEEE Computer Society Press},
address = {Los Alamitos, CA},
}
Brown 1988 CHI
http://doi.acm.org/10.1145/57167.57172
#!bibtex (-)
@inproceedings{perspectives,
author = {M. H. Brown},
title = {Perspectives on algorithm animation},
booktitle = {CHI '88: Proceedings of the SIGCHI conference on Human factors in computing systems},
year = {1988},
isbn = {0-201-14237-6},
pages = {33--38},
location = {Washington, D.C., United States},
doi = {http://doi.acm.org/10.1145/57167.57172},
publisher = {ACM Press},
address = {New York, NY},
}
Brown 1992
http://dx.doi.org/10.1109/2.179117
This paper discusses various aspects of designing and building dynamic visualizations. The paper presents no studies, but gives various advice and pros/cons of design aspects such as data sets (how big), continuous vs. discrete state updating, etc. This paper has a lot of overlap with other Brown papers, but there is useful information here on the design aspects.
#!bibtex (-)
@article{Brown1992,
author = {Marc H. Brown and John Hershberger},
title = {Color and Sound in Algorithmic Animation.},
journal = {IEEE Computer},
volume = {25},
number = {12},
year = {1992},
pages = {52-63},
bibsource = {DBLP, http://dblp.uni-trier.de}
issn = {0018-9162},
doi = {http://dx.doi.org/10.1109/2.179117},
publisher = {IEEE Computer Society Press},
address = {Los Alamitos, CA},
}
Brusilovsky 2006
Surveyed a number of faculty (61 responses) on a given list of potential topics for visualization. Noted differences in responses between US and European faculty. Identifies a distinction between engaging, explanatory, and adaptive visualizations. Compares the topics on the metrics of critical content, difficult to learn, and hard to teach.
#!bibtex (-)
@article{Brusil2006,
author = {Peter Brusilovsky and Jonathan Grady and Michael Spring and Chul-Hwan Lee},
title = {What Should be Visualized? Faculty Perception of Priority Topics for Program Visualization},
journal = {inroads -- The SIGCSE Bulletin},
volume={38},
year={2006},
number={2},
month={June},
pages={44--48},
}
Byrne 1996
#!bibtex (-)
@techreport{gvugit,
author = {Michael D. Byrne and Richard Catrambone and John T. Stasko},
title = {Do Algorithm Animations Aid Learning?},
URL = {ftp://ftp.cc.gatech.edu/pub/gvu/tech-reports/1996/96-18.pdf},
year = {1996},
institution = {Georgia Institute of Technology},
location = {Atlanta, GA},
series = {GIT-GVU-96-18}
}
Ciesielski 2001
Describes some animations used in AI courses. The animations for A* algorithms are interesting. The study of efficacy compares students using animations vs. students implementing the algorithms, and finds they have insignificant differences in performance on a post-test. But the study does not compare AV performance against any sort of "control" such as lecture or paper&pencil study of a pseudocode presentation. So its not at all clear that the claim that animation is "just as good" as doing an implementation (while taking much less student time and effort) is particularly useful. In particular, the study does not consider whether implementing algorithms is pedagogically more effective than lecture.
#!bibtex (-)
@inproceedings{Ciesielski2001
author = {Vic Ciesielski and Peter McDonald},
title = {Using animation of state space algorithms to overcome student
learning difficulties},
booktitle = {Proceedings of the 6th Annual Conference on Innovation
and Technology in Computer Science Education (ITICSE2001)}
year = 2001,
pages = {97--100},
}
Cogliati 2005
http://doi.acm.org/10.1145/1141904.1141909
Cogliati et al. presented the hypertextbook, web-based teaching and learning resource, which integrate various types of multimedia resources such as text, picture, sound, illustrations, slide shows, video clips, and active learning models on topics of the theory of computing. They emphasized the active learning models which allows learners to actively engage the algorithm materials. It is integrated seamlessly into a hypertextbook at arbitrary steps of an algorithm to illustrate a concept, and students who encounter the them are required to interact with the models. In the different cases, students should provide input for the finite state machine, or construct proper solutions for given exercises. The active learning models consist of 5 different variantions: a passive learning example, active learning example, active learning exercise, authoring, and a standalone application. (By Haeyong Chung)
#!bibtex (-)
@article{1141909,
author = {Joshua J. Cogliati and Frances W. Goosey and Michael T. Grinder and Bradley A. Pascoe and Rockford J. ROSS and Cheston J. Williams},
title = {Realizing the promise of visualization in the theory of computing},
journal = {J. Educ. Resour. Comput.},
volume = {5},
number = {2},
year = {2005},
issn = {1531-4278},
pages = {5},
doi = {http://doi.acm.org/10.1145/1141904.1141909},
publisher = {ACM},
address = {New York, NY, USA},
}
Cox 1994
http://www.cs.wustl.edu/cs/techreports/1994/wucs-94-09.ps.Z
#!bibtex (-)
@techreport{pavane,
author = {K. C. Cox and G. C. Roman},
title = {An evaluation of PAVANE visualization system},
number = {WUCS-94-09},
institution = {Department of Computer Science, Washington University at St. Louis},
location = {St. Louis, MO},
URL = {http://www.cs.wustl.edu/cs/techreports/1994/wucs-94-09.ps.Z},
year = {1994},
month = {Apr}
}
Crescenzi and Nocentini, 2007
This paper discusses the ALVIE system.
#!bibtex (-)
@inproceedings{DBLP:conf/iticse/CrescenziN07,
author = {Pilu Crescenzi and
Carlo Nocentini},
title = {Fully integrating algorithm visualization into a cs2 course.:
a two-year experience},
booktitle = {ITiCSE},
year = {2007},
pages = {296-300},
ee = {http://doi.acm.org/10.1145/1268784.1268869},
crossref = {DBLP:conf/iticse/2007},
bibsource = {DBLP, http://dblp.uni-trier.de}
}
+Crosby 1995
#!bibtex (-)
@article{multimediaevaluation,
author = {Martha E. Crosby and Jan Stelovsky},
title = {From multimedia instruction to multimedia evaluation},
journal = {J. Educ. Multimedia Hypermedia},
volume = {4},
number = {2-3},
year = {1995},
issn = {1055-8896},
pages = {147--162},
publisher = {Association for the Advancement of Computing in Education},
address = {USA},
}
+Cross 2007
This paper discusses the authors’ experience with extending jGRASP, a lightweight IDE, to rovide object viewers that automatically generate dynamic, state-based visualization data structures in Java. By integrating visualization of data structure with an IDE, the authors find it to be more useful for students. The authors state how they changed their attention to finally focus on building a mechanism that could determine if an instance was a linked list or binary tree based on a set of heuristics, and then automatically generate an appropriate view. They call this mechanism the Data Structure Identifier. The papers then describes the experiments that were conducted to measure the effectiveness of this tool—specifically, if it helps code correctly, and if it helps them identify and correct non-syntactical bugs in a code. To that end, the paper describes two experiments. The paper concludes with the finding that the tool shows significant performance improvement.
#!bibtex (-)
@inproceedings{crossdynamic,
author = {J.H.Cross II, T.D. Hendrix, J.Jain and L.A. Barowski},
title = {Dynamic Object Viewers for Data Structures},
booktitle = {SIGCSE '07: Proceedings of the thirty-eighth SIGCSE technical symposium on Computer science education},
year = {2007}
}
+Crowe2000
This paper describing the use of Attention-Action Timeline, a data visualization technique developed by the authors to observer and measure how users of a visualization spend their time interacting with various controls of the animation, and where they look between those actions. The authors maintain that such comprehensive data of user behavior will help researchers evaluate the effectiveness of the visualization interfaces. The paper describes the first step towards developing a toolkit to facilitate such research. They describe an eye-tracking tool that they have developed and integrated with a modified version of HalVis. The paper then describes an experiment the authors conducted with the original keyboard-mouse Halvis, and the modified version of HalVis as an example of how their AAT can be used to evaluate interfaces.
#!bibtex (-)
@inproceedings{crowecomparing,
author = {E.C. Crowe and N.H. Narayanan},
title = {Comparing Interfaces Based on What Users Watch and Do},
booktitle = {Proceedings of the Eye Tracking Research & Applications Symposium},
year = {2000},
pages = {29--36}
Diehl 2001
Seminar proceedings, a collection of papers on software visualization. Includes a number of papers on algorithm visualization.
http://books.google.com/books?hl=en&id=kFN0FT1JRNQC&dq=Diehl+software&printsec=frontcover
#!bibtex (-)
@proceedings{DBLP:conf/dagstuhl/2001svis,
editor = {Stephan Diehl},
title = {Software Visualization, International Seminar Dagstuhl Castle,
Germany, May 20-25, 2001, Revised Lectures},
booktitle = {Software Visualization},
publisher = {Springer},
series = {Lecture Notes in Computer Science},
volume = {2269},
year = {2002},
isbn = {3-540-43323-6},
bibsource = {DBLP, http://dblp.uni-trier.de}
Diehl 2007
http://www.springerlink.com/content/ngh7x8/
This book discusses the broader topic of Software Visualization, with about half a chapter explicitly devoted to algorithm visualization. See #SVBook98 for a more in-depth treatment of this topic from more perspectives. Topics include: Taxonomies of software visualization tools; visualization basics (perception, representations, etc.), techniques for static program visualization, techniques for dynamic program visualization (including algorithm visualization and visual debugging), visualizing the evolution of software systems, and evaluation.
#bibtex
@book{diehl2007,
author = {Stephan Diehl},
title = {Software Visualization: Visualizing the Structure, Behavior, and Evolution of Software},
year = {2007},
publisher = {Springer},
isbn = {978-3-540-46504-1}
+Douglas 1996
This paper presents a very interesting study where they had pairs of graduate students design using construction paper visualizations for bubble sort. The various groups developed very different visualizations. And the visualizations did not map well into the AV design system studied in the project (LENS, a version of XTango). One hypothesized rationale for why earlier studies don't show good results for the pedagogical value of algorithm visualizations is that the AV systems don't give appropriate visualization tools to the designers.
Introduction: Although others have had somewhat discouraging results regarding the effectiveness of AV technology, the authors feel that there may be a mismatch between the way people comprehend algorithms and how that gets mapped to visualization. To try and understand this mismatch, the authors have some students create "art project"-style AVs using construction paper, colored pencils, etc., and then have some of them create visualizations in LENS, an adaptation of XTango.
Empirical Studies: The visualizations in this experiment are bubble sort and one other sort (not discussed) because the graduate student subjects are intimately familiar with it. Pairs of students were videotaped creating paper visualizations to explain bubble sort to novice users. Constructive interaction and conversational analysis were the primary evaluation tools. Student pairs created a broad array of visualizations: one with numbers, one with colors, and one which simulated a game of football. One interesting feature of all three was the retention of previous states, a sort of external memory for the learner. The groups' procedures were similar: first, step through the algorithm and agree on its workings; next, decide on how to present the information to a novice, understanding what they know and don't know; finally, create and refine the visualization.
Accordance with AV Software: Two of the pairs went on to implement in LENS, an interesting events-style AV tool. Students were shown how to create a visualization using LENS, and then were asked to create a bubble sort visualization. Learning curve for LENS was fairly shallow.
Mapping Visualizations: Researchers mapped various components of the paper visualizations to pseudocode and to LENS. This helped them see what was abstracted away and what was missing from each type of visualization. Important areas of comparison: abstract functionality, grain of analysis, perceptual salience, and cultural expectations.
Conclusions: Human visualizations and LENS share similar semantics at a high level of abstract functionality and grain of analysis; perceptual salience is more easily accomplished in the human visualizations; LENS could not meet all cultural expectations--weaker metaphors had to be used.
#!bibtex (-)
@inproceedings{ douglas96exploring,
author = "Sarah Douglas and Christopher Hundhausen and Donna McKeown",
title = "Exploring Human Visualization of Computer Algorithms",
booktitle = "Graphics Interface '96",
publisher = "Canadian Human-Computer Communications Society",
editor = "Wayne A. Davis and Richard Bartels",
pages = "9--16",
year = "1996",
url = "citeseer.ist.psu.edu/177356.html"
}
Giordano 2006
http://doi.acm.org/10.1145/1168812.1168841
#!bibtex (-)
@inproceedings{Giordano2006,
author = {John C. Giordano and Martin Carlisle},
title = {Toward a more effective visualization tool to teach novice programmers},
booktitle = {SIGITE '06: Proceedings of the 7th conference on Information technology education},
year = {2006},
isbn = {1-59593-521-5},
pages = {115--122},
location = {Minneapolis, Minnesota, USA},
doi = {http://doi.acm.org/10.1145/1168812.1168841},
publisher = {ACM Press},
address = {New York, NY, USA},
}
Gloor 1992
Describes an effort to put the Cormen, Leiserson, and Rivest book online with a combined hypermedia content section and a collection of algorithm animations. The algorithm animations are implemented in HyperCard, with some use of AddMotion.
#!bibtex (-)
@inproceedings{Gloor1992,
author = {Peter A. Gloor},
title = {AACE - Algorithm Animation for Computer Science Education.},
booktitle = {Proceedings of the 1992 IEEE Workshop on Visual Languages}
booktitle = {VL},
year = {1992},
pages = {25-31},
month = {Sep},
location = {Seattle, Washington},
bibsource = {DBLP, http://dblp.uni-trier.de}
}
Grissom 2003
http://doi.acm.org/10.1145/774833.774846
Grissom et al. measured the effect of different learner engagement levels with algorithm visualization in a course module on introductory sorting algorithms. In particular, they specified the learner’s levels of interaction; the stages in increasing level of engagement are “no viewing,” “viewing,” and “responding.” It has been tested in order to verify whether a significant improvement can be found between two different engagement forms (or stages). According to their experiment result, they shows that a significant improvement between “no viewing” and “responding,” but the difference between “viewing” and “responding” was not significant.
#!bibtex (-)
@inproceedings{774846,
author = {Scott Grissom and Myles F. McNally and Tom Naps},
title = {Algorithm visualization in CS education: comparing levels of student engagement},
booktitle = {SoftVis '03: Proceedings of the 2003 ACM symposium on Software visualization},
year = {2003},
isbn = {1-58113-642-0},
pages = {87--94},
location = {San Diego, California},
doi = {http://doi.acm.org/10.1145/774833.774846},
publisher = {ACM},
address = {New York, NY, USA},
}
Gurka 1996 PhD Dissertation
#!bibtex (-)
@phdthesis{pedagogicaspects,
author = {J. S. Gurka},
title = {Pedagogic aspects of Algorithm Animation},
school = {University of Colorado},
year = {1996}
}
Gurka 1996
Good paper! Discusses the literature to that time on testing effectiveness of algorithm animations. Most such studies showed no significant difference between algorithm animation and other approaches (such as text or lecture). This paper discusses the reasons why. These include bad methodology in the experiments, and weaknesses in the algorithm animations. The paper gives lots of suggestions on how to conduct the experiments, and also provides suggestions on how to design good visualizations.
Introduction: Studies produce mixed results about effectiveness of AV tech in education. AVs being adopted anyway. Most fields worry about false positives; AV may need to worry about false negatives.
Educational Uses of Algorithm Animation: History beginning with Balsa, Tango, etc. Approaches: adjunct to lecture, student study tool, student-as-developer, code reading and grading.
The Problem: Designers, instructors positive about AV. However, effectiveness not proven, therefore people continually change and reinvent techniques. Some potential for improving visualization work in general. Also, current AV may not in fact be effective, so perhaps we need to discover new AV techniques which are.
Effectiveness Testing: Balsa finds that learning speed increased and students enjoyed AV. XTango studies don't show statistically significant improvement. Some students use AV to get "unstuck" on homework when given the option.
Experimental Issues: Three general issues: effects of AV can best be determined by combination of qualitative/quanitative analysis because each has failures, number of variables in the classroom is high and hard to control for, tendency to compare "something with nothing". AV-specific factors: usability, animation quality, systems training, logistics of availability, type of animation use, algorithm difficulty, individual differences in subjects.
Summary: Recap of experimental issues.
Future Work: Redo some "failed" experiments while addressing some of the issues.
Conclusions: Should try to find minimal set of factors which make AV effective for students, but also be willing to accept that AV may not be helpful for students.
#!bibtex (-)
@inproceedings{testingeffectiveness,
author = {J. S. Gurka and W. Citrin},
title = {Testing effectiveness of algorithm animation},
booktitle = {Proceedings, IEEE Symposium on Visual Languages},
year = {1996},
pages = {182--189},
location = {Boulder, CO},
URL = {http://ieeexplore.ieee.org/iel3/3922/11360/00545285.pdf?tp=&arnumber=545285&isnumber=11360}
keywords = {computer animation, computer science education, visual programming}
}
Hansen 1998
http://citeseer.ist.psu.edu/hansen98empirical.html
#!bibtex (-)
@techreport{empiricalstudies,
author = {Steven Hansen and Daniel Schrimpsher and N. Hari Narayanan and Mary Hegarty},
title = {Empirical Studies of Animation-embedded Hypermedia Algorithm Visualizations},
URL = {http://citeseer.ist.psu.edu/hansen98empirical.html},
year = {1998},
institution = {Auburn University},
journal = {Journal of Visual Languages and Computing},
location = {Auburn, AL},
series = {CSE98-06}
}
*Hansen 1999
#!bibtex (-)
@inproceedings{,
author = {S. Hansen and N. Hari Narayanan and D. Schrimpsher},
title = {From Algorithm Animations to Animation-embedded Hypermedia Visualizations},
booktitle = {Proceedings of World Conference on Educational Multimedia, Hypermedia and Telecommunications 1999},
year = {1999},
pages = {1032-1037},
location = {Chesapeake, VA}
}
+Hansen 2000
http://imej.wfu.edu/articles/2000/1/02/index.asp
The paper presents HalVis—a system built on the novel theoretical framework for the design of effective algorithm visualizations, one which espouses embedding interactive analogies and animations in hypermedia to enhance contextual learning. The authors then describe the various learning components of this architecture through an annotated slideshow of visualization using the Selection Sort algorithm. They go on to summarize results from a number of empirical studies conducted over a significant period. Finally, the paper talks about the surprising discovery the authors made about the importance of interactive and animated technologies in priming learning about algorithms from subsequent visualizations.
#!bibtex (-)
@article{helpinglearners,
author = {Steven R. Hansen and N. Hari Narayanan and Dan Schrimpsher},
title = {Helping Learners Visualize and Comprehend Algorithms},
year = {2000},
journal = {Interactive Multimedia Electronic Journal of Computer-Enhanced Learning},
URL = {http://imej.wfu.edu/articles/2000/1/02/index.asp},
volume = {2}
}
+Hansen 2000 conference
http://www.umich.edu/~icls/proceedings/abstracts/ab205.html
#!bibtex (-)
@inproceedings{roleofanalogies,
author = {Steven Hansen and N. Hari Narayanan},
title = {On the Role of Animated Analogies in Algorithm Visualizations},
URL = {http://www.umich.edu/~icls/proceedings/abstracts/ab205.html},
year = {2000},
booktitle = {Proceedings of the Fourth International Conference of The Learning Sciences},
pages = {205--211}
}
Hansen 2002
Very nice paper that describes the HalVis system. It begins with a discussion of prior disappointing results in the evaluation of pedagogical effectiveness of algorithm visualizations. It goes on to argue for interactive visualizations that integrate (i) multimedia descriptive information about the algorithm, (ii) questions to students about the algorithm, and (iii) the visualization itself. Several studies are then presented that attempt to compare the performance of students using text vs. Halvis, lecture vs. Halvis, and XTango vs. Halvis. In general, Halvis performed significantly better.
#!bibtex (-)
@article{Hansen2002,
author = {Steven Hansen and N. Hari Narayanan and Mary Hegarty},
title = {Designing Educationally Effective Algorithm Visualizations.},
journal = {J. Vis. Lang. Comput.},
volume = {13},
number = {3},
year = {2002},
pages = {291-317},
ee = {http://dx.doi.org/10.1006/jvlc.2002.0236},
bibsource = {DBLP, http://dblp.uni-trier.de}
}
Hartley 1994
http://doi.acm.org/10.1145/191029.191164
Discusses the XTANGO system
#!bibtex (-)
@inproceedings{DBLP:conf/sigcse/Hartley94,
author = {Stephen J. Hartley},
title = {Animating operating systems algorithms with XTANGO.},
booktitle = {SIGCSE '94: Proceedings of the twenty-fifth SIGCSE technical symposium on Computer science education},
year = {1994},
isbn = {0-89791-646-8},
pages = {344--348},
location = {Phoenix, Arizona, United States},
doi = {http://doi.acm.org/10.1145/191029.191164},
publisher = {ACM Press},
address = {New York, NY},
bibsource = {DBLP, http://dblp.uni-trier.de}
}
Hendrix 2004
This paper describes a framework called jGRASP for producing dynamic data structure visualizations within the context of a lightweight IDE. The paper focuses on Java, because the language provides many built in data structure implementations. So that becomes a good first step to visualize. The paper describes the many levels of view supported by jGRASP to denote the data structure at the desired level of granularity—a) the low level expandable of the object’s members b) the higher level view of the underlying data structure, and c) the top level view as seen within the larger context of the program. The paper describes an accompanying library, which can be used to develop visualization for user data structures quickly. The paper then compares jGRASP with similar toolkits. General-purpose animation software, systems for data structures, and systems for debugging are compared. The paper concludes with the authors’ plans to conduct experiments to confirm the effectiveness of the project.
#!bibtex (-)
@inproceedings{hendrixextensible,
author = {T.D.Hendrix, J.H. Cross II and L.A. Barowski},
title = {An Extensible Framework for Providing Dynamic Data Structure Visualizations in Lightweight IDE},
booktitle = {SIGCSE '04: Proceedings of the thirty-fifth SIGCSE technical symposium on Computer science Education},
year = {2004},
pages = {387--391}
}
Hubscher-Younger 2001
#!bibtex (-)
@inproceedings{strategyandculture,
author = {T. Hubscher-Younger and N. H. Narayanan},
title = {How undergraduate students' learning strategy and culture effects algorithm animation use and interpretation},
booktitle = {Proceedings, IEEE International Conference on Advanced Learning Technologies},
year = {2001},
pages = {113--116},
location = {Madison, WI},
keywords = {algorithm animation, computer science education}
}
Hundhausen 2000
Introduction: Intution implies that making algorithms more concrete aids understanding, thus algorithm visualizations were invented. A few experiments have shown that AV technology is useful, and analysis has shown that two factors are usually tested: representational characteristics and learner involvement. Learner involvement shows consistent significant results, whereas representation show very little significane to learning outcomes. This paper discusses two ethnographic experiments using junior-level algorithms, one where students made "polished" visualizations and another with "unpolished" visualizations. The study showed that constructing the polished visualizations actually distracted students from true understanding of the mechanics of visualizations.
#!bibtex (-)
@inproceedings{studentsorexperts,
author = {Christopher Hundhausen and Sarah Douglas},
title = {Using visualizations to learn algorithms: should students construct their own, or view an expert's?},
booktitle = {Proceedings, IEEE Symposium on Visual Languages},
year = {2000},
pages = {21--28},
location = {Seattle, WA},
keywords = {computer aided instruction, computer science education, algorithm learning}
}
+Hundhausen 2002
This is one of the most influential papers in the AV literature. It summarizes and characterizes the preceding literature related to evaluating AVs. It shows that many AV evaluations have been unable to show pedagogical effectiveness, while others do show pedagogical benefit. Understanding why some uses of AVs are successful while others are not is crucial to the future of the field.
Introduction: short history of AV, how it's been used. Evidence that AV has not caught on in the classroom, and reasons why. Motivation for paper: idea that AV is not educationally effective. Previous taxonomies: three questions of expressiveness. 20 experimental studies show mixed reviews; this meta-study attempts to understand trends in those mixed reviews. Research questions: what factors influence effectiveness? how do studies define effectiveness? Broad questions: is AV tech effective? what directions should AV tech go?
Scope: describes what is included/excluded from this meta-study. Strictly CSE work, not algorithms research etc. Use scenarios: lecture, assignments, class discussion, laboratories, study, office hours, tests. Research/assessment techniques: anecdotal, programmatic, analytic, empirical (Hundhausen excludes everything but empirical). Restricted to controlled experimentation.
Data: 24 experimental studies--probably the entire corpus of such. 11/24 studies find a significant result. 2 studies find entangled results. 1 study even finds a negative result.
Method: Statistical meta-analysis explained, rejected. Studies must be classified and then compared within class.
Analysis: Begin by scrutinizing independent variables. Four alternative learning theories linked to studies by way of IVs. Epistemic Fidelity (10 studies), Dual-Coding (2 studies), Individual Differences (2 studies), Cognitive Constructivism (14 studies). CC has highest percentage of support for differences due to AV. Active learning more powerful than passive learning--level of engagement far more important than particular type of engagement. When tested against all studies, this still held. Dependent variables: checking what and how knowledge is measured. Procedural knowledge seems more sensitive to AV effects than conceptual questions. Pre-test/post-test improvement seems to be more sensitive than post-test alone.
Conclusions: 1) How students use AV, rather than what they see, has the greatest impact on educational effectiveness. 2) Pre-test/post-test experiments on procedural knowledge seem to be the most sensitive to improvement, but this is a weak finding. 3) AV technology is effective when the technology is used to actively engage students in the process. 4) Directions for future work include studying learning theories other than EF and CC, looking into situated action and sociocultural theories, expanding the scope of empirical techniques used for research, and considering AV applications outside of education.
#!bibtex (-)
@article{viseffectiveness,
author = {C. Hundhausen and S. A. Douglas and J. T. Stasko},
title = {A meta-study of algorithm visualization effectiveness},
URL = {http://www.cc.gatech.edu/~john.stasko/papers/jvlc02.pdf},
year = {2002},
journal = {Journal of Visual Languages and Computing}
volume = 13,
pages = {259--290}
}
Inhantola 2005
http://doi.acm.org/10.1145/1089786.1089798
#!bibtex (-)
@inproceedings{effortlesscreation,
author = {Petri Ihantola and Ville Karavirta and Ari Korhonen and Jussi Nikander},
title = {Taxonomy of effortless creation of algorithm visualizations},
booktitle = {ICER '05: Proceedings of the 2005 international workshop on Computing education research},
year = {2005},
isbn = {1-59593-043-4},
pages = {123--133},
location = {Seattle, WA, USA},
doi = {http://doi.acm.org/10.1145/1089786.1089798},
publisher = {ACM Press},
address = {New York, NY, USA},
}
*Ingargiola 1994
http://doi.acm.org/10.1145/191029.191048
#!bibtex (-)
@inproceedings{repository,
author = {Giorgio Ingargiola and Nathan Hoskin and Robert Aiken and Rajeev Dubey and Judith Wilson and Mary-Angela Papalaskari and Margaret Christensen and Roger Webster},
title = {A repository that supports teaching and cooperation in the introductory AI course},
booktitle = {SIGCSE '94: Proceedings of the twenty-fifth SIGCSE symposium on Computer science education},
year = {1994},
isbn = {0-89791-646-8},
pages = {36--40},
location = {Phoenix, Arizona, United States},
doi = {http://doi.acm.org/10.1145/191029.191048},
publisher = {ACM Press},
address = {New York, NY},
}
Jain 2005
http://doi.acm.org/10.1145/1167350.1167438
#!bibtex (-)
@inproceedings{1167438,
author = {Jhilmil Jain and James H. Cross, II and Dean Hendrix},
title = {Qualitative comparison of systems facilitating data structure visualization},
booktitle = {ACM-SE 43: Proceedings of the 43rd annual southeast regional conference},
year = {2005},
isbn = {1-59593-059-0},
pages = {309--314},
location = {Kennesaw, Georgia},
doi = {http://doi.acm.org/10.1145/1167350.1167438},
publisher = {ACM Press},
address = {New York, NY, USA},
}
Jarc 1998
Related to the Interactive Data Structure Visualizations (IDSV) project.
#!bibtex (-)
@inproceedings{DBLP:conf/sigada/JarcF98,
author = {Duane J. Jarc and
Michael B. Feldman},
title = {An Empirical Study of Web-Based algorithm Animation Courseware
in an Ada Data Structure Course},
booktitle = {SIGAda},
year = {1998},
pages = {68-74},
ee = {http://doi.acm.org/10.1145/289524.289534},
bibsource = {DBLP, http://dblp.uni-trier.de}
}
Jarc 2000
http://doi.acm.org/10.1145/330908.331889
This paper discusses the pedagogical effectiveness of algorithm visualizations. We generally expect that using AV would improve and facilitate learner’s understandings and AV would provides a better alternatives to classic written and verbal presentation such as textbooks and lectures. Jarc et al. tried to show whether AVs are really effective in practice. The goal of this study is to show that the effect of using the interactive prediction feature provided by AV generates a significant learning advantage on student’s performance. However, their result showed that a negative effects: Although students using the AV spent significantly more time on learning and using their interactive version of study materials, their performance was worse in results of post-tests than non-interactive group’s result. They used Interactive Data Structure Visualization (IDSV) software which asks predictive questions of the students as they watched an algorithm as the interactive tool. For this negative result, they hypothesize that this ineffectiveness is because poorer students merely treated the interactive questions as a game. Once they became lost in watching an algorithm, they completed the questions simply by making guesses.
#!bibtex (-)
@inproceedings{assessbenefits,
author = {Duane J. Jarc and Michael B. Feldman and Rachelle S. Heller},
title = {Assessing the benefits of interactive prediction using Web-based algorithm animation courseware},
booktitle = {SIGCSE '00: Proceedings of the thirty-first SIGCSE technical symposium on Computer science education},
year = {2000},
isbn = {1-58113-213-1},
pages = {377--381},
location = {Austin, Texas, United States},
doi = {http://doi.acm.org/10.1145/330908.331889},
publisher = {ACM Press},
address = {New York, NY, USA},
}
*Jerding 1997
#!bibtex (-)
@inproceedings{253356,
author = {Dean F. Jerding and John T. Stasko and Thomas Ball},
title = {Visualizing interactions in program executions},
booktitle = {ICSE '97: Proceedings of the 19th international conference on Software engineering},
year = {1997},
isbn = {0-89791-914-9},
pages = {360--370},
location = {Boston, Massachusetts, United States},
doi = {http://doi.acm.org/10.1145/253228.253356},
publisher = {ACM Press},
address = {New York, NY, USA},
}
+Kann 1999
http://dx.doi.org/10.1016/S0360-1315(97)00015-8
Presents an empirical experiment how animation in AV can be useful for learning algorithm. More specifically, this paper addresses two issues: the first is whether having the students implement the target algorithm themselves actively using the information provided by the animation as a part of the overall learning experience makes a difference in the ability of the subjects to understand the algorithm. Their result strongly argues that those ways increases the effectiveness of instruction for the algorithm. The second issue is to examine whether there is educational value in having students use a programming library of problem specific functions when they actually implement the algorithm animation.
This paper has been written to test whether or not viewing an animation about an algorithm improves user understanding and also to test whether or not coupling the animation and implementation of the algorithm would improve the learning outcomes.
The paper opens up with well-defined research questions and well-connected background and introduction, but the results explained in the paper have a few problems due to the experimental design of the study. First of all, it is not a fair experiment design to provide additional material to a group of subjects and comparing the post-test performance of those subjects with another group which did not get any other alternative additional material. In this study authors are comparing post-test scores of subjects who have seen an animation in addition to the text information about the algorithm to a group of subjects who only had the text information about the algorithm. It is the same situation for comparing the performance of subjects who constructed the algorithm and subject who did not construct the algorithm. Authors should have provided a lecture or a talk or any other alternative material for subjects who did view the animation. They might also have provided an alternative way of developing the understanding of the algorithm like being able to test themselves and see the result to the subjects who did not construct the algorithm. This is a very common problem of experimenting in the algorithm visualization field. Yes, viewing an animation improves learning outcomes, but to what extent and as compared to what other alternative? I do not think the results of the experiment in terms of the “viewing animation improves learning outcomes” says something different than what is obvious.
Furthermore, experiment design has also other problems. Authors restricted the experiment time in the animation construction version with 2 hours. The participants were students of a class and I believe that authors might have given them unlimited time. Restricting the time in this treatment caused a result which disagrees with the previous results in the literature which indicates that programming an algorithm improves learning outcomes. This is why, authors tried not to question the results related to the animation construction.
In conclusion, I think the paper is well-organized and touching very important issues in the algorithm visualization field, such as learning outcomes of animations and how to improve it. They did however accept the fact that their experiment design restricted to have more conclusions about the study. The paper’s results were limited in terms of what can be concluded from this study, due to the problems in the experiment design.
#!bibtex (-)
@article{integratinganimation,
author = {Charles Kann and Robert W. Lindeman and Rachelle Heller},
title = {Integrating algorithm animation into a learning environment},
journal = {Comput. Educ.},
volume = {28},
number = {4},
year = {1997},
issn = {0360-1315},
pages = {223--228},
doi = {http://dx.doi.org/10.1016/S0360-1315(97)00015-8},
publisher = {Elsevier Science Ltd.},
address = {Oxford, UK},
}
Kehoe 2001
http://dx.doi.org/10.1006/ijhc.2000.0409
Introduction: Motivation--fundamental to programming is understanding algorithms. Intuition leads to AV--student self-report corroborates. Empirical research says differently, however. Disconnect may be that AV tech has outpaced AV understanding. List of studies with disappointing/mixed results. List of studies in other fields using visualization, but dismissal of these as too concrete compared to understanding algorithms (which are abstract).
Motivation: Three possible reasons for failure: no benefit from animation, measurements not sensitive enough, or design of experiment prevents receipt of benefits. Focus on third--mixture of qualitative and quantitative analysis. Homework-style learning situation to determine what students use, how availability of AV affects students, how choices affect performance, and if AV facilitates learning.
Study design: Binomial heap (priority queue data structure) selected (reasons unclear). 12 grad students with no exposure to binomial heaps but expert learners at algorithms. Study gave students questions but fixed no length of time in which to answer them, and learning materials were not taken away before exam. All activity videotaped and students encouraged to verbalize.
Results: Animation group had higher score. Basic mechanics better learned with animation. Animation group tended to refer back to animation more than other media. Animation group took longer to complete tasks (not statistically significant). Discussion with students from each group.
Conclusion: Nothing definitive, but three hypotheses: 1) AV benefit more apparent in open homework sessions rather than closed exam sessions, 2) AV may enhance pedagogy by making an algorithm more accessible (motivation), 3) AV facilitates learning procedural operations of algorithms.
This paper re-questions the pedagogical benefits of the algorithm visualization in a different manner. Authors used a class setting without time limitation. The experiment design is very well planned and almost perfect. The results are deeply explained and convincing.
Authors connects the previous work with their study by explaining the possible reasons why some of the previous studies failed to show algorithm animation’s pedagogical benefits. They state that the reason might also be related to the experiment design. They design their experiment with keeping this fact in mind.
The experiment design is fair to each of the treatments, since it provides almost the same kind of material in each of the treatments, but only the presence of the animation was different. The figures of the operations’ key points are included even for the “non-animation” group. The “homework” scenario was used to test the learning outcomes of each treatment. “Homework” scenario is selected with the belief that it would encourage exploration activities more than “exam” method. Authors aimed to uncover the effects of the algorithm animation more than the traditional exam scenario like in the previous studies.
The results show that there is significant different between the performances of the two groups. The group of students who were able to view the algorithm animation performed better in the “homework” than the group of students who could not. Authors also deeply investigated what subjects thought about the animation, how their thinking process got affected by the animation and all. They also counted the time it takes for the subjects to answer each question. Animation group spent relatively more time on the “homework” than the non-animation group. It shows that as the animation engages with the users more, it grabbed the users’ attention and increased their learning outcomes.
To sum up, the experiment design was brilliant in this study and one of the most complete and well-designed ones in the algorithm animation field. The results were also very convincing and very-well explained. I am totally convinced by the results, especially with the statement “The animations engage students, making learning be more of an interactive experience than a challenging chore. Consequently, the use of algorithm animations will lead to increased time on task, thus facilitating learning, particularly so with complex, challenging subject matter.” These sentences explain how and why algorithm animation improves the learning outcomes.
#!bibtex (-)
@article{373424,
author = {Colleen Kehoe and John Stasko and Ashley Taylor},
title = {Rethinking the evaluation of algorithm animations as learning aids: an observational study},
journal = {Int. J. Hum.-Comput. Stud.},
volume = {54},
number = {2},
year = {2001},
issn = {1071-5819},
pages = {265--284},
doi = {http://dx.doi.org/10.1006/ijhc.2000.0409},
publisher = {Academic Press, Inc.},
address = {Duluth, MN, USA},
}
Khuri 1998
Uses XTANGO to visualize LL(1) and SLR(1) parsing algorithms.
#!bibtex (-)
@inproceedings{Khuri1998,
author = {Sami Khuri and Yanti Sugono},
title = {Animating parsing algorithms.},
booktitle = {SIGCSE '98: Proceedings of the twenty-ninth SIGCSE technical symposium on Computer science education},
year = {1998},
pages = {232-236},
ee = {http://doi.acm.org/10.1145/273133.274303},
bibsource = {DBLP, http://dblp.uni-trier.de}
}
Kraemer 1993
#!bibtex (-)
@article{Kraemer1993,
author = {Eileen Kraemer and John T. Stasko},
title = {The Visualization of Parallel Systems: An Overview.},
journal = {J. Parallel Distrib. Comput.},
volume = {18},
number = {2},
year = {1993},
pages = {105-117},
bibsource = {DBLP, http://dblp.uni-trier.de}
}
+Lawrence 1993
http://portal.acm.org/citation.cfm?coll=GUIDE&dl=GUIDE&id=194146
PhD Dissertation
#!bibtex (-)
@phdthesis{pedagogicaspects,
author = {A. W. Lawrence},
title = {Empirical studies of the value of algorithm animation in algorithm understanding},
school = {Georgia Institute of Technology},
year = {1993},
URL = {http://portal.acm.org/citation.cfm?coll=GUIDE&dl=GUIDE&id=194146}
}
Lawrence 1994
This paper is about a study the authors conducted involving the use of algorithm animations in classroom and laboratory settings. It talks about the results indicated that allowing students to create their own examples in a laboratory session led to higher accuracy on a post-test examination of understanding as compared to students who viewed prepared examples or no laboratory examples. The paper describes various systems, which use different kinds of animations. Then it moves to the study in question. It involved Kruskal’s algorithm. The authors describe the different scenarios involved in the experiment—students were made to construct their own animation in a laboratory setting, some were made to work with prepared examples, and others did not view any animation at all. Their scores were recorded on a post-test and the result analyzed. The authors conclude that preparing their own examples helped the students in the post-test.
This is an empirical study targeting to determine the influence of algorithm animations in classroom and laboratory settings. The authors are trying to provide an answer to an important question: are the algorithm animations superior to transparencies in a lecture presentation? The authors argue that encouraging students to create their own examples in a laboratory session leads to a better understanding of a presented material.
The subjects of the study were students enrolled at the Georgia Tech Institute of Technology enrolled in CS1410, the initial programming course for the computer science major. The algorithm used for visualization is Kurskal’s minimum spanning tree algorithm. This is a well known and extremely important problem in computer science. The experimental setup was as follows: The class was initially split in four groups: lecture/animation, lecture/slides, lecture and lab/animation, lecture and lab/slides. Each lab section was further divided into active and passive subsections. The students in the lecture/animations and lecture/slides groups were presented the same (in advance prepared) lecture, using different techniques: lecture/slides group was presented the lecture using transparencies, while the lecture/animation group was presented the lecture using the animation created by the Polka Algorithm animation software. Lecture and lab/animation and lecture and lab/slides groups were further divided into two different sections: Active and Passive. While the passive section was given the input data files and was required to conduct experiments with the given files, the active subsection was required to create the input files and conduct the experiments using the created files. All groups completed a multiple–choice/true-false online test requiring application or understanding of the algorithm. Groups also completed a free response test on the paper that was designed to require students to articulate concepts relating to understanding the algorithm.
The authors hypothesized that the subjects who received the lecture accompanied by the algorithm animations would outperform the students to whom the lecture was presented via slides. Also, the authors hypothesized that the laboratory session would improve the performance of the students. After conducting a series of experiments to test their hypothesis, the authors have drowned the following conclusions: - The algorithm animation did not make any difference in teaching the algorithm. Furthermore, the group which was presented the animations (without the lab session) performed worse than the group which was presented the transparencies (without the lab session). - The advantage of the interactive laboratory session was confirmed: the students who attended the laboratory sessions and had to create their own data sets performed better than those who did not participate in the lab section or those who did but were given the data sets. - The interactive laboratory section performed the best for the online and free response test. However the advantage of the interactive lab session was larger for the free response test.
One of the results the authors present is that with the online test the groups that received the laboratory session performed better than the groups who did not. This is highly expected and obvious result since the groups who received the laboratory session spent more time on the lecture than the groups who did not attend the laboratory session. Therefore there was almost no necessity to present these results.
In Section 4.1, the authors say that there was no significant difference between the two groups: the lecture accompanied by slides or lectures accompanied by an animation example. Later in the paper the authors justify those results by saying that the questions from the on-line test are more on procedural level than on conceptual level. They also say that these results help to understand which types of learning are not affected by animation. It is not clear why the authors chose to present the mentioned results. Is the on-line test the only test not affected by the animation? If yes, the authors need to prove that. If the answer is no, then what is the reason for presenting the on-line test?
The entire study is rather narrow. The authors use only one algorithm throughout the entire study, and they never specify the reason for choosing that specific algorithm. The study would be more useful if the authors focused on different types of algorithms and determined what are the algorithms (if any) that would benefit the most from the animation.
#!bibtex (-)
@inproceedings{empirical,
author = {A. W. Lawrence and John Stasko and Albert Badre},
title = {Empirically evaluating the use of animations to teach algorithms},
booktitle = {Proceedings, IEEE Symposium on Visual Languages 1994},
year = {1994},
pages = {48--54},
location = {St. Louis, Missouri},
doi = {10.1109/VL.1994.363641},
publisher = {IEEE Computer Society}
}
Mayer
#!bibtex (-)
@article{narrations,
author = {R. E. Mayer and R. B. Anderson},
title = {Animations need narrations: An experimental test of a dual-coding hypothesis},
journal = {Journal of Educational Psychology},
volume = {83},
pages = {484--490}
}
Mockus 2000
Mockus, A., Hibino, S. and Graves, T., A Web-Based Approach to Interactive Visualization in Context, Advanced Visual Interfaces 2000 (AVI'2000) Conference Proceedings. NY: ACM Press, 181-188, 2000.
Mukherjea 1994
http://doi.acm.org/10.1145/196699.196702
#!bibtex (-)
@article{visualdebugging,
author = {Sougata Mukherjea and John T. Stasko},
title = {Toward visual debugging: integrating algorithm animation capabilities within a source-level debugger},
journal = {ACM Transactions on Computer-Human Interaction},
volume = {1},
number = {3},
year = {1994},
issn = {1073-0516},
pages = {215--244},
doi = {http://doi.acm.org/10.1145/196699.196702},
publisher = {ACM Press},
address = {New York, NY},
}
Myers 1990
Myers B.A., Taxonomies of visual programming and program visualization. Journal of Visual languages and Computing 1, 97-123, 1990.
*Naps 1994
http://doi.acm.org/10.1145/191029.191052
Describes the system GAIGS (Generalized Algorithm Illustration Through Graphical Software). This system intends to help convey OO principles to lower division students through showing "snapshots" of "interesting events". Provides no empirical studies.
#!bibtex (-)
@inproceedings{ooapproach,
author = {Thomas L. Naps and Brian Swander},
title = {An object-oriented approach to algorithm visualization --easy, extensible, and dynamic},
booktitle = {SIGCSE '94: Proceedings of the twenty-fifth SIGCSE symposium on Computer science education},
year = {1994},
isbn = {0-89791-646-8},
pages = {46--50},
location = {Phoenix, Arizona, United States},
doi = {http://doi.acm.org/10.1145/191029.191052},
publisher = {ACM Press},
address = {New York, NY, USA},
}
Naps 1996
Uses Naps' GAIGS system to visualize variable scope and parameter passing.
#!bibtex (-)
@inproceedings{Naps1996,
author = {Thomas L. Naps and Jeremy Stenglein},
title = {Tools for visual exploration of scope and parameter passing
in a programming languages course.},
booktitle = {SIGCSE '96: Proceedings of the twenty-seventh SIGCSE technical symposium on Computer science education},
month = {March},
year = {1996},
pages = {305-309},
ee = {http://doi.acm.org/10.1145/236452.236561},
bibsource = {DBLP, http://dblp.uni-trier.de}
}
*Naps 2000
#!bibtex (-)
@inproceedings{331829,
author = {Thomas L. Naps and James R. Eagan and Laura L. Norton},
title = {JHAV\'{E}: An environment to actively engage students in Web-based algorithm visualizations},
booktitle = {SIGCSE '00: Proceedings of the thirty-first SIGCSE technical symposium on Computer science education},
year = {2000},
isbn = {1-58113-213-1},
pages = {109--113},
location = {Austin, Texas, United States},
doi = {http://doi.acm.org/10.1145/330908.331829},
publisher = {ACM Press},
address = {New York, NY, USA},
}
Naps 2002
Working group report from ITiCSE 2002 on exploring the role of visualization and engagement in computer science education. This paper provides a good overview of a number of topics related to AV research, and serves as a good overview of the field up to the point when this paper was published. Note that the information contained is becoming dated, as it primarily addresses the state of the field prior to widespread use of Java. Important items addressed: (1) Various surveys of CS faculty that indicate strong support for the idea of using AVs in courses. (2) Review of key papers that survey the pedagogical effectiveness of AVs. A primary conclusion is that the difference between success and failure of AVs is the level of engagement of students. (3) Taxonomy of methods of engagement of students. (4) Discussion of Bloom's taxonomy with respect to AVs. (5) An experimental framework for future research on pedagogical effectiveness of AVs.
#!bibtex (-)
@inproceedings{782998,
author = {Thomas L. Naps and Guido R\"{o}\ssling and Vicki Almstrum and Wanda Dann and Rudolf Fleischer and Chris Hundhausen and Ari Korhonen and Lauri Malmi and Myles McNally and Susan Rodger and J. \'{A}ngel Vel\'{a}zquez-Iturbide},
title = {Exploring the role of visualization and engagement in computer science education},
booktitle = {ITiCSE-WGR '02: Working group reports from ITiCSE on Innovation and technology in computer science education},
year = {2002},
pages = {131--152},
location = {Aarhus, Denmark},
doi = {http://doi.acm.org/10.1145/960568.782998},
publisher = {ACM},
address = {New York, NY, USA},
}
Naps 2003
Working group report from ITiCSE 2002 on evaluating the impact of visualization in computer science education. This paper considers the disconnect between the belief held by instructors that visualization helps students learn, and the integration of visualization techniques in classroom instruction. The authors explore this from the point of view of the instructor. They discuss the various impediments faced by the instructors—find, download, install, learn, develop if necessary, adapt and integrate into the course, teach, maintain, and upgrade the visualizations—and offer guidelines to develop algorithm visualizations and suggest techniques to measure the satisfaction of the instructor. They authors suggest ways to disseminate algorithm visualizations so that to make it easier for instructors to find them. They also inspect various forms of evaluation, and the impact of student learning styles on learner outcomes.
This paper has been written with the premise that algorithm visualizations can make a significant impact on CS education only if they get widely used and they result in positive learner outcomes. Thus, the paper discusses the ways to research about the factors that would influence instructor satisfaction. It also discusses the ways to measure learner outcomes.
The factors that are affecting instructor satisfaction are not very-well studied in the literature. The authors state that as the deployment of visualizations are important in increasing the impact of these visualizations, the factors influencing instructor satisfaction should be considered. I partially agree with that, since without classroom usage of visualizations, only curious students who search for these visualizations utilize them and the impact of the visualizations will not be significant in the CS education. I also believe that visualizations should not be the only teaching method in class due to the variance In the learning styles of the students. Yes, the usage of visualizations should increase in the classrooms, but no it should not be the only way to teach a course. My belief is that the usage of visualizations should be supporting the lecture, decreasing the effort to give examples for instructors and serving as an additional study tool for students.
The authors discuss about ways to measure instructor satisfaction from visualizations to overcome the impediments to the deployment of visualizations. I agree with most of the points listed in the section 2, but I also think that another up-most important thing to increase instructor satisfaction is evaluating the usability of visualizations and improve their usability accordingly. A visualization which has a usable interface would not need much effort from the instructor in both learning and teaching how to use the tool. I also do not believe in the “capture larger concepts” idea. A visualization might be about only one specific subject like “algorithms in action” visualization, but it would still satisfy instructors. I think instead of “capturing larger concept”, registering tools on repositories, disseminating them is more important and meaningful, because repositories will already be serving for “capturing larger concepts”. Moreover, evaluation for increasing instructor satisfaction part includes well-thought evaluation ideas.
Authors also discussed the ways to evaluate learner outcomes and provided a guideline for it. Most of the points mention in this section have already been used by some studies in the literature. But I did not see any evaluation methods by using “student evaluation to visualization”. I think it is a bit out of the concept, since not how much a student pays attention to the visualization, but how much he learns from it is more important. I believe that most of the time student’s attention on the visualization would not give us an idea about the impact of the visualization on the learning outcomes.
To sum up, I think this paper touches an important point in the algorithm visualization field. This point is the importance of overcoming the impediments to the deployment of visualizations and increasing instructor satisfaction. If this can be achieved, then the usage of the visualizations in class and out of the class will increase; and this will be followed by many more studies to evaluate visualizations and to create the best visualizations.
#!bibtex (-)
@inproceedings{960540,
author = {Thomas Naps and Stephen Cooper and Boris Koldehofe and Charles Leska and Guido R\"{o}\ssling and Wanda Dann and Ari Korhonen and Lauri Malmi and Jarmo Rantakokko and Rockford J. Ross and Jay Anderson and Rudolf Fleischer and Marja Kuittinen and Myles McNally},
title = {Evaluating the educational impact of visualization},
booktitle = {ITiCSE-WGR '03: Working group reports from ITiCSE on Innovation and technology in computer science education},
year = {2003},
pages = {124--136},
location = {Thessaloniki, Greece},
doi = {http://doi.acm.org/10.1145/960875.960540},
publisher = {ACM},
address = {New York, NY, USA},
}
Naps 2006
#!bibtex (-)
@inproceedings{AVpanelSIGCSE06,
author = {Thomas Naps and Susan Rodger and Guido Roessling and Rockford Ross},
title = {Animation and Visualization in the Curriculum: Opportunities, Challenges, and Successes},
booktitle = {SIGCSE '06: Proceedings of the Thirty-Seventh SIGCSE Technical Symposium on Computer Science Education},
year = {2006},
pages = {328--329},
location = {Houston, Texas, United States},
publisher = {ACM Press},
address = {New York, NY},
}
Palmiter 1991
Palmiter, S., & Elkerton, J., An evaluation of animated demonstrations for learning computer-based tasks. Proceedings of the ACM Conference on Human Factors in Computing Systems, 257-263, 1991.
*Pierson 1998
http://doi.acm.org/10.1145/273133.274310
Describes JAWAA (the original version, there is now JAWAA-2). JAWAA takes a text input of commands that it processes. In this way it is similar to SAMBA, but JAWAA also includes an ad hoc collection of higher-order objects such as arrays, stacks, queues, trees, and graphs.
#!bibtex (-)
@inproceedings{jawaa,
author = {Willard C. Pierson and Susan H. Rodger},
title = {Web-based animation of data structures using JAWAA},
booktitle = {SIGCSE '98: Proceedings of the twenty-ninth SIGCSE technical symposium on Computer science education},
year = {1998},
isbn = {0-89791-994-7},
pages = {267--271},
location = {Atlanta, Georgia, United States},
doi = {http://doi.acm.org/10.1145/273133.274310},
publisher = {ACM Press},
address = {New York, NY, USA},
}
Price 1990
Price B., A framework for the automatic animation of concurrent programs. M.S. Thesis, Department of Computer Science, University of Toronto 1990.
Price 1993
Price, B.A., Baecker, R.M., and Small, I.S., A principled taxonomy of software visualization. Journal of Visual Languages and Computing, 4(3): 211-266, 1993.
Rasala 1994
Very interesting paper. Not about algorithm visualization per se, but rather on how algorithm visualization was one part of an active learning exercise in a first-year (CS2??) course. The students were given animations (and implementations) for various sorting algorithms. They had to study the algorithms, and do performance runs on them (including variations on the algorithms, and various test cases such as sorted vs. random data). They had to produce a report on relative performance, both empirical and analytical. Authors report that students became highly engaged and enthusiastic about this, internalizing well the various performance differences. The students reportedly put great effort into doing a good job on their reports.
#!bibtex (-)
@inproceedings{DBLP:conf/sigcse/RasalaPF94,
author = {Richard Rasala and Viera K. Proulx and Harriet J. Fell},
title = {From animation to analysis in introductory computer science.},
booktitle = {SIGCSE '94: Proceedings of the twenty-fifth SIGCSE technical symposium on Computer science education},
year = {1994},
pages = {61-65},
ee = {http://doi.acm.org/10.1145/191029.191057},
bibsource = {DBLP, http://dblp.uni-trier.de}
}
Rieber 1990
Rieber, L.P., Boyce, M.J., & Assad, C., The effects of computer animation on adult learning and retrieval tasks. Journal of Computer-Based Instruction, 17 (2), 46-52. 1990.
Rodger 1996
Rodger, S.H., Integrating animations into courses. In Proceedings of the conference on Integrating technology into computer science education, 72 – 74, 1996.
*Rößling 2000
Describes the Animal animation system.
#!bibtex (-)
@inproceedings{343069,
author = {Guido R\&\#246;\&\#223;ling and Markus Sch\&\#252;er and Bernd Freisleben},
title = {The ANIMAL algorithm animation tool},
booktitle = {ITiCSE '00: Proceedings of the 5th annual SIGCSE/SIGCUE ITiCSEconference on Innovation and technology in computer science education},
year = {2000},
isbn = {1-58113-207-7},
pages = {37--40},
location = {Helsinki, Finland},
doi = {http://doi.acm.org/10.1145/343048.343069},
publisher = {ACM Press},
address = {New York, NY, USA},
}
*Rößling 2002
G. Rössling and B. Freisleben, Animal: A System for Supporting Multiple Roles in Algorithm Animation. Journal of Visual Languages and Computing 13, 2 (2002), 341-354
#!bibtex (-)
@article{RosslingF02,
author = {Guido R{\"o}{\ss}ling and Bernd Freisleben},
title = {ANIMAL: A System for Supporting Multiple Roles in Algorithm Animation},
journal = {J. Vis. Lang. Comput.},
volume = {13},
number = {3},
year = {2002},
pages = {341-354},
ee = {http://dx.doi.org/10.1006/jvlc.2002.0239},
bibsource = {DBLP, http://dblp.uni-trier.de}
}
Roman 1993
Roman, G.C., and Cox, K.C., A taxonomy of program visualization systems. IEEE Computer 26, 11-24, 1993.
#!bibtex (-)
Saraiya 2002
http://scholar.lib.vt.edu/theses/available/etd-08202002-132927/
Master's thesis. This is the complete version of what was later published as #Saraiya2004.
#!bibtex (-)
@mastersthesis{purvithesis,
author = {Purvi Saraiya},
school = {Virginia Polytechnic Institute \& State University},
title = {Effective Features of Algorithm Visualizations},
year = {2002},
keywords = {Pedagogical Effectiveness, Algorithm Visualization, Education},
URL = {http://scholar.lib.vt.edu/theses/available/etd-08202002-132927/}
}
+Saraiya 2004
This paper presents studies on features that influence the effectiveness of algorithm visualizations, such as animation vs. user-controlled pacing; pseudocode; user-supplied vs. system-suppled examples.
#!bibtex (-)
@inproceedings{Saraiya2004,
author = {P. Saraiya and C.A. Shaffer and D.S. McCrickard and C. North},
title = {Effective Features of Algorithm Visualizations},
booktitle = {SIGCSE '04: Proceedings of the 35th SIGCSE Technical
Symposium on Computer Science Education},
address = {Norfolk, VA},
month = {March},
year = 2004,
pages = {382--386}
}
*Shaffer 1996
http://doi.acm.org/10.1145/236452.236527
Describes the Swan visualization system. Swan is an AV support library for C++ that allows users to annotate their C++ programs to generate AVs.
#!bibtex (-)
@inproceedings{swan,
author = {Clifford A. Shaffer and Lenwood S. Heath and Jun Yang},
title = {Using the Swan data structure visualization system for computer science education},
booktitle = {SIGCSE '96: Proceedings of the twenty-seventh SIGCSE technical symposium on Computer science education},
year = {1996},
isbn = {0-89791-757-X},
pages = {140--144},
location = {Philadelphia, Pennsylvania, United States},
doi = {http://doi.acm.org/10.1145/236452.236527},
publisher = {ACM Press},
address = {New York, NY, USA},
}
Shaffer 2007
Based on a collection of approximately 350 links from the AlgoViz Wiki, various statistics about the state of the field of algorithm visualizations are presented. This includes distribution of AVs across topics, across time, across size of project; rate at which access to AV websites are lost, and their overall quality.
#!bibtex (-)
@article{1227366,
author = {Clifford A. Shaffer and Matthew Cooper and Stephen H. Edwards},
title = {Algorithm visualization: a report on the state of the field},
journal = {SIGCSE Bull.},
volume = {39},
number = {1},
year = {2007},
issn = {0097-8418},
pages = {150--154},
doi = {http://doi.acm.org/10.1145/1227504.1227366},
publisher = {ACM},
address = {New York, NY, USA},
}
Stasko 1990
#!bibtex (-)
@article{xtangoieee,
author = {John Stasko},
title = {Tango: a framework and system for algorithm animation},
journal = {Computer},
volume = {23},
number = {9},
year = {1990},
issn = {0018-9162},
pages = {27--39},
doi = {10.1109/2.58216},
publisher = {IEEE Computer Society}
}
*Stasko 1992
http://doi.acm.org/10.1145/130956.130959
#!bibtex (-)
@article{xtango,
author = {John Stasko},
title = {Animating algorithms with XTANGO},
journal = {SIGACT News},
volume = {23},
number = {2},
year = {1992},
issn = {0163-5700},
pages = {67--71},
doi = {http://doi.acm.org/10.1145/130956.130959},
publisher = {ACM Press},
address = {New York, NY, USA},
}
Stasko 1992b
Stasko, J., and Patterson, C., Understanding and Characterizing Software Visualization Systems, Proceedings of the 1992 IEEE International Workshop on Visual Languages, pp. 3-10, September 1992.
#!bibtex (-)
+*Stasko 1993a
http://doi.acm.org/10.1145/169059.169078
This paper contains a study that shows that "rewind" is a necessary feature for an animation.
#!bibtex (-)
@inproceedings{affectlearning,
author = {John Stasko and Albert Badre and Clayton Lewis},
title = {Do algorithm animations assist learning?: an empirical study and analysis},
booktitle = {CHI '93: Proceedings of the SIGCHI conference on Human factors in computing systems},
year = {1993},
isbn = {0-89791-575-5},
pages = {61--66},
location = {Amsterdam, The Netherlands},
doi = {http://doi.acm.org/10.1145/169059.169078},
publisher = {ACM Press},
address = {New York, NY, USA},
}
+*Stasko 1993b
#!bibtex (-)
@article{Stasko1993b,
author = {John T. Stasko and Eileen Kraemer},
title = {A Methodology for Building Application-Specific Visualizations of Parallel Programs.},
journal = {J. Parallel Distrib. Comput.},
volume = {18},
number = {2},
year = {1993},
pages = {258-264},
bibsource = {DBLP, http://dblp.uni-trier.de}
}
Stasko 1993c
Stasko, J.T., and Kraemer, E., The Visualization of Parallel Systems: An Overview, Journal of Parallel and Distributed Computing, Vol. 18, No. 2, pp. 105-117, June 1993.
#!bibtex (-)
Stasko 1996
Stasko J. T., and Kehoe C., Using Animations to Learn about Algorithms: An Ethnographic Case Study, Graphics, Visualization, and Usability Center, Georgia Institute of Technology, Atlanta, GA, Technical Report GIT-GVU-96-20, September 1996.
#!bibtex (-)
Stasko 1997 ICSE
Stasko, J.T., Ball T., Jerding, D.J., Visualizing Interactions in Program Executions. ICSE: 360-370, 1997.
#!bibtex (-)
*Stasko 1997
http://doi.acm.org/10.1145/268084.268091
Using SAMBA, students in an undergraduate algorithms class built visualizations of sorting and graph algorithms as class assignments. SAMBA is a front-end for Polka. SAMBA takes text commands as input, and converts this into a Polka program. The SAMBA command sequence is typically generated by a program running the algorithm, and so is a trace of the algorithm's "interesting events." Students found this fairly easy and fun. Not much data presented on whether this helps them learn the algorithm better.
#!bibtex (-)
@inproceedings{studentbuilt,
author = {John T. Stasko},
title = {Using student-built algorithm animations as learning aids},
booktitle = {SIGCSE '97: Proceedings of the twenty-eighth SIGCSE technical symposium on Computer science education},
year = {1997},
isbn = {0-89791-889-4},
pages = {25--29},
location = {San Jose, California, United States},
doi = {http://doi.acm.org/10.1145/268084.268091},
publisher = {ACM Press},
address = {New York, NY, USA},
}
Stasko, et al, 1998: Software Visualization
A good overview of the field of Software Visualization, which includes algorithm visualization. This book sets the context of algorithm visualization, and collects a lot of disparate knowledge available at the time. Like any book at this point in history, it is intrinsically harder to come by than the research papers on which it is based. But this book is better unified than simply a collection of the associated papers. It is somewhat dated, in that nearly all of the material comes from the early/mid 1990's, and so it completely pre-dates the Java revolution (I don't think Java is even mentioned in the book). Therefore, none of the systems described are still used. But many of the ideas on developing AVs are useful to modern developers.
#!bibtex (-)
@book{SVBook98,
editor = {John T. Stasko and John Domingue and Marc H. Brown and Blaine A. Price},
title = {Software Visualization},
year = {1998},
isbn = {0262193957},
publisher = {MIT Press},
address = {Cambridge, MA, USA},
}
Stasko 2001
Stasko, J.T., Kehoe, C.M., and Talor, A.T., Rethinking the evaluation of algorithm animations as learning aids: an observational study. International Journal of Human Computer Studies 54(2): 265-284, 2001.
#!bibtex (-)
Schweitzer 1992
This paper includes a study that shows pseudocode window (not real code) is helpful
#!bibtex (-)
@inproceedings{Schweitzer1992,
author = {Dino Schweitzer},
title = {Designing interactive visualization tools for the graphics classroom.},
booktitle = {SIGCSE '92: Proceedings of the twenty-third SIGCSE technical symposium on Computer science education},
year = {1992},
pages = {299-303},
ee = {http://doi.acm.org/10.1145/134510.134569},
bibsource = {DBLP, http://dblp.uni-trier.de}
}
Wiggins 1998
http://doi.acm.org/10.1145/275295.275358
#!bibtex (-)
@inproceedings{wigginsoverview,
author = {Melissa Wiggins},
title = {An overview of program visualization tools and systems},
booktitle = {ACM-SE 36: Proceedings of the 36th annual Southeast regional conference},
year = {1998},
isbn = {1-58113-030-9},
pages = {194--200},
doi = {http://doi.acm.org/10.1145/275295.275358},
publisher = {ACM Press},
address = {New York, NY, USA},
}
Wilson 1996
http://doi.acm.org/10.1145/237466.237534
#!bibtex (-)
@inproceedings{animationsystems,
author = {Judith Wilson and Robert Aiken and Irvin Katz},
title = {Review of animation systems for algorithm understanding},
booktitle = {ITiCSE '96: Proceedings of the 1st conference on Integrating technology into computer science education},
year = {1996},
isbn = {0-89791-844-4},
pages = {75--77},
location = {Barcelona, Spain},
doi = {http://doi.acm.org/10.1145/237466.237534},
publisher = {ACM Press},
address = {New York, NY, USA},
}
Yang 1995
http://people.cs.vt.edu/~shaffer/Papers/gd95fin.pdf
#!bibtex (-)
@inproceedings{YangSwan,
author = {Jun Yang and Clifford A. Shaffer and Lenwood S. Heath},
title = {SWAN: A Student-Controllable Data Structure Visualization System},
booktitle = {Proceedings of Graph Drawing '95},
year = {1995},
month = {September},
location = {Passau, Germany},
publisher = {Springer Lecture Notes in Computer Science 1027},
pages = {520--523},
}