Debugging Pathways: Open-Ended Discrepancy Noticing, Causal Reasoning, and Intervening

David DeLiema,Jeffrey K. Bye,Vijay Marupudi
DOI: https://doi.org/10.1145/3650115
2024-03-05
ACM Transactions on Computing Education
Abstract:Learning to respond to a computer program that is not working as intended is often characterized as finding a singular bug causing a singular problem. This framing underemphasizes the wide range of ways that students and teachers could notice discrepancies from their intention, propose causes of those discrepancies, and implement interventions. Weaving together a synthesis of the existing research literature with new multimodal interaction analyses of teacher-student conversations during coding, we propose a framework for debugging that foregrounds this open-endedness. We use the framework to structure an analysis of three naturalistic debugging situations (with U.S. 5th–10th graders) that range from solo debugging to collaborative discourse. We argue that a broken computer program is a polysemous object through which teachers and students actively and publicly notice, reason about, and negotiate different debugging pathways. We document students and teachers improvisationally altering a debugging pathway, justifying a particular pathway, and outwardly discussing competing pathways. This paper provides a framework for structuring debugging pedagogy to be less about scaffolding a student toward a specific pathway to a fix, and more about exploring multiple possible pathways and judging the (learning) value of various routes.
education, scientific disciplines
What problem does this paper attempt to address?