Rule-Based Error Classification for Analyzing Differences in Frequent Errors
This work addresses the need for instructors to provide tailored advice to learners at different skill levels by analyzing error patterns, though it is incremental as it builds on prior work on frequent errors.
The paper tackled the problem of analyzing differences in frequent errors between novice and expert programmers by proposing a rule-based error classification tool, which classified errors in 95,631 code pairs and identified an average of 3.47 errors per pair to reveal that novices' errors stem from lack of knowledge, while experts' errors arise from carelessness or unconventional problem-solving.
Finding and fixing errors is a time-consuming task not only for novice programmers but also for expert programmers. Prior work has identified frequent error patterns among various levels of programmers. However, the differences in the tendencies between novices and experts have yet to be revealed. From the knowledge of the frequent errors in each level of programmers, instructors will be able to provide helpful advice for each level of learners. In this paper, we propose a rule-based error classification tool to classify errors in code pairs consisting of wrong and correct programs. We classify errors for 95,631 code pairs and identify 3.47 errors on average, which are submitted by various levels of programmers on an online judge system. The classified errors are used to analyze the differences in frequent errors between novice and expert programmers. The analyzed results show that, as for the same introductory problems, errors made by novices are due to the lack of knowledge in programming, and the mistakes are considered an essential part of the learning process. On the other hand, errors made by experts are due to misunderstandings caused by the carelessness of reading problems or the challenges of solving problems differently than usual. The proposed tool can be used to create error-labeled datasets and for further code-related educational research.