What they really do?: attempting (once again) to model novice programmers' behavior
暂无分享,去创建一个
In the last two decades, a large amount of research has been conducted in an effort to form a model of student behavior when they try to solve algorithmic or programming problems. The construction of the model is based on the analysis of many types of data, such as for example: (a) the characteristics of the programming languages the students work with, (b) the strategies of the solution that the students follow, and (c) the characteristics of the proposed problem. However, we must observe that modeling is often not based on long-term observations of actual teaching and the proposed problems are usually quite simple.In this paper we attempt to examine a variety of aspects of students' behavior when they learn to program. More specifically, we study: the strategies students use in order to develop and validate a program; the possible role of students' errors in the development of their programs; and the methods students use to deal with these errors. The study was carried out on 90 second-semester CS students who worked in pairs during the 2-hour lab session. They were given a brief description of the Binary Search algorithm and were asked to implement it using AnimPascal. In this study we present the results we obtained from the analysis of the successive versions of students' programs. Based on these results we propose teaching methods to help students overcome the difficulties they face when they learn programming.