Abstract
Recent research has found that many novice programmers often hold non-viable mental models of basic programming concepts which can limit their potential to develop appropriate programming skills. Previous work by the authors suggests that a teaching model that integrates cognitive conflict and program visualisation can help novices formulate appropriate mental models. This paper first outlines a 'concepts roadmap' that provides an ordered approach to learning programming concepts allowing students to build on fundamental base knowledge. It then reports the results of a series of studies investigating the use of the Jeliot visualisation tool as the visualisation component of the proposed learning model when applied to these concepts. The findings include: the ease with which Jeliot can be tailored to visualise a range of concepts using a variety of examples; the Jeliot visualisation of object reference was too complex for CS1 students; further evidence that CS1 students struggle to develop appropriate understanding of a range of key programming concepts; and, further evidence that an integrated cognitive conflict/visualisation strategy can help students develop an appropriate understanding of key programming concepts.
- Barnes D.J., Fincher S., and Thompson S. 1997. Introductory problem solving in computer science. In G. Daughton, and P. Magee, (eds.) 5th Annual Conference on the Teaching of Computing, Dublin City University, 36--39.Google Scholar
- Barnes D., and Kölling, D. 2006. Objects First with Java -- A Practical Introduction using BlueJ, Prentice Hall / Pearson Education. Google ScholarDigital Library
- Bayman P. and Mayer R.E. 1983. A diagnosis of beginning programmers' misconceptions of BASIC programming statements. Commun. ACM, 26(9), 677--679. Google ScholarDigital Library
- Ben-Ari, M. 2001. Constructivism in computer science education. Journal of Computers in Mathematics and Science Teaching, 20(1), 45--73. Google ScholarDigital Library
- Ben-Ari, M. 2001. Program visualisation in theory and practice. Informatik/ Informatique, 2, 8--11.Google Scholar
- Ben-Bassat Levy R., Ben-Ari M., and Uronen P. A. 2003. The Jeliot 2000 program animation system. Computers&Education, 40(1), 1--15. Google ScholarDigital Library
- Dehnadi, S., and Bornat, R. 2006. The camel has two humps. Middlesex University Working Paper. http://www.cs.mdx.ac.uk/research/PhDArea/saeedGoogle Scholar
- Denning, P. J., and McGettrick, A. 2005. Recentering computer science. Commun. ACM, 48, 11, 15--19. Google ScholarDigital Library
- Ericsson, K.,&Simon, H. (1993). Protocol analysis: Verbal reports as data. Cambridge, MA: MIT Press.Google ScholarCross Ref
- Festinger, L. (1957). A theory of cognitive dissonance. Stanford, CA: Stanford University Press.Google ScholarCross Ref
- Gentner, D. 2002. Mental models, psychology of. In Smelser&Bates (Eds.), International Encyclopedia of the Social and Behavioral Sciences, Elsevier Science, 9683--9687.Google Scholar
- Ma, L., Ferguson, J., Roper, M., and Wood, M. 2007. Investigating the viability of mental models held by novice programmers. In 38th ACM Tech. Symposium on Computer Science Education (SIGCSE), Kentucky, USA, 499--503. Google ScholarDigital Library
- Ma L., Ferguson J.D., Roper M., Ross I., and Wood M. 2008. Using Cognitive Conflict and Program Visualisation to Improve Mental Models Held by Novice Programmers. 39th ACM Tech. Symposium on Computer Science Education(SIGCSE), Portland, USA, 342--346. Google ScholarDigital Library
- Ma L., Ferguson J.D., Roper M., Ross I., and Wood M. 2008. Investigating the use of Jeliot in a Cognitive Conflict/Visualisation Strategy for Teaching Programming Concepts, Technical Report, University of Strathclyde, UK. http://mentalmodels.cis.strath.ac.uk/CC_Jeliot.pdfGoogle Scholar
- McCracken, M., Almstrum, V., Diaz, D., Guzdial, M., Hagan, D., Kolikant, Y. B.-D., Laxer, C., Thomas, L., Utting, I., and Wilusz, T. 2001. A multi-national, multi-institutional study of assessment of programming skills of first-year cs students. SIGCSE Bull., 33(4), 125--180. Google ScholarDigital Library
- Merrill, M. D. (2002). A pebble-in-the-pond model for instructional design. Performance Improvement, 41(7), 39--44.Google ScholarCross Ref
Index Terms
- Improving the mental models held by novice programmers using cognitive conflict and jeliot visualisations
Recommendations
Using cognitive conflict and visualisation to improve mental models held by novice programmers
SIGCSE 08Recent 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 ...
Improving the mental models held by novice programmers using cognitive conflict and jeliot visualisations
ITiCSE '09: Proceedings of the 14th annual ACM SIGCSE conference on Innovation and technology in computer science educationRecent research has found that many novice programmers often hold non-viable mental models of basic programming concepts which can limit their potential to develop appropriate programming skills. Previous work by the authors suggests that a teaching ...
Using cognitive conflict and visualisation to improve mental models held by novice programmers
SIGCSE '08: Proceedings of the 39th SIGCSE technical symposium on Computer science educationRecent 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 ...
Comments