Difference Syntax Trees for Characterising Student in Programming Course

The Online Judge System (OJS) is well-used in programming courses at universities or for self-learning. The system compiles and executes a set of source codes submitted in response to an assignment and automatically grades them by comparing the output results and expectations. In university programming courses, especially courses for beginners, students repeatedly modify and submit source code until they receive a 100-point score. The OJS stores every source code until each student gets 100 points on an assignment; the differences through the first to last submissions contain helpful information to estimate students' understanding of syntax or learning units in the course. In this study, the authors propose difference flow, a series of syntax trees extracted from the differences between the final submission and every previous one. The difference flow contains the node where the difference with the 100-point source code and each parent node; hence, its features (such as the count of each syntax node throughout the flow) may indicate the students' understanding.

Authors

Institutions

Publication Details

Published
2024-12-03
DOI
https://doi.org/10.1109/apsec65559.2024.00076
Primary Topic
Intelligent Tutoring Systems and Adaptive Learning
Type
article
Field-Weighted Citation Impact
0.00
Controls
|||
ALL TIME
JAN
FEB
MAR
APR
MAY
JUN
JUL
AUG
SEP
OCT
article

Difference Syntax Trees for Characterising Student in Programming Course

Kouta Aoki, Hidetake Uwano
Intelligent Tutoring Systems and Adaptive Learning
article

Difference Syntax Trees for Characterising Student in Programming Course

Kouta Aoki, Hidetake Uwano
article en

Abstract

The Online Judge System (OJS) is well-used in programming courses at universities or for self-learning. The system compiles and executes a set of source codes submitted in response to an assignment and automatically grades them by comparing the output results and expectations. In university programming courses, especially courses for beginners, students repeatedly modify and submit source code until they receive a 100-point score. The OJS stores every source code until each student gets 100 points on an assignment; the differences through the first to last submissions contain helpful information to estimate students' understanding of syntax or learning units in the course. In this study, the authors propose difference flow, a series of syntax trees extracted from the differences between the final submission and every previous one. The difference flow contains the node where the difference with the 100-point source code and each parent node; hence, its features (such as the count of each syntax node throughout the flow) may indicate the students' understanding.

National Institute of Technology, Kagoshima College (JP), National Institute of Technology, Nara College (JP)
Quality Education
Openalex Percentile: Top 73%
Intelligent Tutoring Systems and Adaptive Learning
AI Navigator

Ask Laika to Summarize, Analyze, and Connect papers live on the map.

Summarize Papers & Methodologies

Extract key findings, datasets, and comparative methods across publications.

Benchmark Rankings & Visual Analytics

Rank top research institutions, authors, funders, topics, and journals by Field-Weighted Citation Impact (FWCI) and paper volume with instant charts.

Connect Distant Disciplines

Bridge topological clusters on the map to find hidden collaborative intersections.