UBC Theses and Dissertations

UBC Theses Logo

UBC Theses and Dissertations

Thinking still matters: prompting reflection in software engineering education Chin, Kyle

Abstract

Due to the proliferation of tools that assist or automate code writing, the modern software engineer requires an ever-increasing amount of reflection skills in addition to a baseline of technical skills. Computer science curricula need to adjust to this emerging reality by putting greater emphasis on reflection as well—about the actual written code and meta-software engineering processes that led to it. In this work, we explore two interventions in a project-based, third-year post-secondary software engineering course that attempt to bridge this gap. For the course project, we applied alternative grading to the existing automated feedback system, which resulted in students reasoning more holistically and deeply before iterating on their software. Students wrote better tests and more succinct code. To supplement the project and explicitly tie-in lecture concepts, we added written, non-code tasks to this programming-heavy project. This resulted in better collaboration and meta skill development for some students, but was perceived to be less important than coding by others, who received less learning benefits. Overall, these interventions show that reflection-focused pedagogy can be implemented in computer science curricula with manageable implementation efforts.

Item Media

Item Citations and Data

Rights

Attribution-NonCommercial-NoDerivatives 4.0 International