Discipline: Computer Sciences and Information Management
Subcategory: Computer Science & Information Systems
Austin Hodge - Winston-Salem State University
Data Structures is one of the most important computer science courses, but also among those with the highest rate of drops and failures. Part of the problem is that many students find the material particularly abstract, difficult, and boring. This requires using approaches and tools to improve student engagement and performance. Educational games are a powerful tool for engaging students by adding fun to learning. However, there are few educational games for Computer Science and most of them target introductory programming courses. The aim of the research reported here is to create an educational game for teaching Stacks as part of a Data Structures course. In an interactive and entertaining way, the game has to help students understand the concept of stack and practice the use and implementation of the Stack data structure. In the game, the student plays as a robot that is traveling in a spaceship to the kingdom of robots after a long, adventurous journey. During traveling however, the spaceship crashes and the robot has to walk home facing different obstacles on land and sea that challenge its knowledge of the Stack data structure. The design of the game involved thoughtful consideration of the expected outcome of the research. Exploring and brainstorming ideas for a game storyboard and for presenting the target concept of stack in a game-like form was the initial phase. In this phase, we tried to answer the question ‘What makes a good game fun or exciting?’ and thought critically about how to incorporate stacks without losing the core concepts of a good game. The next phase was to create a simple prototype to test desired features in the game. This was followed by the implementation, which included creating a custom node-based navigation system and combining it with the pre-built navigation functionality available in the Unity Engine; creating the robot with its behavioral controller; creating a stack system for pushing and popping blocks (by the robot); and creating several game levels with the developed tools. The implementation of the user interface came next with some graphical improvements to better satisfy the entertainment aspect of the game. We also added some ‘housekeeping’ functions, such as data saving and loading, and collecting and exporting useful statistics for the player. The final phase includes testing and evaluating the game. The game is being used in the Data Structures course taught at WSSU in the fall semester of 2016. The students used the game in two lab sessions (one on using stacks and one on implementing stacks). The evaluation is still under way, but the initial feedback from the students is very positive; the majority said that they enjoyed the game and found it helpful. We believe that our Stack game will help students taking a Data Structures course by making the learning process more engaging and exciting.
Funder Acknowledgement(s): This study was supported, in part, by a grant from NSF, HRD 1623236 'HBCU-UP TIP: Increasing Student Motivation and Engagement in STEM Courses through Gamification'.
Faculty Advisor: Darina Dicheva, firstname.lastname@example.org
Role: Participated in the game design and implemented the game.