Skip to main content

Understanding Algorithms by Means of Visualized Path Testing

  • Conference paper
  • First Online:
Book cover Software Visualization

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 2269))

Abstract

Visualization of an algorithm offers only a rough picture of operations. Explanations are crucial for deeper understanding, because they help the viewer to associate the visualization with the factual meaning of each detail. We present a framework based on path testing for associating instructive explanations and assignments with a constructive self-study visualization of an algorithm. The algorithm is divided into blocks, and a description is given for each block. The system contains a separate window for code, flowchart, animation, explanations, and control. Assignments are based on the flowchart and on the coverage conditions of path testing. Path testing is expected to lead into more accurate evaluation of learning outcomes because it supports systematic instruction in addition to more free trial-and-error heuristics. A qualitative analysis of preliminary experiences with the prototype indicates that the approach helps a student to reflect on her own reasoning about the algorithm. However, a prerequisite for an successful learning process with the environment is a motivating introduction, describing both the system and the main idea of the algorithm to be learned.

The work was supported by the National Technology Agency, Finland.

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 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight 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

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Aho, A., Sethi, R., Ullman J.: Compilers, Principles, Techniques, and Tools. Addison Wesley, 1986.

    Google Scholar 

  2. Beizer, B.: Software Testing Techniques, 2nd edition. New York, Van Nostrand Reinhold, 1990.

    Google Scholar 

  3. Ben-Ari, M., Myller, N., Sutinen, E., Tarhio, J.: Perspectives of Program Animation with Jeliot. In this volume.

    Google Scholar 

  4. Brown, M.: Algorithm Animation. ACM distinguished dissertation, MIT Press, 1988.

    Google Scholar 

  5. Cornett S.: Code Coverage Analysis. http://www.bullseye.com, seen 08/01.

  6. Haajanen, J., Pesonius, M., Sutinen, E., Tarhio, J., Teräsvirta, T., Vanninen, P.: Animation of user algorithms on the Web. In Proc. 1997 Symposium on Visual Languages, 1997, 360–367.

    Google Scholar 

  7. Horspool, N.: Practical fast searching in strings. Software Practice & Experience 10, 1980, 501–506.

    Google Scholar 

  8. Hundhausen, C.: Toward Effective Algorithm Visualization Artifacts: Designing for Participation and Communication in an Undergraduate Algorithms Course. Doctoral Dissertation (Tech Rep. No. CIS-TR-99-07), Dept. of Computer and Information Science, University of Oregon, 1999.

    Google Scholar 

  9. Järvinen, E. M.: The Lego/Logo Learning Environment in Technology Education: An Experiment in a Finnish Context. Journal of Technology Education 9(2), 1988, 47–59.

    Google Scholar 

  10. Korhonen, A.: Algorithm Animation and Simulation. Licentiate’s thesis, Helsinki University of Technology, Department of Computer Science and Engineering, 2000.

    Google Scholar 

  11. Korhonen, A., Malmi, L.: Algorithm Simulation with Automatic Assessment. In Proc. ITiCSE’ 00, 5th Annual SIGCSE/SIGCUE Conference on Innovation and technology in computer science education, ACM, 2000, 160–163.

    Google Scholar 

  12. Korhonen, A., Malmi, L., Saikkonen, R.: Design Pattern for Algorithm Animation and Simulation. In E. Sutinen (Ed.): Proceedings of the First Program Visualization Workshop, University of Joensuu, Department of Computer Science, 2001, 89–100.

    Google Scholar 

  13. Lavonen, J., Meisalo, V., Lattu, M.: Visual programming: basic structures made easy. In E. Sutinen (Ed.): Proceedings of the First Program Visualization Workshop, University of Joensuu, Department of Computer Science, 2001, 163–177.

    Google Scholar 

  14. Pólya, G. How to Solve It? Princeton University Press, 1973.

    Google Scholar 

  15. Price, B. A., Baecker, R. M., Small, I. S.: A Principled Taxonomy of Software Visualization Journal of Visual Languages and Computing 4(3), 1993, 211–266.

    Google Scholar 

  16. Stasko, J., Badre, A., Lewis, C.: Do algorithm animations assist learning: An empirical study and analysis. In Proc. INTERCHI’ 93, Conference on Human Factors in Computing Systems, Amsterdam, The Netherlands (1993) 61–66.

    Google Scholar 

  17. Stern, L., Sondergaard, H., Naish, L.: A strategy for managing content complexity in algorithm animation. In Proc. ITiCSE’ 99, 4th Annual SIGCSE/SIGCUE Conference on Innovation and technology in computer science education, ACM, 1999, 127–130.

    Google Scholar 

  18. Vygotsky, L. S.: Mind in Society: The Development of Higher Psychological Processes. (M. Cole, V.J. Steiner, S. Scribner, E. Souberman, eds.) Harvard University Press, 1978.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2002 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Korhonen, A., Sutinen, E., Tarhio, J. (2002). Understanding Algorithms by Means of Visualized Path Testing. In: Diehl, S. (eds) Software Visualization. Lecture Notes in Computer Science, vol 2269. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-45875-1_20

Download citation

  • DOI: https://doi.org/10.1007/3-540-45875-1_20

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-43323-1

  • Online ISBN: 978-3-540-45875-3

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics