Skip to main content

Using Textbook Illustrations to Extract Design Principles for Algorithm Visualizations

  • Chapter
  • First Online:
Handbook of Human Centric Visualization

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.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 84.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 119.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book
USD 109.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

References

  1. S. Fincher and M. Petre. Computer Science Education Research. London, UK: Routledge, 2004.

    Google Scholar 

  2. R. Lister. The naughties in CSEd research: A retrospective. In SIGCSE Inroads, volume 1, no. 1, pp. 22–24, March 2010.

    Article  Google Scholar 

  3. 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.

    Article  Google Scholar 

  4. 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.

    Article  Google Scholar 

  5. 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.

    Google Scholar 

  6. E. Wenger. Intelligent Tutoring Systems. Los Altos, CA: Morgan Kaufmann, 1987.

    Google Scholar 

  7. 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.

    Article  Google Scholar 

  8. 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.

    Google Scholar 

  9. 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.

    Google Scholar 

  10. 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.

    Google Scholar 

  11. D. Norman. Some observations on mental models. In Mental Models, D. Gentner and A. Stevens, Eds. Hillsdale, NJ: Erlbaum, 1983, pp. 7–14.

    Google Scholar 

  12. 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.

    Google Scholar 

  13. S. Pollack and M. Ben-Ari. Selecting a visualization system. In Proceedings of the Third Program Visualization Workshop, PVW 2004, pp. 134–140.

    Google Scholar 

  14. 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.

    Google Scholar 

  15. 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.

    Google Scholar 

  16. 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.

    Article  Google Scholar 

  17. 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.

    Google Scholar 

  18. 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.

    Google Scholar 

  19. 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.

    Article  Google Scholar 

  20. 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.

    Google Scholar 

  21. 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.

    Google Scholar 

  22. 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.

    Google Scholar 

  23. 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.

    Google Scholar 

  24. 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.

    Google Scholar 

  25. 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.

    Article  Google Scholar 

  26. 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.

    Google Scholar 

  27. 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.

    Google Scholar 

  28. 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.

    Google Scholar 

  29. K. Sugiyama. Graph Drawing and Applications for Software and Knowledge Engineers. Singapore: World Scientific, 2002.

    Book  MATH  Google Scholar 

  30. P. di Batista, G. Eades, T. Tamassia and I. Tollis. Graph Drawing: Algorithms for the Visualization of Graphs. Prentice-Hall, 1999.

    Google Scholar 

  31. J. Bertin. Semiology of Graphics. Madison, WI: University of Wisconsin Press, 1983.

    Google Scholar 

  32. W. Cleveland. Visualizing Data. Mummit, NJ: Hobart Press, 1993.

    Google Scholar 

  33. 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.

    Article  Google Scholar 

  34. 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.

    Google Scholar 

  35. M. H. Alsuwaiyel. Algorithms, Design Techniques and Analysis. World Scientific, 1999.

    Google Scholar 

  36. G. Brassard and P. Bratley. Algorithmics: Theory and Practice. Prentice-Hall, 1988.

    Google Scholar 

  37. G. Brassard and P. Bratley. Fundamentals of Algorithmics. Prentice-Hall, 1996.

    Google Scholar 

  38. T. H. Cormen, C. E. Leiserson and R. L. Rivest. Introduction to algorithms. Cambridge, MA: MIT Press, 2nd ed., 2001.

    MATH  Google Scholar 

  39. 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.

    Google Scholar 

  40. R. Johnsonbaugh and M. Schaefer. Algorithms. Pearson Education, 2004.

    Google Scholar 

  41. J. Kleinberg and É. Tardos. Algorithm Design. Pearson Addison-Wesley, 2006.

    Google Scholar 

  42. 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.

    Google Scholar 

  43. A. Levitin. The Design of Analysis of Algorithms. Addison-Wesley. 2003.

    Google Scholar 

  44. N. Martí-Oliet and Ortega and J. A. Verdejo. Estructuras de datos y métodos algorítmicos ejercicios resueltos. Madrid, Spain: Pearson, 2004.

    Google Scholar 

  45. I. Parberry. Problems on Algorithms. Prentice–Hall, 2002.

    Google Scholar 

  46. S. Sahni. Data Structures, Algorithms and Applications in Java. Summit, NJ: Silicon Press, 2005.

    Google Scholar 

  47. M. A. Weiss. Data Structures and Algorithms Analysis. Addison-Wesley, 1992.

    Google Scholar 

  48. S. Baase and A. Van Gelder. Computer Algorithms: Introduction to Design and Analysis. Addison-Wesley Longman, 2000.

    Google Scholar 

  49. M. T. Goodrich and R. Tamassia. Data Structures and Algorithms in Java. John Wiley & Sons, 2nd ed., 2001.

    Google Scholar 

  50. E. Horowitz and S. Sahni. Fundamentals of Computer Algorithms. Pitman, 1978.

    Google Scholar 

  51. R. Neapolitan and K. Naimipour. Foundations of Algorithms. Jones and Bartlett, 1997.

    Google Scholar 

  52. R. Sedgewick. Algorithms in Java. Addison-Wesley, 2002.

    Google Scholar 

  53. S. Skiena. The Algorithm Design Manual. Berlin, Germany: Springer-Verlag, 1998.

    Google Scholar 

  54. 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.

    Google Scholar 

  55. 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.

    Google Scholar 

  56. 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.

    Google Scholar 

  57. B. Glaser and A. Strauss. The Discovery of Grounded Theory: Strategies for Qualitative Research. Aldine, 1967.

    Google Scholar 

  58. 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.

    Google Scholar 

  59. 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.

    Google Scholar 

  60. 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.

    Article  Google Scholar 

  61. 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.

    Article  Google Scholar 

Download references

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

Authors

Corresponding author

Correspondence to J. Ángel Velázquez-Iturbide .

Editor information

Editors and Affiliations

Rights and permissions

Reprints 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)

Publish with us

Policies and ethics