skip to main content
10.1145/774833.774848acmconferencesArticle/Chapter ViewAbstractPublication PagessoftvisConference Proceedingsconference-collections
Article

Designing effective program visualization tools for reducing user's cognitive effort

Published:11 June 2003Publication History

ABSTRACT

Program visualization holds great potential for conveying information about the state and behavior of a running program. However, barriers exist to the realization of this potential, and the limited knowledge about the factors that affect program visualization makes the identification of these barriers difficult. We present arguments that the economy of information and tasks related to the visualization environment has a significant impact on the user's performance in solving algorithmic problems. We apply this knowledge to develop an approach for creating application-specific visualizations solely through interactions with program visualizations and textual views of the computation, thus promoting economy of interaction. The approach consists of a multiple technical contributions that are surveyed in the paper.

References

  1. BAECKER, R. M., AND SHERMAN, D., 1981. Sorting out sorting. 16mm color sound film. Shown at SIGGRAPH '81.Google ScholarGoogle Scholar
  2. BERTIN, J. 1983. Semiology of Graphics. The University of Wisconsin Press. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. BLACKWELL, A. F., AND GREEN, T. R. G. 1999. Investment of attention as an analytic approach to cognitive dimensions. In Collected Papers of the 11th Annual Workshop of the Psychology of Programming Interest Group (PPIG-11), 24--35.Google ScholarGoogle Scholar
  4. BROWN, M. H., AND NAJOR, M. A. Algorithm animation using interactive 3d graphics. In Software Visualization, J. Stasko, J. Domingue, M. Brown, and B. Price, Eds. The MIT Press, Cambridge, ch. 9. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. BROWN, M. H. 1988. Exploring Algorithms using Balsa-II. IEEE Computer 21, 5, 14--36. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. BYRNE, M., CATRAMBONE, R., AND STASKO, J. 1999. Evaluating animations as student aids in learning computer algorithms. Computers & Education 33, 4, 253--278. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. CASNER, S. M. 1991. A task-analytic approach to the automated design of graphic presentations. ACM Transactions on Graphics 10, 2, 111--151. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. CRESCENZI, P., DEMETRESCU, C., FINOCCHI, I., AND PETRESCHI, R. 2000. Reversible execution and visualization of programs with leonardo. Journal of Visual Languages and Computing 11, 2, 125--150.Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. DIJKSTRA, E. W., AND C.S.SCHOLTEN. 1980. Termination detection for diffusing computations. Inf. Proc. Letters 11, 1, 1--4.Google ScholarGoogle ScholarCross RefCross Ref
  10. EISENSTADT, M., AND BRAYSHAW, M. 1988. The transparent prolog machine (TPM): An execution model and graphical debugger for logic programming. Journal of Logic Programming 5, 4, 1--66.Google ScholarGoogle ScholarCross RefCross Ref
  11. GREEN, T. R. G., AND PETRE, M. 1996. Usability analysis of visual programming environments: a 'cognitive dimensions' framework. Journal of Visual Languages and Computing 7, 131--174.Google ScholarGoogle ScholarCross RefCross Ref
  12. HAMILTON-TAYLOR, A., AND KRAEMER, E. 2002. SKA: Supporting algorithm and data structure discussion. In Proceedings of the Thirty-third SIGCSE Technical Symposium on Computer Science Education (SIGCSE-02), ACM Press, New York, J. Impagliazzo, Ed., vol. 34, 1 of SIGCSE Bulletin, 58--62. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. HANSEN, S., SCHRIMPSHER, D., AND NARAYANAN, N. 1998. Learning algorithms by visualization: A novel approach using animation-embedded hypermedia. In Proc. Third International Conference on The Learning Sciences, Atlanta, GA.Google ScholarGoogle Scholar
  14. HART, D., KRAEMER, E., AND ROMAN, G.-C. 1999. Consistency considerations in the interactive steering of computations. International Journal of Parallel and Distributed Systems and Networks 2, 3, 171--179.Google ScholarGoogle Scholar
  15. HENRY, R. R., WHALEY, K. M., AND FORSTALL, B. 1990. The University of Washington illustrating compiler. ACM SIGPLAN Notices 25, 6 (June), 223--233. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. HIBBARD, W., DYER, C. R., AND PAUL, B. 1992. Display of scientific data structures for algorithm visualization. In Proc. IEEE Visualization, 139--146. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. HUNDHAUSEN, C. D., AND DOUGLAS, S. A. 2001. Low fidelity algorithm visualization. Journal of Visual Languages and Computing. Under review.Google ScholarGoogle Scholar
  18. Jinsight - Visualisation tools for Java. http://www.research.ibm.com/jinsight/.Google ScholarGoogle Scholar
  19. KEHOE, C., STASKO, J., AND TAYLOR, A. 2001. Rethinking the evaluation of algorithm animations as learning aids: An observational study. International Journal of Human-Computer Studies 54, 2, 265--284. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. LAWRENCE, A., BADRE, A., AND STASKO, J. T. 1994. Empirically evaluating the use of animations to teach algorithms. In Proceedings of the 1994 IEEE Symposium on Visual Languages, St. Louis, MO, 48--54.Google ScholarGoogle ScholarCross RefCross Ref
  21. MACKINLAY, J. D. 1986. Automating the design of graphical presentations of relational information. ACM Transactions on Graphics 5, 2, 110--141. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. MUKHERJEA, S., AND STASKO, J. T. 1994. Toward visual debugging: Integrating algorithm animation capabilities within a source level debugger. ACM Transactions on Computer-Human Interaction 1, 3 (Sept.), 215--244. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. MYERS, B. A. 1990. Taxonomies of visual programming and program visualization. Journal of Visual Languages and Computing 1, 1 (Mar.), 97--123.Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. PEARL, P., AND LALANNE, D. 2000. Interactive problem solving via algorithm visualization. In Proceedings of IEEE Information Visualization, 145--153. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. PRICE, B. A., BAECKER, R. M., AND SMALL, I. S. 1993. A principled taxonomy of software visualization. Journal of Visual Languages and Computing 4, 3 (Sept.), 211--266.Google ScholarGoogle ScholarCross RefCross Ref
  26. REISS, S. P. 2001. Bee/hive: A software visualization back end. In Workshop on Software Visualization, International Conference on Software Engineering ICSE 2001. Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. ROESSLING, G., AND FREISLEBEN, B. 2000. The animal algorithm animation tool. In ACM 5th Annual Conference on Innovation and Technology in Computer Science Education (ITiCSE 2000), ACMPress, New York, 37--40. Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. ROMAN, G., AND COX, K. 1993. A Taxonomy of Program Visualization Systems. IEEE Computer 26, 12, 11--24. Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. ROMAN, G.-C., COX, K. C., WILCOX, D., AND PLUN, J. Y. 1992. Pavane: a system for declarative visualization of concurrent computations. Journal of Visual Languages and Computing 3, 2, 161--193.Google ScholarGoogle ScholarCross RefCross Ref
  30. ROTH, S. F., AND MATTIS, J. 1991. Automating the presentation of information. 90--97.Google ScholarGoogle Scholar
  31. SCAIFE, M., AND ROGERS, Y. 1996. External cognition: How do graphical representations work? International Journal of Human-Computer Studies 45, 185--213. Google ScholarGoogle ScholarDigital LibraryDigital Library
  32. STASKO, J. T., AND KRAEMER, E. 1993. A methodology for building application-speci c visualizations of parallel programs. Journal of Parallel and Distributed Computing 18, 2, 258--264. Google ScholarGoogle ScholarDigital LibraryDigital Library
  33. STASKO, J., BADRE, A., AND LEWIS, C. 1993. Do algorithm animations assist learning? an empirical study and analysis. In Proceedings of ACM INTERCHI'93 Conference on Human Factors in Computing Systems, Understanding Programming, 61--66. Google ScholarGoogle ScholarDigital LibraryDigital Library
  34. STASKO, J. T. 1990. The Path-Transition Paradigm: A practical methodology for adding animation to program interfaces. Journal of Visual Languages and Computing 1, 3, 213--236.Google ScholarGoogle ScholarDigital LibraryDigital Library
  35. STASKO, J. 1998. Smooth continuous animation for portraying algorithms and processes. In Software Visualization, J. Stasko, J. Domingue, M. Brown, and B. Price, Eds. The MIT Press, Cambridge, ch. 8, 103--118.Google ScholarGoogle Scholar
  36. TOPOL, B., STASKO, J. T., AND SUNDERAM, V. S. 1998. Pvanim: a tool for visualization in network computing environments. Concurrency - Practice and Experience 10, 14, 1197--1222.Google ScholarGoogle ScholarCross RefCross Ref
  37. TUDOREANU, M. E., WU, R., HAMILTON-TAYLOR, A., AND KRAEMER, E. 2002. Empirical evidence that algorithm animation promotes understanding of distributed algorithms. In IEEE 2002 Symposia on Human Centric Computing Languages and Environments (HCC'02), 236--244. Google ScholarGoogle ScholarDigital LibraryDigital Library
  38. TUDOREANU, M. E. 2002. Economy of Interaction in Program Visualization: Designing Effective Visualization Tools for Reducing User's Cognitive Effort. PhD thesis, Washington University in St. Louis. Also appears as technical report WUCS-02-30.Google ScholarGoogle Scholar

Index Terms

  1. Designing effective program visualization tools for reducing user's cognitive effort

            Recommendations

            Comments

            Login options

            Check if you have access through your login credentials or your institution to get full access on this article.

            Sign in
            • Published in

              cover image ACM Conferences
              SoftVis '03: Proceedings of the 2003 ACM symposium on Software visualization
              June 2003
              211 pages
              ISBN:1581136420
              DOI:10.1145/774833

              Copyright © 2003 ACM

              Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

              Publisher

              Association for Computing Machinery

              New York, NY, United States

              Publication History

              • Published: 11 June 2003

              Permissions

              Request permissions about this article.

              Request Permissions

              Check for updates

              Qualifiers

              • Article

              Acceptance Rates

              SoftVis '03 Paper Acceptance Rate20of65submissions,31%Overall Acceptance Rate20of65submissions,31%

            PDF Format

            View or Download as a PDF file.

            PDF

            eReader

            View online with eReader.

            eReader