An Empirical Study of the Content and Quality of Sprint Retrospectives in Undergraduate Team Software Projects
Published in 46th International Conference on Software Engineering (ICSE 2024), 2024
Citation: Christopher Hundhausen, Phill Conrad, Ahsun Tariq, Surya Pugal and Bryan Zamora Flores. 2024. An Empirical Study of the Content and Quality of Sprint Retrospectives in Undergraduate Team Software Projects. 46th International Conference on Software Engineering (ICSE 2024). Lisbon, Portugual. April 2024, 10 pages.
Abstract
The retrospective, or retro, is a fundamental component of the Agile process, widely used in both software engineering courses and industry. In a retro, teams come together at the end of a sprint to reflect on their team’s performance. We conducted an empirical study to explore three research questions concerning retros in undergraduate team projects: (1) What do students reflect on? (2) What is the quality of their reflections? (3) How do teams’ retros vary in terms of content and quality? Our study analyzed a corpus of 963 statements documented in the retros of 32 undergraduate software teams (n=182 students) enrolled in four software engineering courses at two North American universities. A content analysis revealed that teams reflected most often on their work, communication, and collaboration practices. Nearly a third of teams’ reflections focused on their general work practices, while nearly half focused on specific areas of the software development lifecycle—most prominently, pull requests, issues, and coding/testing/debugging. An analysis of the quality of teams’ retro reflections showed that only 13% provided justification for a strategy to be stopped, continued, or started. An analysis of team-by-team results indicated significant differences in teams’ retro content and quality. We compare these results to previous studies of retros in academia and industry, and consider their implications for software engineering education.