Popis: |
"The first aim of this developmental study was to provide insight into the types of problems faced by Computer Graphics students through the analysis of students' programming. The second aim, supporting the first, was to develop analytic approaches to help educators analyse the student programming process in detail. An analysis method based on Grounded Theory (Change-Coding) coded changes in students' computer programs in terms of 'action', 'error' and 'problem'. This was supported by the development of an analysis and data-gathering software program called SCORE. Amongst other findings, quantitative evaluation of the data showed that 44% of changes in the first and 27% of changes in the second assignment were related to 'General Programming' tasks rather than to Computer Graphics programming tasks. Limitations of the Change-coding results led to the development of a coding approach (Segment-Coding) which focused on coding of sets of related versions of a program (Segments). Detailed qualitative analysis of Segments led to the identification of several issues related to student problem-solving in Computer Graphics programming. These issues include 'Conceptual' issues related to misunderstanding of concepts, 'Cognitive Difficulty of Spatial Programming' issues relating to students' spatial visualization ability, and 'Interplay of different problems' issues which involve students being overwhelmed by having to solve multiple problems at once. These issues were found to affect different parts of the problem-solving process, leading to the development of a four-stage process model of student programming problem-solving consisting of the 'Identify', 'Understand', 'Apply' and 'Perfect' phases. The analysis also revealed that three-dimensional spatial programming is a challenging topic, with students' initial implementation of compound rotations being incorrect 94% of the time. An automatic approach for the machine-identification of Segments contained in Project Histories was developed to support educators and researchers in identifying significant parts of the programming process for detailed analysis. The Machine-Segmenting algorithm produces sets of related versions that are statistically similar to those produced by a human researcher. Thus the machine-supported Segment-Coding method provides a more time-efficient approach to analysing Computer Science student programs compared to a completely manual analysis." -- Abstract |