Thu 21 Jun 2018 16:10 - 16:35 at Grand Ballroom AB - Programming-Student Feedback Chair(s): Dan Grossman

Providing feedback on programming assignments is a tedious task for the instructor, and even impossible in large Massive Open Online Courses with thousands of students. Previous research has suggested that program repair techniques can be used to generate feedback in programming education. In this paper, we present a novel fully automated program repair algorithm for introductory programming assignments. The key idea of the technique, which enables automation and scalability, is to use the existing correct student solutions to repair the incorrect attempts. We evaluate the approach in two experiments: (I) We evaluate the number, size and quality of the generated repairs on 4,293 incorrect student attempts from an existing MOOC. We find that our approach can repair 97% of student attempts, while 81% of those are small repairs of good quality. (II) We conduct a preliminary user study on performance and repair usefulness in an interactive teaching setting. We obtain promising initial results (the average usefulness grade 3.4 on a scale from 1 to 5), and conclude that our approach can be used in an interactive setting.

Thu 21 Jun

Displayed 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
25m
Talk
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
25m
Talk
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