Agile delivery

Agile methods: an introduction

There are many agile methods you can use when building your service, each has its own set of tools and techniques.

This guide introduces the 3 most popular agile methods:

  • Scrum
  • Kanban
  • Lean

Scrum

Scrum is the most commonly used agile method.

It allows a highly structured model with clearly defined roles and responsibilities. This can be particularly useful for traditionally structured organisations that are moving to agile.

Learn more about the features of Scrum in the Scrum Guide, written by the developers of Scrum, Ken Schwaber and Jeff Sutherland.

Kanban

Kanban as a development method was inspired by production systems that focus on reducing waste and improving quality, like those created by Toyota.

Kanban is a way of visualising and improving your current working practices so that work flows through a system quickly.

A fast and smooth flow of work means you can:

  • deliver value quickly and predictably
  • get early feedback to find out whether your product or service is meeting user needs

Read a brief introduction to Kanban.

Lean

Lean software development, like Kanban, is adapted from lean manufacturing principles like the Toyota Production System.

The principles of Lean aim to help your team focus on:

  • reducing waste
  • delivering quickly
  • learning and improving
  • using evidence and data to make decisions

Read the following to learn more about Lean:

Working with multiple agile methods

You don’t have to work with just one method, you can choose tools and techniques from several to meet your team’s needs.

Each method has its own language for describing basic tools and techniques, the important thing is to understand:

  • why you’ve chosen a tool or technique
  • its agile objective

Find other agile methods you can use.

Deciding which methods to work with

Scrum

Scrum is a good starting point if your team is new to agile working.

Your team will generally find Scrum most useful when you’re:

  • building a new product or service
  • enhancing existing features
  • adding new features in each ‘sprint’ (a fixed period of time)

When you’re running your live service and have urgent requests you may find sprints constraining and want to move to a flow-based method like Kanban.

But you can still keep using many of the activities associated with Scrum, like daily standup meetings, retrospectives and regular reviews of progress.

Kanban

Kanban helps your team to:

  • find the bottlenecks in your processes
  • control the amount of work you’re doing
  • predict your output based on actual delivery

It’s particularly useful at times when your team needs to react quickly to changing priorities.

Lean

Lean allows your team to focus on learning as quickly as possible.

Lean’s tools and techniques are particularly useful when your team is first discovering what your users’ needs are and deciding how to address those needs.

You may also find these guides useful:

Last update:

Guidance first published