skip to main content
research-article

Debugging: the good, the bad, and the quirky -- a qualitative analysis of novices' strategies

Published:12 March 2008Publication History
Skip Abstract Section

Abstract

A qualitative analysis of debugging strategies of novice Java programmers is presented. The study involved 21 CS2 students from seven universities in the U.S. and U.K. Subjects "warmed up" by coding a solution to a typical introductory problem. This was followed by an exercise debugging a syntactically correct version with logic errors. Many novices found and fixed bugs using strategies such as tracing, commenting out code, diagnostic print statements and methodical testing. Some competently used online resources and debuggers. Students also used pattern matching to detect errors in code that "just didn't look right". However, some used few strategies, applied them ineffectively, or engaged in other unproductive behaviors. This led to poor performance, frustration for some, and occasionally the introduction of new bugs. Pedagogical implications and suggestions for future research are discussed.

References

  1. M. Ahmadzadeh, D. Elliman and C. Higgins. Novice programmers: An analysis of patterns of debugging among novice computer science students. Proceedings of the 10th annual SIGCSE conference on Innovation and technology in computer science education (ITiCSE), pp. 84--88, 2005. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. M. Ducasse and A.-M. Emde. A review of automated debugging systems: knowledge, strategies and techniques. In Proceedings of the 10th international conference on Software engineering, 162--171, 1988. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. S. Fitzgerald, B. Simon and L. Thomas. Strategies that students use to trace code: an analysis based in grounded theory. In Proceedings of the 2005 international workshop on Computing education research (ICER), pp. 69--80, 2005. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. S. Fitzgerald, G. Lewandowski, R. McCauley, L. Murphy, B. Simon, L. Thomas and C. Zander. Debugging: Finding, Fixing and Flailing -A multi-institutional study of novice debuggers. Forthcoming in Computer Science Education - Special Issue on Debugging, 18(2), June 2008.Google ScholarGoogle Scholar
  5. Gould. Some psychological evidence on how people debug computer programs. International J. of Man-Machine Studies, 7(1), pp. 151--182, 1975.Google ScholarGoogle ScholarCross RefCross Ref
  6. L. Gugerty and G. Olson. Debugging by skilled and novice programmers. Proceedings of the SIGCHI Conference on Human Factors in Computing Systems, Boston, MA, April 13-17, pp. 171--174, 1986. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. I. Katz and J. Anderson. Debugging: An analysis of bug location strategies. Human-Computer Interaction, 3(4):351--399, 1987.Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. C. Kessler and R. Anderson. A model of novice debugging in LISP, in Soloway, E. & Iyengar, S. (Eds.) Empirical Studies of Programmers: First Workshop, (pp. 198--212). Norwood, NJ: Ablex Publishing Corporation, 1986. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. McCartney, A. Eckerdal, J.E. Moström, K. Sanders, and C. Zander. Successful students' strategies for getting unstuck. ACM SIGCSE Bulletin, Proceedings of the 12th annual SIG-CSE conference on Innovation and technology in computer sci. education (ITiCSE). Vol 39, Issue 3, pp. 156--160, 2007. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. McCauley, S. Fitzgerald, G. Lewandowski, L. Murphy, B. Simon, L. Thomas and C. Zander. Debugging: A review of the literature from an educational perspective. Forthcoming in Computer Science Education -- Special Issue on Debugging, 18(2), June 2008.Google ScholarGoogle Scholar
  11. Nanja and C.R. Cook. An analysis of the on-line debugging process. In G. Olson, S. Sheppard and E. Soloway, (Eds.) Empirical Studies of Programmers: Second Work-shop, pp. 172--184, 1987. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. Perkins and F. Martin. Fragile Knowledge and Neglected Strategies in Novice Programmers. In E. Soloway and S. Iyengar (Eds), Empirical Studies of Programmers: First workshop. Ablex, NJ, USA. pp. 213--229, 1986. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. Vessey. Expertise in debugging computer pro-grams: A process analysis. International J. of Man-Machine Studies, 23, pp. 459--494, 1985.Google ScholarGoogle ScholarCross RefCross Ref

Index Terms

  1. Debugging: the good, the bad, and the quirky -- a qualitative analysis of novices' strategies

    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

    Full Access

    • Published in

      cover image ACM SIGCSE Bulletin
      ACM SIGCSE Bulletin  Volume 40, Issue 1
      SIGCSE 08
      March 2008
      549 pages
      ISSN:0097-8418
      DOI:10.1145/1352322
      Issue’s Table of Contents
      • cover image ACM Conferences
        SIGCSE '08: Proceedings of the 39th SIGCSE technical symposium on Computer science education
        March 2008
        606 pages
        ISBN:9781595937995
        DOI:10.1145/1352135

      Copyright © 2008 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: 12 March 2008

      Check for updates

      Qualifiers

      • research-article

    PDF Format

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader