The Use of Computational Thinking Skills, Difficulties, and Strategies of Introductory Programming Students Solving Bebras Tasks
2026-06-01 • Computers and Society
Computers and Society
AI summaryⓘ
The authors studied how students new to programming use computational thinking (CT) skills to solve simple computer science problems called Bebras tasks. They found that students most often used skills like algorithmic thinking, abstraction, and decomposition, but used evaluation and generalization less. Students had trouble understanding tasks and planning solutions, and their use of CT skills was linked to getting correct answers. The study suggests Bebras tasks can help beginners practice these important thinking skills.
Computational ThinkingAlgorithmic ThinkingAbstractionDecompositionEvaluationGeneralizationIntroductory ProgrammingBebras TasksProblem SolvingThematic Analysis
Authors
Enrico Benedetti, Isaac Alpizar-Chacon, Johan Jeuring
Abstract
Computational thinking (CT) is regarded as a fundamental skill set everyone should learn. Identifying when and how CT skills are used is challenging but important to inform interventions supporting their development. Previous research has examined how students and experts apply CT skills when solving introductory computational problems. However, the extent to which higher education students in introductory programming courses do so in depth is underexplored. We address this gap by examining how those students apply CT skills when solving computational problems, the difficulties they encounter, and the strategies they employ. We collected plans and solutions to Bebras tasks (short problems introducing CS concepts and considered effective for eliciting CT skills) in an introductory programming course for non-CS majors. We gathered 241 submissions from 58 students across five tasks, along with post-task comments and reflections on strategies. We analyzed the data using descriptive statistics, applied an existing coding scheme to identify CT skills, and conducted thematic analysis to identify difficulties and strategies. Submissions varied in structure and level of detail. The most prevalent CT skills were algorithmic thinking, abstraction, and decomposition, while evaluation and generalization appeared much less frequently. CT skill presence was positively associated with correct answers. Students faced challenges in four areas, including understanding the tasks and making a plan, and reported various problem-solving strategies. Consolidating and extending prior research on CT skills and problem solving, our findings show that students in introductory programming apply CT skills but can struggle to solve problems systematically and explain their reasoning. Furthermore, Bebras tasks create opportunities for this population to engage CT skills and could be used in future research.