Modeling a problem solving approach through computational thinking for teaching programming / Zebel Al Tareq - Zebel , Al Tareq (2021)
Different teaching approaches for programming are widespread but what is essential for students is being able to computationally formulate an algorithmic solution at first and then transfer to code. A number of factors such as inefficient teaching approaches and lack of problem-solving skills are factors making this knowledge procedure difficult. This study aims to investigate teaching issues in solving programming problems and find the right approach to teach programming using a suitable problem solving approach method. Sorting algorithm as a concept for solving problems have been utilized to understand the effectiveness of the model in different teaching methods. After carrying out a thorough literature review on core concepts of the study, a pilot study was conducted, and it identified some difficulties faced in teaching programming and motivated the search for an approach to overcome the issues and design the workshops for the feasibility study. A problem-solving approach (PSA) model was formulated using computational thinking concepts based on the sorting problems. An experimental study was designed to evaluate the PSA model. The syntax-based programming workshop was the control group. The problem-based and the game-based programming workshops utilizing our problem-solving model using sorting algorithms were the experimental groups. A one-way ANOVA test indicated that the mean score for syntax-based workshop post test scores (M=6.99, SD=1.92) was significantly different than the post test scores of activity-based workshop (M=8.05, SD=1.96) and the post test scores of game-based workshop (M=8.62, SD=1.90). However, the post test scores of activity-based workshop (M=8.05, SD=1.96) did not significantly differ from the post test scores of game-based workshop (M=8.62, SD=1.90). The results suggested that students had improved their programming skills in all the workshops. However, participants had better acquisition of problem-solving skills and a better understanding of programming concepts with both the active learning skills compared to the syntax-based approach. Even though there was no significant difference between the scores of the active learning methods, a comparison between both the approaches from a teaching perspective suggested that game-based learning was more suitable due to its interactivity.