Mining patterns in syntax trees to automate code reviews of student solutions for programming exercises
Charlotte Van Petegem, Kasper Demeyere, Rien Maertens, Niko Strijbol,, Bram De Wever, Bart Mesuere, Peter Dawyndt

TL;DR
ECHO is a machine learning approach that analyzes syntax tree patterns to automate and speed up code review feedback for student programming solutions, reducing manual effort.
Contribution
This paper introduces ECHO, a novel method that predicts feedback annotations from syntax tree patterns, enabling real-time automated code review in educational contexts.
Findings
ECHO accurately predicts feedback annotations based on syntax patterns.
ECHO operates efficiently enough for real-time use during live code reviews.
ECHO adapts flexibly to different feedback patterns from both automated and human reviewers.
Abstract
In programming education, providing manual feedback is essential but labour-intensive, posing challenges in consistency and timeliness. We introduce ECHO, a machine learning method to automate the reuse of feedback in educational code reviews by analysing patterns in abstract syntax trees. This study investigates two primary questions: whether ECHO can predict feedback annotations to specific lines of student code based on previously added annotations by human reviewers (RQ1), and whether its training and prediction speeds are suitable for using ECHO for real-time feedback during live code reviews by human reviewers (RQ2). Our results, based on annotations from both automated linting tools and human reviewers, show that ECHO can accurately and quickly predict appropriate feedback annotations. Its efficiency in processing and its flexibility in adapting to feedback patterns can…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsOnline Learning and Analytics · Software Engineering Research · Educational Technology and Assessment
