Incremental Development and CS1 Student Outcomes And Behaviors
Jaxton Winder, Elise Francis, Bridget Staley, John Edwards · 2024
This paper reports an analysis of incremental development: a process in computer science education where students code a little and run their code regularly making continual forward progress. We use a recently published measure of incremental development to evaluate reconstructed submissions collected from CS1 students using keystroke and IDE data. An element that was lacking in the original paper was an analysis of correlation of incremental development with academic outcomes which our study does. We mark submissions as incrementally developed or not and we then analyze the keystroke behaviors between these submissions and final assignment performance. We study if incremental development is correlated with grades, number of assignment interaction events, time spent on the assignment, number of coding sessions to complete the assignment, as well as other metrics. We present evidence that incremental development is correlated with time spent on the assignment, number of times the code was executed by the student, and similar measures. We do not find evidence that incremental development is correlated with assignment score or final grade in the course. Our analysis is consistent with the belief that incremental development will help students complete programming assignments more quickly but it does not support the idea that incremental development will result in better grades.