Participants form development teams of 5-8 people. All teams work collaboratively on the same software product, handling all tasks from requirements engineering, to design, implementation and organization of their teams. All Scrum roles, including Product Owner (who interacts to the customer) and Scrum Master (responsible for supporting the team) are performed by student team members. Teams are expected to self-organize and to explore ways of collaboration and communication that best work for them.
The contents of the lecture will include how to apply the Scrum methodology in a multi-team setting. Over the course of the semester, you will conduct 4 sprints à 2-3 weeks each in your development teams, guided by student tutors. The theory taught in the lecture can be applied directly in the accompanying project. This course focuses on modern Agile software development methods and concepts as well as their practical application.
The software developed in the winter semester 2019/20 installment of the course will be hosted on GitHub and is available under an open-source license.
If the number of participants is low (i.e., < 10 people), only a single development team will be formed and focus will shift towards scalability of the developed application.