Planning, as a metacognitive skill, is critical to problem solving in computer science. Within the context of computer science, planning constitutes of understanding the problem by reading and exploring the prompt, breaking the problem down into smaller pieces such as listing methods and using pseudocode, and determining what tools are needed to solve the problem. Understanding the fine-grained differences between students with and without prior programming experience in terms of planning can help educators provide better guidance to novice learners in terms of how to approach problem-solving and design solutions given a programming task. Prior studies have contributed to understanding different aspects of problem solving in computing education, such as digesting errors, and debugging. However, few studies focused on the step of planning that happens mainly prior to problem solving. To fill this gap, we studied 48 students with and without prior programming experience in terms of planning prior to working on a programming assignment in the context of a second introductory programming course (CS2) via surveys and follow-up interviews. Our results shed light into the fine-grained differences in planning between novice and experienced learners. We discussed these differences and how they can be used to guide meaningful interventions that focus on megacognitive skills in computing education.
Are you a researcher? Would you like to cite this paper? Visit the ASEE document repository at peer.asee.org for more tools and easy citations.