Abstract:
Agile Software Development (ASD) is the most dominant software development methodology
in the global software engineering industry nowadays. Accordingly, ASD has
become an integral component in the curricula of computing-related degree programs.
Nevertheless, teaching industry-based concepts within an academic setting is always
challenging. A variety of pedagogical techniques such as lectures, capstone projects, case
studies, gamification etc. are used in teaching ASD within a classroom environment.
The purpose of this study is to investigate the use of capstone projects in teaching
agile concepts, through a systematic literature review. The methodology is based on a
standard guideline proposed by Kitchenham and Charters in 2007. Initially, a comprehensive
review protocol was defined and executed. Thus, a search query was formulated
and executed in 5 electronic databases to retrieve a total of 249 articles. Then the
study selection criteria were applied to select 15 scholarly articles for data analysis.
The findings revealed that Scrum was the most widely practised framework (60%)
in capstone projects, followed by Extreme programming (13%), Kanban (13%), and
Scrumban (7%). Further, several challenges faced by student agile project teams due
to limitations in the academic environment were identified. These include the inability
to timely communicate between team members or customers, full-time unavailability
of customers and part-time students, technical skill level differences within the team,
and poor knowledge of agile concepts and software estimation techniques etc. As a
countermeasure, efforts have been made to modify standard agile practices to suit
an academic environment, preserving their core values and principles. Mentoring or
agile coaching can be identified as a successful strategy for enhancing the performance
of inexperienced student teams. However, existing approaches for the assessment of
the individual performance of students seem limited and ineffective. Thus, the use of
capstone projects is apparently an effective pedagogical technique in teaching ASD.