A Categorization of Novice Programmers: A Cluster Analysis Study
Essi Lahtinen
Abstract: Beginning software engineering students often lack skills nec- essary to perform efficient programming work, such as comprehending or debugging program code. To facilitate the needs of students having dif- ferent skill levels, teachers should be able to recognize the specific student groups.
Bloom’s Taxonomy defines educational objectives for the development of students’ cognitive skills. This paper presents a study of 254 undergrad- uate students of a basic programming course whose performance were measured on different levels of Bloom’s Taxonomy. The results of statis- tical cluster analysis suggest that the obtained student groups did not align with the Bloom’s Taxonomy: students performing poorly on lower levels can still perform well on higher taxonomy levels. Based on the re- sults, this paper suggests six student groups the teacher should recognize when organizing basic programming courses.