“So my program doesn’t run!” Definition, origins, and practical expressions of students’ (mis)conceptions of correctness

Y. Ben David Kolikant*, M. Mussai

*Corresponding author for this work

Research output: Contribution to journalArticlepeer-review

18 Scopus citations

Abstract

We studied students' conceptions of correctness and their influence on students' correctness-related practices by examining how 159 students had analyzed the correctness of error-free and erroneous algorithms and by interviewing seven students regarding their work. We found that students conceptualized program correctness as the sum of the correctness of its constituent operations and, therefore, they rarely considered programs as incorrect. Instead, as long as they had any operations written correctly students considered the program ‘partially correct’. We suggest that this conception is a faulty extension of the concept of a program's grade, which is usually calculated as the sum of points awarded for separate aspects of a program. Thus school (unintentionally) nurtures students' misconception of correctness. This misconception is aligned with students' tendency to employ a line by line verification method – examining whether each operation is translated as a sub-requirement of the algorithm – which is inconsistent with the method of testing that they formally studied.

Original languageEnglish
Pages (from-to)135-151
Number of pages17
JournalComputer Science Education
Volume18
Issue number2
DOIs
StatePublished - Jun 2008

Keywords

  • Conceptions
  • Correctness
  • Local perspective
  • Novice programmer
  • Verification practices

Fingerprint

Dive into the research topics of '“So my program doesn’t run!” Definition, origins, and practical expressions of students’ (mis)conceptions of correctness'. Together they form a unique fingerprint.

Cite this