Search, Align, and Repair: Data-Driven Feedback Generation for Introductory Programming Exercises
This paper introduces the “Search, Align, and Repair” data-driven program repair framework to automate feedback generation for introductory programming exercises. Distinct from existing techniques, our goal is to develop an efficient, fully automated, and problem-agnostic technique for large or MOOC-scale introductory programming courses. We leverage the large amount of available student submissions in such settings and develop new algorithms for identifying similar programs, aligning correct and incorrect programs, and repairing incorrect programs by finding minimal fixes. We have implemented our technique in the Sarfgen system and evaluated it on thousands of real student attempts from the Microsoft-DEV204.1x edX course and the Microsoft CodeHunt platform. Our results show that Sarfgen can, within two seconds on average, generate concise, useful feedback for 89.7% of the incorrect student submissions. It has been integrated with the Microsoft-DEV204.1X edX class and deployed for production use.
Thu 21 JunDisplayed time zone: Eastern Time (US & Canada) change
16:10 - 17:00 | Programming-Student FeedbackPLDI Research Papers at Grand Ballroom AB Chair(s): Dan Grossman University of Washington | ||
16:10 25mTalk | Automated Clustering and Program Repair for Introductory Programming Assignments PLDI Research Papers Sumit Gulwani Microsoft Research, Ivan Radiček Vienna University of Technology, Austria, Florian Zuleger TU Vienna Media Attached | ||
16:35 25mTalk | Search, Align, and Repair: Data-Driven Feedback Generation for Introductory Programming Exercises PLDI Research Papers Ke Wang University of California at Davis, USA, Rishabh Singh Google Brain, Zhendong Su University of California, Davis Media Attached |