4.7 Article

Integrating programming errors into knowledge graphs for automated assignment of programming tasks

Journal

EDUCATION AND INFORMATION TECHNOLOGIES
Volume -, Issue -, Pages -

Publisher

SPRINGER
DOI: 10.1007/s10639-023-12026-7

Keywords

Programming error; Student ontology; Problem ontology; Knowledge graph; Automated system

Ask authors/readers for more resources

In this study, a classification system of programming errors was developed based on the historical data of over 680,540 programming records collected on an Online Judge platform. The system described six types of programming errors and their connections with fundamental programming knowledge. Furthermore, student and problem ontologies were created using ontology-based learner modeling techniques, providing accurate representations of student information and problem characteristics. An automated system for assigning programming tasks to students was designed based on the classification system and knowledge graphs. The effectiveness of the automated task assignment system was tested using a quasi-experimental design, showing no significant difference in student performance compared to traditional assignment methods.
In this study, we developed a classification system of programming errors based on the historical data of 680,540 programming records collected on the Online Judge platform. The classification system described six types of programming errors (i.e., syntax, logical, type, writing, misunderstanding, and runtime errors) and their connections with fundamental programming knowledge. Furthermore, we used ontology-based learner modeling techniques to create student ontology, which provided an accurate representation of a student's information (e.g., knowledge level, programming history, and performance) and the mechanisms for tracking its continuous changes. We also designed problem ontology, providing a uniform approach to describe the characteristics of a programming problem. The instances of student and problem ontologies were visualized as knowledge graphs. Based on the classification system of programming errors and knowledge graphs, we designed an automated system for assigning programming tasks to students. We tested the effectiveness of the automated task assignment system using a quasi-experimental design. Students in the control group were asked to solve programming tasks assigned by their teacher throughout eight weeks. In the experimental group, students accomplished programming tasks assigned by the system. We found no significant difference in student performance between the two groups. This study has significant methodological and practical implications.

Authors

I am an author on this paper
Click your name to claim this paper and add it to your profile.

Reviews

Primary Rating

4.7
Not enough ratings

Secondary Ratings

Novelty
-
Significance
-
Scientific rigor
-
Rate this paper

Recommended

No Data Available
No Data Available