Instructional Strategies for Teaching Computational Thinking in Secondary School Computer Science Introductory Courses

Thumbnail Image

Date

2023-05

Journal Title

Journal ISSN

Volume Title

Publisher

Abstract

There is a consistent call for teaching computational thinking (CT) in computer science (CS) courses and a massive body of CT research that emphasizes its importance in improving students’ computational skills. However, it is not clear how CT has been included and implemented in CS courses. This study explored how prevalent CT practices (abstraction, algorithms, pattern recognition, and decomposition) are in AP Computer Science Principles (AP CSP) courses and how they are implemented and taught. The study also examined teachers’ experiences and needs in teaching CT practices. I employed a mixed method multiple-case study design to explore the implementation of CT practices. Five AP CSP courses were analyzed (Code.org, Mobile CSP, BJC, Microsoft MakeCode, and UTeach). Also, five CS teachers who had at least one year of experience in teaching one of these courses were interviewed. For courses, frequencies and percentages of lessons that included CT practices were determined, and for quantitative data, thematic analysis procedures and constant comparative analysis procedures were employed. The results showed that abstraction was the most included, while decomposition was minimally included. In addition, this study pointed out different instructional strategies to teach abstraction and algorithms in an engaging environment. Teaching pattern recognition was mainly included in activities designed mostly to teach abstraction. However, decomposition was included mainly as a scaffolding strategy. The teachers reported improvement in their students’ understanding of abstraction. However, the teachers mentioned some challenges with teaching CT practices, such as student aversion to incorporate some CT practices in their coding, abstraction and algorithms in particular. Also, teachers mentioned that abstraction and decomposition are difficult for students. The teachers also reported that pattern recognition is not an easy CT practice and that students struggled to recognize patterns in their code. In addition, teachers agreed on the need for instructional strategies to teach pattern recognition and decomposition. It is recommended to explicitly teach pattern recognition and decomposition like what has been done with abstraction and algorithms. Teaching all four CT practices explicitly and as one entity is recommended. Also, showing the relationships between all CT practices as CT practices exist and how they can be used to solve problems is also recommended. More studies to focus on only one CT practice at a time or to examine CT practices in AP CSA curricula could be conducted in the future.

Description

Keywords

Computational Thinking, Programming, Computer Science, AP CSP

Citation

Endorsement

Review

Supplemented By

Referenced By

Copyright owned by the Saudi Digital Library (SDL) © 2025