A4 Refereed article in a conference publication
A Clustering Method to Detect Disengaged Students from Their Code Submission History
Authors: Lokkila Erno, Christopoulos Athanasios, Laakso Mikko-Jussi
Editors: Brett A. Becker, Keith Quille, Mikko-Jussi Laakso, Erik Barendsen, Simon
Conference name: Annual Conference on Innovation and Technology in Computer Science Education
Publisher: Association for Computing Machinery
Publishing place: New York, NY
Publication year: 2022
Journal: Annual Conference on Innovation and Technology in Computer Science Education
Book title : ITiCSE '22: Proceedings of the 27th ACM Conference on on Innovation and Technology in Computer Science Education Vol. 1
Journal name in source: Annual Conference on Innovation and Technology in Computer Science Education, ITiCSE
Series title: Annual Conference on Innovation and Technology in Computer Science Education
Volume: 1
First page : 228
Last page: 234
ISBN: 978-1-4503-9201-3
ISSN: 1942-647X
DOI: https://doi.org/10.1145/3502718.3524754
Web address : https://dl.acm.org/doi/10.1145/3502718.3524754
Computer Science educators benefit from knowing which of their students need help or feel the material is difficult. Collecting this information is, typically, done via surveys. However, surveying students is time-consuming and not every student answers. Additionally, with surveys, teachers identify struggling students only after-the-fact, when nothing can be done to help them.
This paper proposes a machine learning approach to cluster students into groups with similar features; the weak-performing learners, who consider the material and/or programming difficult, the average-performing learners, who are learning the material normally, and the best-performing learners, who consider programming to be an easy task and do not need additional assistance.
The clustering is data-driven as it is based on the collection of code snapshots (i.e., submissions). The clusters are then formed from a transition probability matrix, computed using the submission history of the student, and a state machine.
We demonstrate the effectiveness of the clustering approach to create clusters with significant differences in perceived student difficulty by cross-validating the formed clusters with survey data collected from a CS1 course. The clusters also contain differences in programming behavior. The proposed method can be applied to the classroom setting to identify students benefitting from assistance during the course in real-time, without surveys.