Abstract
The literature on algorithm visualizations addresses a number of important issues for educational use, such as instructional uses, graphical formats, effort of adoption, etc. However, there is a lack of clear principles to guide the construction of educationally effective visualizations. We have addressed an analysis of visualizations concerning three basic algorithm design techniques (divide and conquer, backtracking and dynamic programming). The material was the illustrations found in a number of prestigious algorithm textbooks, which prove to be high-quality sources. One contribution of this chapter is the final list of fields used to characterize visualizations, given that they embody the key features of illustrations. A second contribution is an outline of the findings of our analysis, which are a step toward stating design principles for algorithm visualizations.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
References
S. Fincher and M. Petre. Computer Science Education Research. London, UK: Routledge, 2004.
R. Lister. The naughties in CSEd research: A retrospective. In SIGCSE Inroads, volume 1, no. 1, pp. 22–24, March 2010.
C. Hundhausen, S. Douglas and J. Stasko. A meta-study of algorithm visualization effectiveness. In Journal of Visual Languages and Computing, volume 13, no. 3, pp. 259–290, June 2002.
T. Naps, G. Roessling, V. Almstrum, W. Dann, R. Fleischer, C. Hundhausen, A. Korhonen, L. Malmi, M. McNally, S. Rodger and J. Á. Velázquez-Iturbide. Exploring the role of visualization and engagement in computer science education. In SIGCSE Bulletin, volume 35, no. 2, pp. 131–152, June 2003.
M. Ben-Ari. Constructivism in computer science education. In Journal of Computers in Mathematics and Science Teaching, volume 20, no. 1, pp. 45–73, 2001.
E. Wenger. Intelligent Tutoring Systems. Los Altos, CA: Morgan Kaufmann, 1987.
T. L. Naps, G. Roessling, J. Anderson, S. Cooper, W. Dann, R. Fleischer, B. Koldehofe, A. Korhonen, M. Kuittinen, C. Leska, L. Malmi, M. McNally, J. Rantakokko and R. J. Ross. Evaluating the educational impact of visualization. In SIGCSE Bulletin, volume 35, no. 4, pp. 124–136, December 2003.
P. Ihantola, V. Karavirta, A. Korhonen and J. Nikander. Taxonomy of effortless creation of algorithm visualization. Proceedings of the 2005 International Workshop on Computing Education Research, ICER 2005, pp. 123–133.
R. Ben-Bassat Levy and M. Ben-Ari. Perceived behavior control and its influence on the adoption of software tools. In Proceedings of the 13th Annual Conference on Innovation and Technology in Computer Science education, ITiCSE 2008, pp. 169–173.
P. Saraiya, C. A. Shaffer, D. S. McCrickard and C. North. Effective features of algorithm visualizations. In Proceedings of the 35th Technical Symposium on Computer Science Education, SIGCSE 2004, pp. 382–386.
D. Norman. Some observations on mental models. In Mental Models, D. Gentner and A. Stevens, Eds. Hillsdale, NJ: Erlbaum, 1983, pp. 7–14.
G. Roessling and T. L. Naps. A testbed for pedagogical requirements in algorithm visualizations. In Proceedings of the 7th Annual Conference on Innovation and Technology in Computer Science education, ITiCSE 2002, pp. 96–100.
S. Pollack and M. Ben-Ari. Selecting a visualization system. In Proceedings of the Third Program Visualization Workshop, PVW 2004, pp. 134–140.
P. A. Gloor. User interface issues for algorithm animation. In Software Visualization, J. Stasko, J. Domingue, M. H. Brown and B. A. Price, Eds. Cambridge, MA: MIT Press. 1998, pp. 145–152.
B. A. Price, R. Baecker and I. Small. An introduction to software visualization. In Software Visualization, J. Stasko, J. Domingue, M. H. Brown and B. A. Price, Eds. Cambridge, MA: MIT Press. 1998, pp. 3–27.
V. Karavirta, A. Korhonen, L. Malmi and T. Naps. A comprehensive taxonomy of algorithm animation languages. In Journal of Visual Languages and Computing, volume 21, pp. 1–22, 2010.
M. H. Brown. A taxonomy of algorithm animation displays. In Software Visualization, J. Stasko, J. Domingue, M. H. Brown and B. A. Price, Eds. Cambridge, MA: MIT Press. 1998, pp. 35–42.
J. Urquiza-Fuentes and J. Á. Velázquez-Iturbide. A survey of program visualizations for the functional paradigm. In Proceedings of the Third Program Visualization Workshop, PVW 2004, pp. 2–9.
P. Romero, R. Cox, B. du Boulay and R. Lutz. A survey of external representations employed in object-oriented programming environments. In Journal of Visual Languages and Computing, volume 14, pp. 387–419, 2003.
M. H. Brown and J. Hershberger. Fundamental techniques for algorithm animation displays. In Software Visualization, J. Stasko, J. Domingue, M. H. Brown and B. A. Price, Eds. Cambridge, MA: MIT Press. 1998, pp. 81–89.
M. H. Brown and M. A. Najork. Algorithm animation using interactive 3D graphics. In Software Visualization, J. Stasko, J. Domingue, M. H. Brown and B. A. Price, Eds. Cambridge, MA: MIT Press. 1998, pp. 119–135.
L. Stern and L. Naish. Visual representations for recursive algorithms. In Proceedings of the 33th SIGCSE Technical Symposium on Science Education, SIGCSE 2002, pp. 196–200.
J. Á. Velázquez-Iturbide, A. Pérez-Carrasco and J. Urquiza-Fuentes. A design of automatic visualizations for divide-and-conquer algorithms. In Electronic Notes in Theoretical Computer Science, no. 224, pp. 113–120, January 2009.
J. Á. Velázquez-Iturbide, D. Redondo-Martín, C. Pareja-Flores and J. Urquiza-Fuentes. An instructor’s guide to design web-based algorithm animations. In Advances in Web-Based Learning – ICWL 2007, LNCS 4823, Springer-Verlag. 2008, pp. 440–451.
S. Hansen, D. Schrimpsher and N. H. Narayanan. Designing educationally effective algorithm animations. In Journal of Visual Languages and Computing, volume 13, pp. 291–317, 2002.
L. Stern, H. Sondergaard and L. Naish. A strategy for managing content complexity in algorithm animation. In Proceedings of the 4 th Annual Conference on Innovation and Technology in Computer Science Education, ITiCSE 1999, pp. 127–130.
J. Á. Velázquez-Iturbide, O. Debdi, N. Esteban-Sánchez and C. Pizarro. GreedEx: A visualization tool for experimentation and discovery learning of greedy algorithms. In IEEE Transactions on Learning Technologies, in press.
J. Á. Velázquez-Iturbide. Characterizing time and interaction in a space of software visualizations. In Proceedings of the Sixth Program Visualization Workshop, PVW 2011, pp. 43–51.
K. Sugiyama. Graph Drawing and Applications for Software and Knowledge Engineers. Singapore: World Scientific, 2002.
P. di Batista, G. Eades, T. Tamassia and I. Tollis. Graph Drawing: Algorithms for the Visualization of Graphs. Prentice-Hall, 1999.
J. Bertin. Semiology of Graphics. Madison, WI: University of Wisconsin Press, 1983.
W. Cleveland. Visualizing Data. Mummit, NJ: Hobart Press, 1993.
M. Agrawala, W. Li and F. Berthouzoz. Design principles for visual communication. In Communications of the ACM, volume 54, no. 4, pp. 60–69, April 2011.
L. Fernández-Muñoz and J. Á. Velázquez-Iturbide. Estudio sobre la visualización de las técnicas de diseño de algoritmos. In Interacción’06: Actas del VII Congreso Internacional de Interacción Persona-Ordenador, pp. 315–324.
M. H. Alsuwaiyel. Algorithms, Design Techniques and Analysis. World Scientific, 1999.
G. Brassard and P. Bratley. Algorithmics: Theory and Practice. Prentice-Hall, 1988.
G. Brassard and P. Bratley. Fundamentals of Algorithmics. Prentice-Hall, 1996.
T. H. Cormen, C. E. Leiserson and R. L. Rivest. Introduction to algorithms. Cambridge, MA: MIT Press, 2nd ed., 2001.
J. Gonzalo-Arroyo and M. Rodríguez-Artacho. Esquemas algorítmicos: enfoque metodológico y problemas resueltos. Madrid, Spain: Universidad Nacional de Educación a Distancia, 1997.
R. Johnsonbaugh and M. Schaefer. Algorithms. Pearson Education, 2004.
J. Kleinberg and É. Tardos. Algorithm Design. Pearson Addison-Wesley, 2006.
R.C.T., Lee, S.S., Tseng, R.C., Chang and Y.T. Tsai. Introduction to the Design and Analysis of Algorithms. Singapore: McGraw-Hill, 2005.
A. Levitin. The Design of Analysis of Algorithms. Addison-Wesley. 2003.
N. Martí-Oliet and Ortega and J. A. Verdejo. Estructuras de datos y métodos algorítmicos ejercicios resueltos. Madrid, Spain: Pearson, 2004.
I. Parberry. Problems on Algorithms. Prentice–Hall, 2002.
S. Sahni. Data Structures, Algorithms and Applications in Java. Summit, NJ: Silicon Press, 2005.
M. A. Weiss. Data Structures and Algorithms Analysis. Addison-Wesley, 1992.
S. Baase and A. Van Gelder. Computer Algorithms: Introduction to Design and Analysis. Addison-Wesley Longman, 2000.
M. T. Goodrich and R. Tamassia. Data Structures and Algorithms in Java. John Wiley & Sons, 2nd ed., 2001.
E. Horowitz and S. Sahni. Fundamentals of Computer Algorithms. Pitman, 1978.
R. Neapolitan and K. Naimipour. Foundations of Algorithms. Jones and Bartlett, 1997.
R. Sedgewick. Algorithms in Java. Addison-Wesley, 2002.
S. Skiena. The Algorithm Design Manual. Berlin, Germany: Springer-Verlag, 1998.
A. Pérez-Carrasco, J. Á. Velázquez-Iturbide and F. Almeida-Martínez. Revisión bibliográfica de la representación de problemas de la técnica «divide y vencerás». In Serie de Informes Técnicos DLSI1-URJC, Universidad Rey Juan Carlos, Spain, no. 2012–02, 2012.
N. Esteban-Sánchez and J. Á. Velázquez-Iturbide. Revisión bibliográfica de problemas resolubles por la técnica de vuelta atrás. In Serie de Informes Técnicos DLSI1-URJC, Universidad Rey Juan Carlos, Spain, no. 2012–03, 2012.
B. Sáenz-Rubio and J. Á. Velázquez-Iturbide. Revisión bibliográfica de algoritmos de programación dinámica. In Serie de Informes Técnicos DLSI1-URJC, Universidad Rey Juan Carlos, Spain, no. 2012–04, 2012.
B. Glaser and A. Strauss. The Discovery of Grounded Theory: Strategies for Qualitative Research. Aldine, 1967.
N. Esteban Sánchez, A. Pérez Carrasco, B. Sáenz Rubio and J. Á. Velázquez Iturbide. Towards the identification of graphical principles for visualizing algorithm design techniques. In Proceedings of the 2012 International Symposium on Computers in Education, SIIE 2012, 5 pp.
J.S. Yi, a. Kang, J.T. Stasko and J.A. Jacko. Toward a deeper understanding of the role of interaction in information visualization. In IEEE Transactions on Visualization and Computer Graphics, volume 13, no. 6, pp. 1.224―1.231, November/December 2007.
Y. K. Leung and M. D. Apperley. A review and taxonomy of distortion-oriented presentation techniques. In ACM Transactions on Computer-Human Interaction, volume 1, no. 2, pp. 126–160. June 1994.
J. Á. Velázquez-Iturbide and A. Pérez-Carrasco. InfoVis interaction techniques in animation of recursive programs. In Algorithms, volume 3, no. 1, pp. 76–91, March 2010.
Acknowledgments
I want to thank Natalia Esteban-Sánchez, Antonio Pérez-Carrasco and Belén Sáenz-Rubio for their collaboration in previous phases of this research. This work was supported by research grant TIN2011-29542-C02-01 of the Spanish Ministry of Economy and Competitiveness.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2014 Springer Science+Business Media New York
About this chapter
Cite this chapter
Velázquez-Iturbide, J.Á. (2014). Using Textbook Illustrations to Extract Design Principles for Algorithm Visualizations. In: Huang, W. (eds) Handbook of Human Centric Visualization. Springer, New York, NY. https://doi.org/10.1007/978-1-4614-7485-2_9
Download citation
DOI: https://doi.org/10.1007/978-1-4614-7485-2_9
Published:
Publisher Name: Springer, New York, NY
Print ISBN: 978-1-4614-7484-5
Online ISBN: 978-1-4614-7485-2
eBook Packages: Computer ScienceComputer Science (R0)