Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1145/3017680.3017761acmconferencesArticle/Chapter ViewAbstractPublication PagessigcseConference Proceedingsconference-collections
research-article

An Empirical Study of Debugging Patterns Among Novices Programmers

Published: 08 March 2017 Publication History

Abstract

Students taking introductory computer science courses often have difficulty with the debugging process. This work investigates a number of different logical errors that novice programmers encounter and the associated debugging behaviors. Data is collected and analyzed data in two different experiments from 142 subjects. The results show some errors are more difficult than others. Different types of bugs and novices' debugging behaviors are identified. Years of experience showed a significant role in the process of debugging in terms of correctness level and time required for debugging

References

[1]
M. Ahmadzadeh, D. Elliman and C. Higgins, "An analysis of patterns of debugging among novice," SIGCSE, pp. 84--88, 2005.
[2]
M. Ahmadzadeh, D. Elliman and C. Higgins, "The impact of improving debugging skill on programming ability," ITALICS, p.72--87, 2007.
[3]
R. Bryce, A. Cooley, A. Hansen, and N. Hayrapetyan, "A one year empirical study of student programming bugs," The Frontiers in Education Conference (FIE), pp. 122--127. IEEE, 2010.
[4]
H. Danielsiek, W. Paul and J. Vahrenhold, "Detecting and understanding students' misconceptions related to algorithms and data structures," ACM SIGCSE, 2012, North Carolina, USA.
[5]
M. Ducassé, A.-M. Emde, "A review of automated debugging systems: knowledge, strategies and techniques," The 10th international conference on Software engineering, p.162--171, April 11--15, 1988, Singapore.
[6]
A. Ford and T. Teorey, "Practical debugging in C++," Upper Saddle River, NJ: Prentice-Hall, 2002.
[7]
M. Hristova, A. Misra, M. Rutter, and R. Mercuri. "Identifying and correcting Java programming errors for introductory computer science students," ACM SIGCSE, pp. 153--156, 2003.
[8]
J. Jackson, M. Cobb and C. Carver, "Identifying top java errors for novice programmers," The 35th Annual Conference Frontiers in Education (FIE), pp. T4C-24-T4C-27, 2005.
[9]
W. Johnson, E. Soloway, B. Cutler and S. Draper, "Bug catalogue: I," Technical report, Yale University, 1983.
[10]
C. M. Lewis and C. Gregg, "How do you teach debugging?: resources and strategies for better student debugging," ACM SIGCSE, pp. 706--706, 2016.
[11]
R. McCartney, A. Eckerdal, J. E. Mostrom, K. Sanders, C. Zander, "Successful students' strategies for getting unstuck," The 12th annual SIGCSE conference on Innovation and technology in computer science education, 2007, Dundee, Scotland
[12]
L. Murphy, G. Lewandowski, R. McCauley, B. Simon, L. Thomas, C. Zander, "Debugging: the good, the bad, and the quirky - a qualitative analysis of novices' strategies, ACM SIGCSE Bulletin, v.40 n.1, March 2008.
[13]
D.W. Perkins, C. Hancock, R. Hobbs, F. Martin and R. Simmons, "Conditions of learning in novice programmers". Educational Technology Center, Office of Educational Research and Improvement, 1985.
[14]
D. N. Perkins, F. Martin, "Fragile knowledge and neglected strategies in novice programmers", workshop on empirical studies of programmers on Empirical studies of programmers, p.213--229, June 1986, Washington, D.C., USA.
[15]
A.H. Rosbach and A.H. Bagge, "Classifying and measuring student problems and misconceptions," Proc. of Norsk informa-tikkonferanse (NIK), pp. 110--121, Akademika Forlag, 2014.
[16]
J. C. Spohrer, E. Soloway and E. Pope, "A goal-plan analysis of buggy Pascal programs", Human-Computer Interaction, vol. 1, no. 2, pp. 163--207, 1985.

Cited By

View all
  • (2024)Decoding Debugging Instruction: A Systematic Literature Review of Debugging InterventionsACM Transactions on Computing Education10.1145/369065224:4(1-44)Online publication date: 5-Sep-2024
  • (2024)Automated Grading and Feedback Tools for Programming Education: A Systematic ReviewACM Transactions on Computing Education10.1145/363651524:1(1-43)Online publication date: 19-Feb-2024
  • (2024)An Accessible Blocks Language for Students with and without Visual ImpairmentsProceedings of the 55th ACM Technical Symposium on Computer Science Education V. 110.1145/3626252.3630775(1300-1306)Online publication date: 7-Mar-2024
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
SIGCSE '17: Proceedings of the 2017 ACM SIGCSE Technical Symposium on Computer Science Education
March 2017
838 pages
ISBN:9781450346986
DOI:10.1145/3017680
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]

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 08 March 2017

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. debugging
  2. logical errors
  3. novice programmers
  4. user study

Qualifiers

  • Research-article

Conference

SIGCSE '17
Sponsor:

Acceptance Rates

SIGCSE '17 Paper Acceptance Rate 105 of 348 submissions, 30%;
Overall Acceptance Rate 1,595 of 4,542 submissions, 35%

Upcoming Conference

SIGCSE TS 2025
The 56th ACM Technical Symposium on Computer Science Education
February 26 - March 1, 2025
Pittsburgh , PA , USA

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)52
  • Downloads (Last 6 weeks)18
Reflects downloads up to 25 Dec 2024

Other Metrics

Citations

Cited By

View all
  • (2024)Decoding Debugging Instruction: A Systematic Literature Review of Debugging InterventionsACM Transactions on Computing Education10.1145/369065224:4(1-44)Online publication date: 5-Sep-2024
  • (2024)Automated Grading and Feedback Tools for Programming Education: A Systematic ReviewACM Transactions on Computing Education10.1145/363651524:1(1-43)Online publication date: 19-Feb-2024
  • (2024)An Accessible Blocks Language for Students with and without Visual ImpairmentsProceedings of the 55th ACM Technical Symposium on Computer Science Education V. 110.1145/3626252.3630775(1300-1306)Online publication date: 7-Mar-2024
  • (2024)Just-In-Time TODO-Missed Commits DetectionIEEE Transactions on Software Engineering10.1109/TSE.2024.340500550:11(2732-2752)Online publication date: Nov-2024
  • (2024)Enhancing Novice Programmers’ Debugging Skills Through Systematic Education: A Comparative StudyIEEE Access10.1109/ACCESS.2024.350964112(181192-181204)Online publication date: 2024
  • (2023)Studying Developer Eye Movements to Measure Cognitive Workload and Visual Effort for Expertise AssessmentProceedings of the ACM on Human-Computer Interaction10.1145/35911357:ETRA(1-18)Online publication date: 18-May-2023
  • (2020)Wheel-Spinning Models in a Novice Programming ContextJournal of Educational Computing Research10.1177/073563312090606358:6(1101-1120)Online publication date: 19-Feb-2020
  • (2018)Choosing novice friendly sensorsInternational Journal of Electrical Engineering & Education10.1177/002072091880082156:3(251-264)Online publication date: 18-Sep-2018

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media