Most programming problems have multiple viable solutions that organize the underlying problem’s tasks in fundamentally different ways. Which organizations (a.k.a. plans) students implement and prefer depends on solutions they have seen before as well as features of their programming language. How much exposure to planning do students need before they can appreciate and produce different plans? We report on a study in which students in introductory courses at two universities were given a single lecture on planning between assessments. In the post-assessment, many students produced multiple high-level plans (including ones first introduced in the lecture) and richly discussed tradeoffs between plans. This suggests that planning can be taught with fairly low overhead once students have a decent foundation in programming.
F.E.V.G. Castro, S. Krishnamurthi, and K. Fisler. The Impact of a Single Lecture on Program Plans in First-Year CS. Koli Calling International Conference on Computing Education Research (Koli, Finland. 16-19 November 2017)