Course syllabus
Course-PM
EDA397 / DIT193 EDA397 / DIT193 Agile development processes lp3 VT24 (7.5 hp)
Course is offered by the department of Computer Science and Engineering
Contact details
- Course responsible and lecturer
- Darko Durisic, Ph.D., Chalmers | GU (durisic@chalmers.se)
- Examiner
- Prof. Jennifer Horkoff ( jenho@chalmers.se)
- Course assistants
- Krishna Ronanki (krishna.ronanki@gu.se)
- Malsha Ashani Mahwatta Dona (malsha@chalmers.se)
- TAs
- Carla Brandschert (guscarlabr@student.gu.se)
- Sofia Serbina (gusserbiso@student.gu.se)
Course purpose
Agile software development aims at setting up an environment to develop software based on the following principles from the agile manifesto:
- Individuals and interactions is valued more than processes and tools
- Working software is valued more than comprehensive documentation
- Customer collaboration is valued more than contract negotiation
- Responding to change is valued more than following a plan
At the core of these principles is the realization that changes are inevitable and the conclusion that change management needs to be integrated into the development process. Agile approaches promotes iterative and incremental development by using a very tight design-code-test cycle.
In this interactive course we will explore together how to apply these agile principles to develop software and manage projects.
The course covers:
- Principles and practices of agile methods such as XP, Scrum and Lean
- Testing and test automation on both unit and system levels
- Communication- and people-centric software development
- Agile methods in relation to more traditional, plan-based methods
- Criticism to agile development methods
- Leading agile development projects and identifying the most important roles
- Scaling agile principles and practices to large organizations
- Measuring key performance indicators (KPIs) of agile teams
Schedule
Date | Time | Room | Topic | Lecturer |
Tuesday 16/1 |
15:15-17:00 |
Jupiter 243, Jupiter building |
Course Intro Lecture 1 - Agile Basics |
D. Durisic Teaching assistants |
Thursday 18/1 |
13:15-17:00 |
Delta, SVEA building |
Project work kick-off: Introduction to project (Mandatory) |
Teaching assistants |
Friday 19/1 |
15:15-17:00 (we start at 15:15, not 13:15) |
Delta, SVEA building |
Lecture 2 - Agile Principles, Practices and Methods (XP) |
D. Durisic |
Tuesday 23/1 |
13:15-17:00 |
Jupiter 243, Jupiter building |
Group work session - TAs will meet the groups and act as customers to give feedback on the system that is being developed. |
Teaching assistants |
Thursday 25/1 |
08:15-12:00 |
Jupiter 243, Jupiter building |
Group work session - TAs will meet the groups act as supervisors to give feedback on the implementation of scrum practices. |
Teaching assistants |
Thursday 25/1 |
15:15-17:00 |
Beta, Saga building |
Lecture 3 - Agile Methods (Scrum) |
D. Durisic |
Friday 26/1 |
15:15-17:00 |
Delta, Svea building |
Lecture 4 - Lean, Kanban, Scrumban |
D. Durisic |
Tuesday 30/1 |
08:15-13:00 |
Jupiter 121, Jupiter building |
Group work session - TAs will meet the groups and act as customers to give feedback on the system that is being developed. |
Teaching assistants |
Tuesday 30/1 |
13:15-17:00 |
Alfa, Saga building |
Group work session - TAs will meet the groups act as supervisors to give feedback on the implementation of scrum practices. |
Teaching assistants |
Thursday 1/2 |
15:15-17:00 |
Alfa, Saga building |
Lecture 5 - Agile Roles and Leadership |
D. Durisic |
Thursday 8/2 |
13:15-17:00 |
Jupiter 041, Jupiter building |
Sprint review (Mandatory) |
Teaching assistants |
Tuesday 13/2 |
13:15-17:00 |
Delta, Svea building |
Group work session - TAs will meet the groups and act as customers to give feedback on the system that is being developed. |
Teaching assistants |
Friday 16/2 |
15:15-17:00 |
Jupiter 243, Jupiter building |
Lecture 6 - Test-Driven Development, Continuous X and DevOps |
D. Durisic |
Tuesday 20/2 |
13:15-17:00 |
Delta, Svea building |
Group work session - TAs will meet the groups and act as supervisors to give feedback on the system that is being developed. |
Teaching assistants |
Thursday 22/2 |
13:15-17:00 |
Omega, Jupiter building |
Sprint review (Mandatory) |
Teaching assistants |
Friday 23/2 |
15:15-17:00 |
Jupiter 243, Jupiter building |
Exercise 1 |
D. Durisic |
Tuesday 27/2 |
13:15-17:00 |
Jupiter 243, Jupiter building |
Group work session - TAs will meet the groups and act as customers to give feedback on the system that is being developed. |
Teaching assistants |
Thursday 29/2 |
13:15-17:00 |
Alfa, Saga building |
Group work session - TAs will meet the groups act as supervisors to give feedback on the implementation of scrum practices. |
Teaching assistants |
Friday 1/3 |
15:15-17:00 |
Jupiter 243, Jupiter building |
Lecture 7 - Scaling Agile and Experiences from Volvo Cars |
D. Durisic |
Tuesday 5/3 |
13:15-17:00 |
Delta, Svea building |
Group work session - TAs will meet the groups and act as customers to give feedback on the system that is being developed. |
Teaching assistants |
Thursday 7/3 |
13:15-17:00 |
Alfa, Saga and Svea118 |
Product final demo (Mandatory) |
Teaching assistants |
Friday 8/3 |
15:15-17:00 |
Alfa, Safa building |
Q&A and exam preparation |
D. Durisic |
Course literature
Mandatory:
- Course book: Agile! The Good, the Hype and the Ugly, Bertrand Meyer, 2014
- Both hard copy and electronic versions available at the library (e.g., Chalmers Library).
- Lectures material (e.g., slides & video links)
- Mandatory papers (mentioned during the lectures and available under "Files")
- What Makes Agile Software Development Agile?
- DevOps in practice A multiple case study of five companies
- Large-scale agile transformation at Ericsson: a case study
- Benefits and Challenges of Adopting SAFe - An Empirical Survey
Optional:
- Other suggested books and papers (mentioned during the lectures)
Course design
The course is organized in 8 lectures and 2 exercises of 2x45 minutes, and a number of 4x45 minute slots for project work in teams where both supervision and assessment will be made.
In order to pass the course, we advise the students to attend lectures and actively participate in the team work on the project.
Communication:
- Student -> teacher(s)
- Contact teachers via email (see email addresses in the contact list above)
- Use your official student email
- Your full name must be in the FROM or the signature
- Tag your subject line with [EDA397] or [DIT193]
- Teacher(s) -> students
- Read Canvas announcements
- Don’t expect to be notified by email about things
If you fail the exam, you have a possibility to take re-exams. If you fail the project, there will be one chance of improvement and after that a possibility to retake the project next year.
Changes made since the last occasion
- Lectures:
- No major changes other than some updated and new slides.
- Project:
- No individual project report submission this time.
- No weekly group sprint report submission this time.
- Will have a group presentation and opposition discussion this time.
Learning objectives and syllabus
On successful completion of the course, the student will be able to:
- Knowledge and understanding
- compare agile and more traditional software development, relate lean and agile development, and contrast different agile methodologies for the development of software systems
- use the agile manifest and its accompanying principles
- discuss what is different when leading an agile compared to traditional teams
- explain how software development can be seen as people- and communication-centric
- explain how to scale agile principles and development methods for large organizations
- explain major roles in the agile development process and discuss various levels of authority of team leadership
- describe the SAFe framework
- describe an agile transformation in traditional software companies
- Skills and abilities
- organize an agile team to maximise its productivity and facilitate communication between people
- collaborate and apply agile way or working in small software development teams
- interact and show progress continuously with a customer or user
- develop programs using small and frequent iterations in a way that facilitates building in quality from the start
- use test-driven development and test automation, refactor a program and a design, and conduct incremental planning using user stories
- identify and eliminate waste (i.e. unnecessary activities) in the software development process
- design measurement system to follow continuous improvement of teams' performance
- Judgement and approach
- explain how software development can be seen as primarily people- and communication-centric
- describe why no single methodology can fit all projects or contexts
- critically assess agile development methods given a certain context and identify common misconceptions
- identify major dysfunctions of the teams and phases they go through during agile transformation
- recognize what motivates people for their best performance
Link to the syllabus on Studieportalen:
- Chalmers: Study plan
- GU: Study plan
Examination form
The course is examined by the passed or failed project (4.5 hec) done in teams and team presentations, and an individual written exam (3.0 hec) without aids graded according to the rules at GU and Chalmers, respectively. Lectures and mandatory readings are used as basis for the exam questions. Project is examined by mandatory individual and team project hand-ins and during the project work sessions.
The written exam is scheduled on March 14th (morning), Lindholmen.
A student who has failed the same examination twice has the right to request a change of examiner of the department. The request is to be in writing and submitted as soon as possible. The department is to grant such a request without undue delay.
Regardless if you are a GU- or a Chalmers student, don’t forget to sign up for the written hall examination!
This is done in Ladok and can only be done during the sign-up period. Sign-up is mandatory and if you are not registered you won’t be allowed to enter the examination hall.
GU-students, find more information here.
Chalmers-students, fins more information here.
Course reprsentatives
- Chalmers
-
Xiaoran Zhang
-
Eugene Dvoryankov
-
Stina Hansson
- GU
-
Kristoffer Gustafsson
-
Domenico Crovetto
Course summary:
Date | Details | Due |
---|---|---|