An Investigation of a Game Generator Tool to Teach Recursion

Doctoral Thesis


Permanent link to this Item
Journal Title
Link to Journal
Journal ISSN
Volume Title
For many beginners, learning to program has proved to be difficult, in particular, learning the topic of recursion. Serious games have shown much promise in education, including in the teaching of programming. However, the adoption rate in mainstream teaching still remains low. One reason given for this is the lack of game authoring tools to support educators with little or no game programming skills. Moreover, developing educational games is difficult, time consuming and expensive. One way to address this problem is to use domain-specific game generators to create customised games as needed. The proposal in this thesis is that supporting higher education teachers with a game generator tool could potentially aid them to effectively create serious games. The aim was to investigate the use of a game generator tool to aid CS instructors to easily generate instances of educational games to teach recursion. A User Centred Design (UCD) methodology was adopted to develop a prototype game generator tool called the Recursive Game Generator (RGG). Preliminary needs assessment and requirements analysis studies were conducted and conceptual design principles investigated. Four empirical studies were conducted to evaluate the prototype. Three were designed to evaluate the effectiveness of the prototype in supporting CS teachers to create games to teach novices the recursion topic while one evaluated the educational potential of the generated games from the lens of students. Eight conceptual design principles were proposed that could guide the development of serious games that cater to diversity. It was also found that CS educators and trainees found the prototype useful, easy to use and learn; and were satisfied with the tool's effectiveness and efficiency, recommending its adoption. Students'feedback showed that the generated games had educational potential for learning programming. The proposed conceptual design principles are insightful as they add new knowledge in the field of serious games design. Moreover, the positive empirical findings and user experiences suggest that such a higher-order tool has the potential to increase the adoption of serious games in programming education, and broadly meet the needs of a diverse audience of instructors and students.