Second Year Project: Software Development in Large Teams (15 ECTS) (Spring 2024)
Official course description:
Course info
Programme
Staff
Course semester
Exam
Abstract
In
collaboration with industrial partners, students will apply Scrum in practice
and reason about its application in a controlled yet realistic environment.
Description
Students will collaborate with industrial partners
on projects that are relevant to the industry and provided by these partners.
They will experience what it is like to work on a real industrial project in a
setting as realistic as possible. They will apply in practice all the software
engineering skills they have learned in their earlier courses, while also
learning new technologies.
Student groups will learn to apply Scrum, one of the agile frameworks, in
practice by performing several short iterations in their projects. Each group
of 7–9 students will be supported by a product owner from the industrial
partner, a Scrum master enrolled in a master-level elective course, and an
agile coach from the industry.
Semester Layout. The course will be divided into four blocks. In the first
block, weeks 1 and 2, you will be involved in the formation of the groups and
the matchmaking with the industrial partners. During the second block, weeks 3
and 4, you will kick off the project with your Scrum team. Finally, in the
third block, weeks 5 to 17, you will run six two-week sprints and participate
in two feedback sessions. The course will conclude with a final week of
submissions, demos, and celebrations before the exam session.
Formal prerequisites
- You are enrolled on the BSc study program in software development.
- You know the basics of software engineering, e.g., different software process models and related activities, corresponding to what is covered in the BSc course Analysis, Design and Software Architecture.
- You are able to apply some programming language to construct fully functional software programs, corresponding, e.g., to what is covered in the BSc course Analysis, Design and Software Architecture.
- You are aware of the basic techniques for planning and conducting a software development project in a small team of 5-7 students.
Intended learning outcomes
After the course, the student should be able to:
- Apply Scrum in a large-scale software development project as part of a team in cooperation with an industrial partner
- Select and apply (new) technologies (potentially including programming languages) within the context of the project
- Identify and solve teamwork related issues
- Select and apply suitable software engineering practices and tools
- Identify and solve software engineering problems
- Compare and discuss with other teams the different experiences and learnings from the project
- Reflect on the project in terms of learnings gained from a software engineering and teamwork perspective
Learning activities
Students actively participate in a software development team that collaborates on a substantial project. The project is intentionally designed to be too extensive for completion by only two or three individuals within the allocated timeframe. Consequently, students are tasked with efficiently dividing the workload among themselves, each taking individual responsibility for a significant portion of the project. Students engage in active cooperation with an external partner, jointly constructing and managing the product backlog, planning work during sprint planning meetings, and reviewing the completed tasks at the end of each sprint, while reflecting on the team's work processes.
Mandatory activities
All students must comply with the following mandatory activities to be admitted to the exam:- Participate in the Scrum simulation
- Participate in feedback session 1
- Participate in feedback session 2
- Group hand-ins: feedback session slide set, process overview document, technical overview document
- Individual hand-in: project report
Mandatory hand-ins are designed to provide you the framework to work with the ILOs, and they are an opportunity to receive feedback from the teaching assistant assigned to your team.
In case of failure in executing the mandatory activities, there will be mechanisms in place to allow for a second attempt. The format of the second attempt will be dependent on the number of students that will have to perform the activity as a second attempt.
The student will receive the grade NA (not approved) at the ordinary exam, if the mandatory activities are not approved and the student will use an exam attempt.
Course literature
- Beck, Kent, et al. "Manifesto for agile software development." (2001).
- Schwaber, Ken, and Jeff Sutherland. "The scrum guide." Scrum Alliance 2020.
- Project manual
Student Activity Budget
Estimated distribution of learning activities for the typical student- Preparation for lectures and exercises: 3%
- Lectures: 12%
- Assignments: 5%
- Project work, supervision included: 60%
- Exam with preparation: 20%
Ordinary exam
Exam type:D: Submission of written work with following oral, Internal (7-point scale)
Exam variation:
D2G: Submission for groups with following oral exam supplemented by the submission. Shared responsibility for the report.
Submission includes joint group project submission and individual learning diaries.
Group project submission includes:
Slides of your review presentation
Link to version control (git hub)
Link to Product backlog and Sprint Backlog (or screen shots)
Process overview document
Technical overview document
Group and individual
- Group size: 6-9 depending on the number of students.
15 minutes
Group exam : Joint student presentation followed by a group dialogue. All the students are present in the examination room throughout the examination.
reexam
Exam type:D: Submission of written work with following oral, Internal (7-point scale)
Exam variation:
D2G: Submission for groups with following oral exam supplemented by the submission. Shared responsibility for the report.
Group and individual
- Group size 1-9
15 minutes
Group exam : Joint student presentation followed by a group dialogue. All the students are present in the examination room throughout the examination.
Time and date
Ordinary Exam - submission Fri, 17 May 2024, 08:00 - 14:00Ordinary Exam Mon, 3 June 2024, 09:00 - 21:00
Ordinary Exam Tue, 4 June 2024, 09:00 - 21:00
Ordinary Exam Thu, 6 June 2024, 09:00 - 21:00
Ordinary Exam Fri, 7 June 2024, 09:00 - 21:00
Ordinary Exam Mon, 10 June 2024, 09:00 - 21:00
Ordinary Exam Tue, 11 June 2024, 09:00 - 21:00
Ordinary Exam Wed, 12 June 2024, 09:00 - 21:00
Ordinary Exam Thu, 13 June 2024, 09:00 - 21:00
Reexam - submission Wed, 24 July 2024, 08:00 - 14:00
Reexam Thu, 22 Aug 2024, 09:00 - 18:00
Reexam Fri, 23 Aug 2024, 09:00 - 18:00