Publication Type

Conference Proceeding Article

Version

acceptedVersion

Publication Date

1-2022

Abstract

Novice programmers often struggle with problem solving due to the high cognitive loads they face. Furthermore, many introductory programming courses do not explicitly teach it, assuming that problem solving skills are acquired along the way. In this paper, we present 'PCDIT', a non-linear problem solving framework that provides scaffolding to guide novice programmers through the process of transforming a problem specification into an implemented and tested solution for an imperative programming language. A key distinction of PCDIT is its focus on developing concrete cases for the problem early without actually writing test code: students are instead encouraged to think about the abstract steps from inputs to outputs before mapping anything down to syntax. We reflect on our experience of teaching an introductory programming course using PCDIT, and report the results of a survey that suggests it helped students to break down challenging problems, organise their thoughts, and reach working solutions.

Keywords

Computational thinking, novice programmers, problem solving, Python programming

Discipline

Educational Methods | Programming Languages and Compilers

Research Areas

Software and Cyber-Physical Systems

Publication

2022 55th Hawaii International Conference on System Sciences (HICSS): January 4-7: Proceedings

First Page

982

Last Page

991

ISBN

97809981331-57

Identifier

10.24251/HICSS.2022.121

Publisher

IEEE Computer Society

City or Country

Los Alamitos, CA

Additional URL

https://doi.org/10.24251/HICSS.2022.121

Share

COinS