Programming misconceptions, the incomplete or erroneous understanding of concepts and behaviors of computing agents, are a common and well documented hurdle to novices. A typical manifestation of a misconception is the erroneous application of constructs, e.g. iteration, in programming artifacts. Mere observation of these artifacts may only allow instructors to conjecture the presence of specific misconceptions. Confirmation thereof may be sought by directly asking students about their reasoning. This approach, however, does not scale well to larger populations of students or online learning situations. This study explores the possibility to identify misconceptions indirectly by using program-tracing tasks. Tracing is the ability to read, understand and symbolically execute a computer program. Our approach uses tracing questions where students predict the outputs of programs from multiple-choice answers carefully designed to reflect selected misconceptions. Specifically, we focus on misconceptions about iteration: a topic often reported as complex for complete novices. We evaluated our approach in a pre-test, post-test pilot study involving 35 fifth-grade students. The participants received an intervention based on block-based programming languages and exercises in the style of Code.org. We sought evidence of the presence of 9 predefined misconceptions about iteration at both the pre-test and post-test, identifying the changes that occurred after the intervention. Our results show that tracing evaluations may be useful to instructors as indicators of strengths and weaknesses of groups of learners that may help steer their learning activities.

错误:搜索内容不能为空,请输入英文关键词
错误:关键词超出字数限制,请精简
高级检索

On the Use of Tracing to Diagnose Misconceptions About Iteration

  • Gabriele Pozzan,
  • Costanza Padova,
  • Chiara Montuori,
  • Barbara Arfé,
  • Tullio Vardanega

摘要

Programming misconceptions, the incomplete or erroneous understanding of concepts and behaviors of computing agents, are a common and well documented hurdle to novices. A typical manifestation of a misconception is the erroneous application of constructs, e.g. iteration, in programming artifacts. Mere observation of these artifacts may only allow instructors to conjecture the presence of specific misconceptions. Confirmation thereof may be sought by directly asking students about their reasoning. This approach, however, does not scale well to larger populations of students or online learning situations. This study explores the possibility to identify misconceptions indirectly by using program-tracing tasks. Tracing is the ability to read, understand and symbolically execute a computer program. Our approach uses tracing questions where students predict the outputs of programs from multiple-choice answers carefully designed to reflect selected misconceptions. Specifically, we focus on misconceptions about iteration: a topic often reported as complex for complete novices. We evaluated our approach in a pre-test, post-test pilot study involving 35 fifth-grade students. The participants received an intervention based on block-based programming languages and exercises in the style of Code.org. We sought evidence of the presence of 9 predefined misconceptions about iteration at both the pre-test and post-test, identifying the changes that occurred after the intervention. Our results show that tracing evaluations may be useful to instructors as indicators of strengths and weaknesses of groups of learners that may help steer their learning activities.