Using cognitive conflict and visualisation to improve mental models held by novice programmers
Linxiao Ma, John Ferguson, Marc Roper, Isla Ross, Murray Wood · 2008
Recent research has found that many novice programmers often hold non-viable mental models of basic programming concepts such as assignment and object reference, which can limit their potential to develop programming skills. This paper proposes a constructivist-based teaching model that integrates cognitive conflict and program visualisation with the aim of supporting novice programmers in the formulation of appropriate mental models. The results of an initial empirical study produced three findings of note. Firstly, a teaching model based on either visualisation alone or cognitive conflict integrated with visualisation can help students develop viable models of value assignment. Secondly, there was evidence to suggest that cognitive conflict integrated with visualisation outperformed visualisation alone in helping students develop viable models of the more challenging concept of object reference assignment. And thirdly, there was evidence of an improvement in students' understanding of value and object reference assignment using the teaching model based on visualisation and cognitive conflict.