Effects of Hints on Debugging Scratch Programs: An Empirical Study with Primary School Teachers in Training

08/16/2021
by   Luisa Greifenstein, et al.
0

Bugs in learners' programs are often the result of fundamental misconceptions. Teachers frequently face the challenge of first having to understand such bugs, and then suggest ways to fix them. In order to enable teachers to do so effectively and efficiently, it is desirable to support them in recognising and fixing bugs. Misconceptions often lead to recurring patterns of similar bugs, enabling automated tools to provide this support in terms of hints on occurrences of common bug patterns. In this paper, we investigate to what extent the hints improve the effectiveness and efficiency of teachers in debugging learners' programs using a cohort of 163 primary school teachers in training, tasked to correct buggy Scratch programs, with and without hints on bug patterns. Our experiment suggests that automatically generated hints can reduce the effort of finding and fixing bugs from 8.66 to 5.24 minutes, while increasing the effectiveness by 34 improvement is convincing, arguably teachers in training might first need to learn debugging "the hard way" to not miss the opportunity to learn by relying on tools. We therefore investigate whether the use of hints during training affects their ability to recognise and fix bugs without hints. Our experiment provides no significant evidence that either learning to debug with hints or learning to debug "the hard way" leads to better learning effects. Overall, this suggests that bug patterns might be a useful concept to include in the curriculum for teachers in training, while tool-support to recognise these patterns is desirable for teachers in practice.

READ FULL TEXT
research
12/01/2021

Common Bugs in Scratch Programs

Bugs in Scratch programs can spoil the fun and inhibit learning success....
research
09/14/2022

HyperPUT: Generating Synthetic Faulty Programs to Challenge Bug-Finding Tools

As research in automatically detecting bugs grows and produces new techn...
research
03/23/2021

What we can learn from how programmers debug their code

Researchers have developed numerous debugging approaches to help program...
research
05/06/2019

Charactering and Detecting CUDA Program Bugs

While CUDA has become a major parallel computing platform and programmin...
research
12/07/2021

DeepDiagnosis: Automatically Diagnosing Faults and Recommending Actionable Fixes in Deep Learning Programs

Deep Neural Networks (DNNs) are used in a wide variety of applications. ...
research
02/26/2021

Finding Bugs with Specification-Based Testing is Easy!

Automated specification-based testing has a long history with several no...
research
11/04/2019

Improved Recognition of Security Bugs via Dual Hyperparameter Optimization

Background: Security bugs need to be handled by small groups of engineer...

Please sign up or login with your details

Forgot password? Click here to reset