2,751
Views
113
CrossRef citations to date
0
Altmetric
Articles

Debugging: a review of the literature from an educational perspective

, , , , , & show all
Pages 67-92 | Published online: 16 Jun 2008

References

  • Ahmadzadeh , M. , Elliman , D. and Higgins , C. 2005 . Novice programmers: An analysis of patterns of debugging among novice computer science students . Inroads , 37 ( 3 ) : 84 – 88 .
  • Barnes , D. and Kölling , M. 2002 . Objects first with Java: A practical introduction using BlueJ , Upper Saddle River, NJ : Prentice-Hall .
  • Bednarik , R. and Tukiainen , M. 2005 . “ Effects of display blurring on the behavior of novices and experts during program debugging ” . In CHI'05 Extended abstracts on human factors in computing systems , 1204 – 1207 . Portland, OR : ACM Press .
  • Ben-Ari , M. 1998 . Constructivism in computer science education . Inroads , 30 ( 3 ) : 257 – 261 .
  • Bennedsen , J. and Caspersen , M. E. 2006 . Abstraction ability as an indicator of success for learning object-oriented programming? . Inroads , 38 ( 2 ) : 39 – 43 .
  • Bonar , J. and Soloway , E. 1985 . Preprogramming knowledge: A major source of misconceptions in novice programmers . Human–Computer Interaction , 1 ( 2 ) : 133 – 161 .
  • Bransford J. Brown A. Cocking R. How people learn: Brain, mind, experience, and school National Academy Press Washington, DC 2000
  • Brusilovsky , P. . Program visualization as a debugging tool for novices . Proceedings of INTERACT '93 and CHI '93 conference companion on human factors in computing systems . Edited by: Ashlund , S. , Mullet , K. , Henderson , A. , Hollnagel , E. and White , T. pp. 29 – 30 . New York : ACM Press .
  • Carver , S. and Risinger , S. 1987 . “ Improving children's debugging skills ” . In Empirical studies of programmers: Second Workshop , Edited by: Olson , G. , Sheppard , S. and Soloway , E. 147 – 171 . Norwood, NJ : Ablex .
  • Chmiel , R. and Loui , M. 2004 . Debugging: From novice to expert . Inroads , 36 ( 1 ) : 17 – 21 .
  • Ducassé , M. and Emde , A.-M. . A review of automated debugging systems: Knowledge, strategies and techniques . Proceedings of the 10th international conference on software engineering . Edited by: Schäfer , W. and Botella , Pere . pp. 162 – 171 . Singapore : IEEE Computer Society Press .
  • Dweck , C. S. 1999 . Self-theories: Their role in motivation, personality and development , Philadelphia, PA : Psychology Press .
  • Fix , V. , Wiedenbeck , S. and Scholtz , J. . Mental representations of programs by novices and experts . Proceedings of the SIGCHI conference on human factors in computing systems . Edited by: Bauersfeld , P. , Bennett , J. and Lynch , G. pp. 74 – 79 . New York : ACM Press .
  • Ford , A. and Teorey , T. 2002 . Practical debugging in C++ , Upper Saddle River, NJ : Prentice-Hall .
  • Goold , A. and Rimmer , R. 2000 . Factors affecting performance in first-year computing . Inroads , 32 ( 2 ) : 39 – 43 .
  • Gould , J. 1975 . Some psychological evidence on how people debug computer programs . International Journal of Man–Machine Studies , 7 ( 1 ) : 151 – 182 .
  • Gould , J. and Drongowski , P. 1974 . An exploratory study of computer program debugging . Human Factors , 16 : 258 – 277 .
  • Grant , E. and Sackman , H. 1967 . An exploratory investigation of programmer performance under on-line and off-line conditions . IEEE Transactions on Human Factors in Electronics , 8 ( 1 ) : 33 – 48 .
  • Gugerty , L. and Olson , G. . Debugging by skilled and novice programmers . Proceedings of the SIGCHI conference on human factors in computing systems . Edited by: Mantei , M. and Orbeton , P. pp. 171 – 174 . New York : ACM Press .
  • Hanks , B. . Problems encountered by novice pair programmers . Proceedings of the 3rd international computing education research workshop . Edited by: Fincher , S. , Guzdial , M. and Anderson , R. pp. 159 – 164 . New York : ACM Press .
  • Hristova , M. , Misra , A. , Rutter , M. and Mercuri , R. 2003 . Identifying and correcting Java programming errors for introductory computer science students . Inroads , 35 ( 1 ) : 153 – 156 .
  • IEEE . 1994 . IEEE standard 1044–1993: Standard classification for software anomalies Retrieved November 21, 2007 from http://standards.ieee.org/reading/ieee/std_public/description/se/1044–1993_desc.html
  • Jeffries , R. 1982 . A comparison of debugging behavior of expert and novice programmers . Paper presented at the American Education Research Association Annual Meeting . March 1982 , New York.
  • Johnson , W. and Soloway , E. . PROUST: Knowledge-based program understanding . Proceedings of the 7th international conference on software engineering . Edited by: Straeter , T. , Howden , W. and Rault , J. pp. 369 – 380 . Piscataway, NJ : IEEE Press .
  • Johnson , W. , Soloway , E. , Cutler , B. and Draper , S. 1983 . Bug catalogue: I (Technical Report No. 286) , New Haven, CT : Yale University, Department of Computer Science .
  • Katz , I. and Anderson , J. 1987 . Debugging: An analysis of bug location strategies . Human–Computer Interaction , 3 ( 4 ) : 351 – 399 .
  • Kessler , C. and Anderson , J. 1986 . “ A model of novice debugging in LISP ” . In Empirical studies of programmers , Edited by: Soloway , E. and Iyengar , S. 198 – 212 . Norwood, NJ : Ablex .
  • Knuth , D. 1989 . The errors of TEX . Software – Practice and Experience , 19 ( 7 ) : 607 – 685 .
  • Ko , A. and Myers , B. 2005 . A framework and methodology for studying the causes of software errors in programming systems . Journal of Visual Languages and Computing , 16 : 41 – 84 .
  • Lister , R. , Adams , E. , Fitzgerald , S. , Fone , W. , Hamer , J. Lindholm . 2004 . A multi-national study of reading and tracing skills in novice programmers . Inroads , 36 ( 4 ) : 119 – 150 .
  • Mancy , R. and Reid , N. . Aspects of cognitive style and programming . Proceedings of the 16th workshop of the psychology of programming interest group . Edited by: Dunican , E. and Green , T. Carlow, Ireland. Retrieved May 20, 2008, from http://www.ppig.org/workshops/16th-programme.html
  • McCracken , M. , Almstrum , V. , Diaz , D. , Guzdial , M. , Hagan , D. Kolikant , Y. B.-D. 2001 . A multi-national, multi-institutional study of assessment of programming skills of first-year CS students . Inroads , 33 ( 4 ) : 125 – 140 .
  • McDowell , C. , Werner , L. , Bullock , H. and Fernald , J. 2006 . Pair programming improves student retention, confidence, and program quality . Communications of the ACM , 49 ( 8 ) : 90 – 95 .
  • Metzger , R. 2004 . Debugging by thinking: A multidisciplinary approach , Burlington, MA : Elsevier Digital Press .
  • Nanja , M. and Cook , C. R. 1987 . “ An analysis of the on-line debugging process ” . In Empirical studies of programmers: Second workshop , Edited by: Olson , G. , Sheppard , S. and Soloway , E. 172 – 184 . Norwood, NJ : Ablex .
  • Pea , R. D. 1986 . Language-independent conceptual bugs in novice programming . Journal of Educational Computing Research , 21 : 25 – 36 .
  • Perkins , D. and Martin , F. 1986 . “ Fragile knowledge and neglected strategies in novice programmers ” . In Empirical studies of programmers , Edited by: Soloway , E. and Iyengar , S. 213 – 229 . Norwood, NJ : Ablex .
  • Robertson , T. , Prabhakararao , S. , Burnett , M. , Cook , C. , Ruthruff , J. Beckwith , L. . Impact of interruption style on end-user debugging . Proceedings of the 2004 conference on human factors in computing systems . Edited by: Dykstra-Erickson , E. and Tscheligi , M. pp. 287 – 294 . New York : ACM Press .
  • Robins , A. , Haden , P. and Garner , S. . Problem distributions in a CS1 course . Proceedings of the 8th Australasian computing education conference . pp. 165 – 173 . Hobart : Australasian Computer Society .
  • Robins , A. , Rountree , J. and Rountree , N. 2003 . Learning and teaching programming: A review and discussion . Computer Science Education , 13 ( 2 ) : 137 – 172 .
  • Soloway , E. and Ehrlich , K. 1984 . Empirical studies of programming knowledge . IEEE Transactions on Software Engineering , 10 ( 5 ) : 595 – 609 .
  • Soloway , E. , Ehrlich , K. and Bonar , J. . Tapping into tacit programming knowledge . Proceedings of the 1982 conference on human factors in computing systems . pp. 52 – 57 . Gaithersburg, MD : ACM Press .
  • Spohrer , J. and Soloway , E. 1986a . “ Analyzing the high frequency bugs in novice programs ” . In Empirical studies of programmers , Edited by: Soloway , E. and Iyengar , S. 230 – 251 . Norwood, NJ : Ablex .
  • Spohrer , J. and Soloway , E. 1986b . Novice mistakes: Are the folk wisdoms correct? . Communications of the ACM , 29 ( 7 ) : 624 – 632 .
  • Spohrer , J. , Soloway , E. and Pope , E. 1989 . “ A goal/plan analysis of buggy Pascal programs ” . In Studying the novice programmer , Edited by: Soloway , E. and Spohrer , J. C. 356 – 399 . Hillsdale, NJ : Erlbaum .
  • Spohrer , J. , Pope , E. , Lipman , M. , Sack , W. , Freiman , S. Litman , D. 1985 . Bug catalogue: II, III, IV , New Haven, CT : Yale University, Department of Computer Science . (Technical Report No. 386)
  • Thomas , L. , Ratcliffe , M. and Thomasson , B. 2004 . Scaffolding with object diagrams in first year programming classes: Some unexpected results . Inroads , 36 ( 1 ) : 250 – 254 .
  • Thomas , L. , Ratcliffe , M. , Woodbury , J. and Jarman , E. 2002 . Learning styles and performance in the introductory programming sequence . Inroads , 34 ( 1 ) : 33 – 37 .
  • Tubaishat , A. . A knowledge base for program debugging . Proceedings of the international conference on computer systems and applications . pp. 321 – 327 . Beirut : IEEE Press .
  • Vessey , I. 1985 . Expertise in debugging computer programs: A process analysis . International Journal of Man–Machine Studies , 23 : 459 – 494 .
  • Wiedenbeck , S. 1985 . Novice/expert differences in programming skills . International Journal of Man–Machine Studies , 23 : 383 – 390 .
  • Wilcox , E. , Atwood , J. , Burnett , M. , Cadiz , J. and Cook , C. . Does continuous visual feedback aid debugging in direct-manipulation programming systems? . Proceedings of the SIGCHI conference on human factors in computing systems . Edited by: Pemberton , S. pp. 258 – 265 . New York : ACM Press .
  • Wilson , J. 1987 . A Socratic approach to helping novice programmers debug programs . SIGCSE Bulletin , 19 ( 1 ) : 179 – 182 .
  • Zeller , A. 2006 . Why programs fail: A systematic guide to debugging , San Francisco, CA : Morgan Kaufmann .

Reprints and Corporate Permissions

Please note: Selecting permissions does not provide access to the full text of the article, please see our help page How do I view content?

To request a reprint or corporate permissions for this article, please click on the relevant link below:

Academic Permissions

Please note: Selecting permissions does not provide access to the full text of the article, please see our help page How do I view content?

Obtain permissions instantly via Rightslink by clicking on the button below:

If you are unable to obtain permissions via Rightslink, please complete and submit this Permissions form. For more information, please visit our Permissions help page.