Comparing Agile and Waterfall
Choosing between Agile and Waterfall depends on your project's requirements, and how flexible you need to be.
Agile projects are often open to change and take an iterative approach to product development. Waterfall takes a more straightforward and sequential approach.
Their processes and structures are different, but they’re both valid approaches to project management.
Agile
Agile is an iterative and incremental approach.
If you’re working in Agile, you:
- focus on user needs
- divide the project into small, manageable units called sprints (or iterations), typically lasting between 2 and 4 weeks
- have the flexibility to make changes even late in the development process
- collaborate with stakeholders and cross-functional teams
- test and gather feedback throughout the project
Agile teams are often self-organising. Agile is popular because it:
- is flexible
- provides a good structure for ongoing projects
- allows processes to be continuously improved
- allows co-located, multi-functional teams to work in a collaborative way
- gives an early return on investment by regular delivery
Agile is a method on how to approach a project. The method is supported by frameworks for how to do the work. The two most common frameworks are Scrum and Kanban.
You can read more about Agile techniques at: Agile tools and techniques - Service Manual - GOV.UK (www.gov.uk)
Waterfall
Waterfall is a linear and sequential approach.
In Waterfall, you’ll work through different project phases. You must complete each phase before you begin the next one. There is limited opportunity to make changes once a phase is finished.
Different approaches might use different terms for the phases, but they will follow a similar sequence:
- Concept - where you develop an initial idea, including writing a business case
- Definition - where you create detailed plans and requirements
- Deployment - where you implement the plans and use testing to make sure everything works
- Transition - where you handover to the sponsor and wider users and formally close the project
Waterfall is seen as a much more traditional approach to project management. You should choose it when:
- there are defined requirements
- you're in a stable environment
- the team is spread out across the organisation
- skills, costs or resources are limited
Main differences between Agile and Waterfall
With Waterfall methods the process is sequential. It’s only at the final stage that you get feedback and find out if it works for your users. You only have one chance to get each part of the project right, because you generally do not return to earlier stages (unless you really need to).
Agile takes a different approach where you do everything at the same time. You start small in the discovery and alpha phases. You research, prototype, gather data, test and learn about your users’ needs before you start building the real service in the beta phase. You only go live when you have enough feedback and data to show your service works for your users and meets their needs. You continuously learn and improve to build a service that meets user needs.
Agile | Waterfall |
---|---|
Cyclical phases | Linear phases |
Continuous delivery | Delivery at the end of the project |
Responsive to change | Upfront planning |
Consistent review | Difficult to assess performance |
Which approach to use
The approach you choose depends on the kind of problem you are trying to solve.
Try an Agile approach if:
- you expect that the project’s needs and requirements might change
- there's a need for multiple deliverables over an extended period of time
- you need to prove that you meet the 'Iterate and improve frequently' section of the Digital Scotland Service Standard
Try a Waterfall approach if:
- you already know deadlines and resource constraints
- skills, costs and resources are limited
- you don’t need to work as closely with stakeholders
The Scottish Government’s Programme and Project Management Centre of Expertise (PPM-CoE) doesn’t recommend one approach over the other. Often, a hybrid approach (using a mixture of the two) will suit many projects.
There is a problem
Thanks for your feedback