Skip to navigation | Skip to main content | Skip to footer

This is an archived syllabus from 2019-2020

COMP62521 Agile and Test-Driven Development syllabus 2019-2020

COMP62521 Agile and Test-Driven Development

Level 6
Credits: 15
Enrolled students: 36

Course leader: Caroline Jay

Additional staff: view all staff

Additional requirements

  • Pre-requisites

    Good understanding of relevant concepts of Software Engineering

Assessment methods

  • 50% Written exam
  • 50% Coursework
Sem 1 P2 Lecture 2.19 Fri 10:00 - 13:00 -
Sem 1 P2 Lab 2.25 (A+B) Fri 14:00 - 17:00 -
Themes to which this unit belongs
  • Software Engineering 1


This course unit introduces and provides hands-on experience of agile software engineering and Test-Driven Development (TDD). The course will cover various agile methods, but practical work will focus on Scrum.

There is a strong focus on understanding the application of agile skills within an industrial setting, with guest lectures about 'real world' agile development from organisations including the BBC and ThoughtWorks.


This course unit aims to give students an introduction to the principles and practice of agile software engineering, and how to deploy these within an organisational setting. Through building a significant software system in a team, and reflecting critically on this experience, students will further their understanding of how the software engineering process used affects the development and delivery of software.


The course will cover

  • Key principles of agile software development
  • Evidence demonstrating the efficacy (or otherwise) of an agile approach
  • Test-Driven Development

Feedback methods

Coursework assignments are submitted online and students receive written feedback Blackboard in addition to extensive verbal feedback in the weekly lab sessions.

Study hours

Employability skills

  • Analytical skills
  • Group/team working
  • Project management
  • Oral communication
  • Written communication

Learning outcomes

On successful completion of this unit, a student will be able to:

The learning outcomes are as follows (assessment method in brackets):

  • Apply the ‘Scrum’ development method to a software project (coursework: team project, examination)
  • Apply the test-driven development method to a software project (coursework: team project, examination)
  • Plan a software development iteration with reference to past team performance and user requirements (coursework: team project)
  • Critically reflect on team performance and adjust the development approach accordingly (coursework: individual essay)
  • Evaluate the benefits and drawbacks of agile development practices (coursework: individual essay, examination)

Reading list

Succeeding with agile : software development using Scrum Cohn, Mike,0321660560; 9780321660565; 1282430564; 9781282430563; 6612430567; 9786612430565; 032166051X; 9780321660510Addison-Wesley©2010.
Test-driven development : by example Beck, Kent.9780321146533Addison-Wesleyc2003.
User stories applied : for agile software development Cohn, Mike, 1962-9780321205681Addison-Wesley2004.
Beginning Python : from novice to professional Hetland, Magnus Lie, author.9781484200285Apress2017

Additional notes

Course unit materials

Links to course unit teaching materials can be found on the School of Computer Science website for current students.