Academic Commons

Reports

A Gameful Approach to Teaching Software Design and Software Testing - Assignments and Quests

Sheth, Swapneel; Bell, Jonathan Schaffer; Kaiser, Gail E.

Introductory CS classes typically do not focus on software testing. A lot of students’ mental model when they start learning programming is that “if it compiles and runs without crashing, it must work fine.” Despite numerous attempts to introduce testing early in CS programs and many known benefits to inculcating good testing habits early in one’s programming life, students remain averse to software testing as there is low student interest in software testing. To address this problem, we used an internally developed research system called HALO — “Highly Addictive sociaLly Optimized Software Engineering”. Our previous work describes early prototypes of HALO; in this paper, we describe how we used it for the CS2 class and the feedback from real users. HALO uses game-like elements and motifs from popular games like World of Warcraft to make the whole software engineering process and in particular, the software testing process, more engaging and social. HALO is not a game; it leverages game mechanics and applies them to the software development process. For example, in HALO, students are given a number of “quests” that they need to complete. These quests are used to disguise standard software testing techniques like white and black box testing, unit testing, and boundary value analysis. Upon completing these quests, the students get social rewards in the form of achievements, titles, and experience points. They can see how they are doing compared to other students in the class. While the students think that they are competing just for points and achievements, the primary benefit of such a system is that the students’ code gets tested a lot better than it normally would have.

Subjects

Files

More About This Work

Academic Units
Computer Science
Publisher
Department of Computer Science, Columbia University
Series
Columbia University Computer Science Technical Reports, CUCS-030-14
Published Here
February 21, 2014
Academic Commons provides global access to research and scholarship produced at Columbia University, Barnard College, Teachers College, Union Theological Seminary and Jewish Theological Seminary. Academic Commons is managed by the Columbia University Libraries.