Coached program planning is a dialogue-based style of tutoring aimed at helping novices during the early stages of program writing. The intent is to help novices understand and solve problems in their own words through the construction of natural-language style pseudocode as the first step in solving a programming problem. We have designed an environment supporting coached program planning and have used it in a human-to-human, computer-mediated evaluation of 16 novice programmers enrolled in a pre-CS1 programming course at the University of Pittsburgh. The results show that students who underwent coached program planning, compared to those who did not, were more prolific with comments in their programs, committed fewer structural mistakes, and exhibited less erratic programming behavior during their implementation. The dialogues collected from this experiment followed a clear 4-step pattern. Starting with this observation, we are developing a dialogue-based intelligent tutoring system called the Pseudocode Tutor to support coached program planning.
['H. Chad Lane', 'Kurt VanLehn']
Coached program planning: dialogue-based support for novice program design