skip to main content
research-article
Free Access

The Debugging Mindset: Understanding the psychology of learning strategies leads to effective problem-solving skills.

Published:01 February 2017Publication History
Skip Abstract Section

Abstract

Software developers spend 35-50 percent of their time validating and debugging software. The cost of debugging, testing, and verification is estimated to account for 50-75 percent of the total budget of software development projects, amounting to more than $100 billion annually. While tools, languages, and environments have reduced the time spent on individual debugging tasks, they have not significantly reduced the total time spent debugging, nor the cost of doing so. Therefore, a hyperfocus on elimination of bugs during development is counterproductive; programmers should instead embrace debugging as an exercise in problem solving.

References

  1. Britton, T., Jeng, L., Carver, G., Cheak, P., Katzenellenbogen, T. 2013. Reversible debugging software. Cambridge Judge Business School; http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.444.9094&rep=rep1&type=pdf.Google ScholarGoogle Scholar
  2. Chmiel, R., Loui, M. C. 2004. Debugging: from novice to expert. SIGCSE Bulletin 36(1): 17-21. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. Cutts, Q., Cutts, E., Draper, S., O'Donnell, P., Saffrey, P. 2010. Manipulating mindset to positively influence introductory programming performance. Proceedings of the 41st ACM Technical Symposium on Computer Science Education: 431-435. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. Duckworth, A. L., Peterson, C., Matthews, M. D., Kelly, D. R. 2007. Grit: perseverance and passion for long-term goals. Journal of Personality and Social Psychology 92(6): 1087-1101.Google ScholarGoogle ScholarCross RefCross Ref
  5. Dweck, C. 1999. Self-theories: Their Role in Motivation, Personality, and Development. Psychology Press.Google ScholarGoogle Scholar
  6. Kernighan, B. W., Plauger, P. J. 1974. The Elements of Programming Style. McGraw-Hill. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. Ko, A. J., Meyers, B. A. 2005. A framework and methodology for studying the causes of software errors in programming systems. Journal of Visual Languages and Computing 16(1-2): 41-84. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. McCauley, R., Fitzgerald, S., Lewandowski, G., Murphy, L., Simon, B., Thomas, L., Zander, C. 2008. Debugging: a review of the literature from an educational perspective. Computer Science Education 18(2): 67-92.Google ScholarGoogle ScholarCross RefCross Ref
  9. Murphy, L., Thomas, L. 2008. Dangers of a fixed mindset: implications of self-theories research for computer science education. SIGCSE Bulletin 40(3): 271-275. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. Oman, P. W., Cook, C. R., Nanja, M. 1989. Effects of programming experience in debugging semantic errors. Journal of Systems and Software 9(3): 197-207. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. RTI. 2002. The economic impacts of inadequate infrastructure for software testing; http://www.nist.gov/director/planning/upload/report02-3.pdf.Google ScholarGoogle Scholar
  12. Scott, M, Ghinea, G. 2014. On the domain-specificity of mindsets: the relationship between aptitude beliefs and programming practice. IEEE Transactions on Education 57(3): 169-174. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. Winslow, L. 1996. Programming pedagogy a psychological overview. SIGCSE Bulletin 28(3): 17-22. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. Yorke, M., Knight, P. 2004. Self-theories: some implications for teaching and learning in higher education. Studies in Higher Education 29(1): 25-37.Google ScholarGoogle ScholarCross RefCross Ref

Index Terms

  1. The Debugging Mindset: Understanding the psychology of learning strategies leads to effective problem-solving skills.
    Index terms have been assigned to the content through auto-classification.

    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 Queue
      Queue  Volume 15, Issue 1
      Failure
      January-February 2017
      100 pages
      ISSN:1542-7730
      EISSN:1542-7749
      DOI:10.1145/3055301
      Issue’s Table of Contents

      Copyright © 2017 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: 1 February 2017

      Permissions

      Request permissions about this article.

      Request Permissions

      Check for updates

      Qualifiers

      • research-article
      • Popular
      • Refereed

    PDF Format

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader

    HTML Format

    View this article in HTML Format .

    View HTML Format