Anomaly Detection for Early Warning in Object-oriented Programming Course

Shaoxiao Lu,Xu Wang,Haici Zhou,Qing Sun,Wenge Rong,Ji Wu
DOI: https://doi.org/10.1109/TALE52509.2021.9678677
2021-01-01
Abstract:As one mainstream of current software development, Object-oriented programming has become one key course for undergraduate students in Computer Science. Since Object-oriented concepts are difficult to understand for students, small programming exercises are used to train and help the students, and the study performance is evaluated based on the quality of the submitted source code. The common practice of code assessment in programming courses is checking whether the submitted projects pass carefully-designed test cases. However, even some projects pass all test cases, they may have bad software design and do not use the knowledge of Object-oriented programming well, especially in the early stage of courses. Therefore, we propose an anomaly detection approach for early warning in Object-oriented programming courses, which can automatically find the abnormal application of Object-oriented knowledge. In our approach, we conduct static analysis on the code submitted by students. Typical Objected-oriented metrics are extracted, and students are divided into two groups by K-means clustering: being good at Object-objected knowledge or not, and finally detect anomalous students based on the distance from cluster centers. We evaluate our approach on the realistic data sets collected from our Object-oriented programming course, and experimental results show the effectiveness of our method.
What problem does this paper attempt to address?