Gamification of student development projects in software engineering education
Date
Authors
Journal Title
Journal ISSN
Volume Title
Publisher
Abstract
Context. Student software development projects are an essential part of Software Engineering education. They provide students with the opportunity to work on real-world projects and gain practical experience. SCRUM, a popular agile methodology, is often used in these projects. Problem. Students often encounter several challenges in such projects, including learning new technologies and dealing with communication and coordination issues within the team. These factors can lead to a lack of motivation to contribute to the project and a decrease in productivity, potentially resulting in an insufficient project outcome. Objective. This thesis aims to use gamification to increase student motivation to contribute to the project and increase the team’s productivity across sprints. A further goal is to provide valuable project management features tailored to a SCRUM-based development process in an educational context, including features that help coordinate typical SCRUM meetings. Method. We conducted a user and requirements analysis to identify the needs of the students and supervisors of such projects. Based on the findings, we designed and implemented a gamified project management system named DinoDev, combining project management features with game elements. The system was evaluated in a real-world setting in a student development project at the University of Stuttgart. Seven students participated in the user study over the course of two sprints. Questionnaires were used to assess the approach. Result. The introduction of DinoDev increased student motivation to contribute to the project, although the self-reported data suggests that the students’ motivation was already high before the introduction of our tool, limiting the potential for improvement. The data indicates that our gamification concept was more effective for Achievers and Players than for other player types, and the project management features had a higher impact on the motivation to complete tasks than the game elements. An increase in sprint velocity was observed between the sprint before the study and the final sprint of the study, but the results are inconclusive due to the limited accuracy of the students’ effort estimations and the short evaluation period. The implemented project management features and the system overall were well received by the students. Conclusion. The causes of a lack of motivation in student projects are diverse and challenging to address. Therefore, the impact of gamification on motivation to contribute to a student project is limited. While the results suggest that game elements are a suitable tool to increase motivation in these projects, the small sample size limits the generalizability of the results and calls for further research. Providing features specifically targeted at small-scale development projects is a valuable addition and worth further implementation efforts.
Kontext. Studentische Softwareentwicklungsprojekte sind ein wesentlicher Bestandteil der Softwaretechnik-Ausbildung. Sie bieten Studierenden die Möglichkeit, an realen Projekten zu arbeiten und praktische Erfahrungen zu sammeln. SCRUM, eine beliebte agile Methodik, wird häufig in diesen Projekten verwendet. Problem. Studierende stehen in solchen Projekten oft vor mehreren Herausforderungen, einschließlich dem Erlernen neuer Technologien sowie der Bewältigung von Kommunikations- und Koordinationsproblemen innerhalb des Teams. Diese Faktoren können zu einem Mangel an Motivation führen, zum Projekt beizutragen, und zu einem Rückgang der Produktivität führen, was potenziell in einem unzureichenden Projektergebnis resultiert. Ziel. Diese Arbeit zielt darauf ab, durch den Einsatz von Gamification die Motivation der Studierenden zur Mitarbeit am Projekt zu erhöhen und die Produktivität des Teams über die Sprints hinweg zu steigern. Ein weiteres Ziel ist es, wertvolle Projektmanagementfunktionen bereitzustellen, die auf einen SCRUM-basierten Entwicklungsprozess im Bildungskontext zugeschnitten sind, einschließlich Funktionen, die bei der Koordination typischer SCRUM-Meetings helfen. Methode. Wir führten eine Nutzer- und Anforderungsanalyse durch, um die Bedürfnisse der Studierenden und Betreuer solcher Projekte zu identifizieren. Basierend auf den Ergebnissen entwarfen und implementierten wir ein gamifiziertes Projektmanagementsystem namens DinoDev, das Projektmanagementfunktionen mit Spielelementen kombiniert. Das System wurde in einem realen Umfeld in einem studentischen Entwicklungsprojekt an der Universität Stuttgart evaluiert. Sieben Studierende nahmen über zwei Sprints an der Nutzerstudie teil. Fragebögen wurden verwendet, um den Ansatz zu bewerten. Ergebnis. Die Einführung von DinoDev erhöhte die Motivation der Studierenden, zum Projekt beizutragen, obwohl die selbstberichteten Daten darauf hindeuten, dass die Motivation der Studierenden bereits vor der Einführung unseres Tools hoch war, was das Verbesserungspotenzial einschränkt. Die Daten zeigen, dass unser Gamification-Konzept für die Spielertypen Achiever und Player effektiver war als für andere Spielertypen, und dass die Projektmanagementfunktionen einen höheren Einfluss auf die Motivation zur Erledigung von Aufgaben hatten als die Spielelemente. Zwischen dem Sprint vor der Studie und dem letzten Sprint der Studie wurde ein Anstieg der Sprint Velocity beobachtet, aber die Ergebnisse sind aufgrund der begrenzten Genauigkeit der Aufwandsschätzungen der Studierenden und des kurzen Evaluierungszeitraums nicht eindeutig. Die implementierten Projektmanagementfunktionen und das System insgesamt wurden von den Studierenden gut aufgenommen. Schlussfolgerung. Die Ursachen für einen Mangel an Motivation in studentischen Projekten sind vielfältig und schwer zu beheben. Daher ist die Auswirkung von Gamification auf die Motivation zur Mitarbeit an einem studentischen Projekt begrenzt. Obwohl die Ergebnisse darauf hindeuten, dass Spielelemente ein geeignetes Mittel sind, um die Motivation in diesen Projekten zu steigern, beschränkt die kleine Stichprobengröße die Allgemeingültigkeit der Ergebnisse und erfordert weitere Forschung. Das Entwickeln von Features, die speziell auf klein angelegte Entwicklungsprojekte abzielen, ist eine wertvolle Ergänzung für studentische Projekte und lohnt weitere Implementierungsbemühungen.