The course syllabus contains changes
See changesCourse syllabus adopted 2022-02-01 by Head of Programme (or corresponding).
Overview
- Swedish nameAgile development processes
- CodeEDA397
- Credits7.5 Credits
- OwnerMPSOF
- Education cycleSecond-cycle
- Main field of studyComputer Science and Engineering, Industrial Engineering and Management, Software Engineering
- DepartmentCOMPUTER SCIENCE AND ENGINEERING
- GradingTH - Pass with distinction (5), Pass with credit (4), Pass (3), Fail
Course round 1
- Teaching language English
- Application code 24116
- Maximum participants65 (at least 10% of the seats are reserved for exchange students)
- Block schedule
- Open for exchange studentsYes
Credit distribution
Module | Sp1 | Sp2 | Sp3 | Sp4 | Summer | Not Sp | Examination dates |
---|---|---|---|---|---|---|---|
0107 Project 4.5 c Grading: UG | 4.5 c | ||||||
0207 Examination 3 c Grading: TH | 3 c |
|
In programmes
- MPIDE - INTERACTION DESIGN AND TECHNOLOGIES, MSC PROGR, Year 1 (elective)
- MPIDE - INTERACTION DESIGN AND TECHNOLOGIES, MSC PROGR, Year 2 (elective)
- MPSOF - SOFTWARE ENGINEERING AND TECHNOLOGY, MSC PROGR, Year 1 (compulsory elective)
Examiner
- Jennifer Horkoff
- Associate Professor, Interaction Design and Software Engineering, Computer Science and Engineering
Eligibility
General entry requirements for Master's level (second cycle)Applicants enrolled in a programme at Chalmers where the course is included in the study programme are exempted from fulfilling the requirements above.
Specific entry requirements
English 6 (or by other approved means with the equivalent proficiency level)Applicants enrolled in a programme at Chalmers where the course is included in the study programme are exempted from fulfilling the requirements above.
Course specific prerequisites
To be eligible for this course the student should have
- a bachelor degree in Software Engineering, Computer Science, Information Technology, Information Systems or equivalent.
- a completed course in programming (e.g., TDA548 Introductory software development, DAT043/DAT050 Object-oriented Programming, TDA452 Functional Programming or equivalent);
- a completed project course (or bachelor thesis) in applied software development computer science or software engineering (e.g., TDA367 Object-oriented programming project or DAT256 Software Engineering Project).
Aim
Modern software development in industry has adopted agile principles and methods, in order to e.g. increase customer focus, increase speed of development and releases, and embrace changes. This course aims to learn about software design and development using these approaches and principles, in both theory and practice.Learning outcomes (after completion of the course the student should 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
Content
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
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
Organisation
The course consists of lectures, and a project part where software is developed using agile approaches.Literature
See separate literature list.Examination including compulsory elements
The grading scale comprises: U, 3, 4, and 5. The grading scale of the project (4,5hp) comprises: U and G. The grading scale of the written hall examination (3hp) comprises: U, 3, 4, and 5.A passing grade for the entire course requires at least a passing grade for all sub-courses. To get a higher grade than Pass, a higher grade in the written hall examination is required.
The course examiner may assess individual students in other ways than what is stated above if there are special reasons for doing so, for example if a student has a decision from Chalmers on educational support due to disability.
The course syllabus contains changes
- Changes to course rounds:
- 2023-10-05: Examinator Examinator changed from Lucas Gren (lucasg) to Jennifer Horkoff (jenho) by Viceprefekt
[Course round 1]
- 2023-10-05: Examinator Examinator changed from Lucas Gren (lucasg) to Jennifer Horkoff (jenho) by Viceprefekt