Agile Software Engineering module (DI32001)
Develop your skills in agile software development by working in teams with real clients. You'll apply agile methods, address professional and ethical responsibilities, and build software to industry
Agile Software Engineering focuses on the practical application of agile methods in a realistic team environment. You'll compare agile approaches with traditional software development methodologies and develop a critical understanding of when and why agile methods are used in industry.
A central part of the module is team project work with external clients. You'll work through two agile sprints, gathering requirements, planning, developing, and delivering software. Engaging with real clients means you'll apply professional conduct, ethical judgment, and communication skills throughout.
Lectures and practical sessions cover requirements gathering, agile practices, software quality standards, and professional issues in computing. You'll also explore recent developments in tools and techniques for agile development. A class test assesses your theoretical knowledge of the module content.
What you will learn
In this module, you will:
- understand agile methods in software engineering and contrast them with traditional development approaches
- apply agile practices to plan and execute a user-centred software project with real clients
- work professionally and ethically in an agile team environment
- engage with legal, ethical, and professional responsibilities in software engineering
- critically appraise recent developments in tools and techniques for agile development
By the end of this module, you will be able to:
- demonstrate detailed and critical knowledge of current agile software engineering approaches
- apply agile methods to develop and deliver a user-centred software system
- demonstrate ethical and professional behaviour when working in agile teams
- make informed judgments on complex ethical and professional issues in software engineering
- critically evaluate recent developments in agile tools and techniques
Assignments / assessment
- Coursework: Agile Sprint 1 (40%)
- Coursework: Agile Sprint 2 (40%)
- Class Test (20%)
This module does not have a final exam.
Teaching methods / timetable
- Lectures covering agile methods, software quality standards, and professional issues in computing
- Practical sessions for software development, critique, and team project work
- Support from academic staff and undergraduate tutors during practical sessions