Skip to main content

April 22, 2015

Speaker: Michael Miljanovic, UOIT

Title: RoboBUG: A Game-Based Approach to Learning Debugging Techniques

Abstract: Debugging is the systematic process of finding and fixing errors (i.e. bugs) in a computer program, and it is considered a critical skill that should be acquired early in a programmer’s career. In order to learn debugging techniques, it is necessary to understand what bugs are, how they work, how to find them, and how to fix them. Unfortunately, the process of learning debugging is often both difficult and tedious to novices, and is not always adequately covered in the undergraduate computer science curriculum. As an alternative to traditional approaches for learning debugging (e.g. labs, written assignments) we propose the use of a game-based approach for introducing debugging techniques. Our approach is intended to create a more enjoyable learning experience that remains equally as effective as traditional methods at learning debugging concepts. Specifically, we designed a game called RoboBUG in which players assume the role of a futuristic programmer trying to find 'bugs' in his/her mechanical suit. We then conducted an experiment to compare novice programmers playing the RoboBUG game to novices who instead completed a traditional written assignment. Participants were compared based on their achievement of debugging learning outcomes and on their perception of the learning activity. Our results found that there was no statistically significant difference with respect to achieving debugging learning outcomes using RoboBUG versus a traditional written assignment. However, study participants reported a positive attitude towards using games for learning, and those who played the RoboBUG game believed it to be more fun and engaging than previous experience with written assignments.