Semi-Supervised Verified Feedback Generation
Shalini Kaleeswaran, Anirudh Santhiar, Aditya Kanade, Sumit Gulwani

TL;DR
This paper introduces a semi-supervised method for generating verified, personalized feedback for student programming submissions by clustering solutions and verifying faults, significantly reducing instructor workload.
Contribution
It presents a novel semi-supervised clustering and verification approach for automated feedback generation in programming education, especially effective for dynamic programming assignments.
Findings
Verified feedback generated for 85% of submissions
Average feedback generation time was 1.6 seconds
Reduced instructor validation effort by a factor of 16
Abstract
Students have enthusiastically taken to online programming lessons and contests. Unfortunately, they tend to struggle due to lack of personalized feedback when they make mistakes. The overwhelming number of submissions precludes manual evaluation. There is an urgent need of program analysis and repair techniques capable of handling both the scale and variations in student submissions, while ensuring quality of feedback. Towards this goal, we present a novel methodology called semi-supervised verified feedback generation. We cluster submissions by solution strategy and ask the instructor to identify or add a correct submission in each cluster. We then verify every submission in a cluster against the instructor-validated submission in the same cluster. If faults are detected in the submission then feedback suggesting fixes to them is generated. Clustering reduces the burden on the…
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
TopicsSoftware Testing and Debugging Techniques · Teaching and Learning Programming · Software Engineering Research
