Alternatives to Scrum

alternatives to scrum

I’ve talked a lot about Scrum on this blog recently. Scrum has some strengths and some weaknesses. You need to know about those to understand it and use it properly. I think Scrum is a good tool and a great start for people new to Agile. But as a Scrum Master, you might be interested in alternatives to Scrum, especially if you feel there are some Scrum disadvantages. Scrum is by far the most popular form of Agile software development, but there are other options. In this article, I’ll run through the various alternatives to Scrum and their strengths and weaknesses.

Here’s a quick summary of the main alternatives to Scrum:

  • Extreme Programming / XP
  • Kanban
  • Crystal
  • Lean Software Development
  • DSDM
  • Feature Driven Development
  • Disciplined Agile
  • Scaled Scrum / Scaled Agile.

Some alternatives to Scrum

Extreme Programming or “XP”

Kent Beck┬ástarted Extreme Programming in the 1990s, with some help from Ron Jeffries. It’s a more “extreme” and prescriptive form of Agile than Scrum. The main difference is it dictates some specific technical practices that Scrum does not. More specifically, Pair Programming and Test Driven Development.

kent beck extreme programming alternatives to scrum

Kent Beck created Extreme Programming in the 1990s.

Pair Programming means two people programming at a time, but on one computer. They work together and discuss the code as they are writing it. The advocates of this say it is more productive, not less, because there are fewer errors and better code. Test Driven Development means you write automated tests for everything. In fact, you write tests first, before you write code. Write a (failing) test, then write code to make the test pass, then refactor the code. This pattern is known as Red, Green, Refactor.

Extreme Programming involves a few controversial changes and may not be for everyone. Many organisations do not even attempt to implement it. I haven’t much experience with it directly, but from what I have seen, Pair Programming can work well for some people and not well for others. So I think mandating it for everybody is a bad idea. Test Driven Development is a good practice, though. It will be hard and slow to implement at first, but the long-term returns on investment are great.

Scrum vs XP is an interesting debate, and you can read more about it here. Teams doing XP often end up moving to Continuous Integration (CI) and Continuous Delivery (CD) pipelines, part of the move to DevOps. (You can read about the difference between Agile and DevOps here).

Kanban

Kanban is not actually a software development methodology, but simply a way of visualising and tracking work. It is very lightweight, abstract and flexible. It is easy to implement and fits well with other frameworks and methodologies. That is why many organisations will do Kanban in addition to something like Scrum or Extreme Programming. Some people call the combination of Scrum and Kanban “Scrum-ban”.

kanban university logo scrum

Kanban University is the main training institute for Kanban

The ideas behind Kanban are very simple: start from where you are (don’t change anything just yet), and visualise the work. Put the work people are doing on some kind of visual tool and describe it in discrete units, in discrete states. A good way to do this is a Visual Management Board (VMB) with vertical “swimlanes” representing work states: Backlog, Ready for Dev, In Dev, etc. And you make sure that work that is in a “doing” state has a person assigned to it. And you make sure you clearly mark any blocked work. You can take this further by implementing WIP (Work In Progress) limits. The idea is to maximise flow and throughput, so that:

  • all work is represented on the board and is in a particular state
  • all work is assigned to one and only one person
  • as little work as possible is blocked
  • as little work as possible is in a “ready for” state
  • there are roughly even numbers of work in each column.

If you want to read more about Kanban, here is a good book about it: Kanban in Action. Or David Anderson’s classic, Kanban: Successful Evolutionary Change for your Technology Business. I also wrote about Scrum vs Kanban here.

Crystal

alistair cockburn crystal development scrum

Alistair Cockburn created the Crystal Develompent framework

This is one of the lesser known alternatives to scrum. Crystal was designed by Alastair Cockburn, one of the original signatories on the Agile manifesto. It promotes some familiar Agile principles from other agile methodologies, such as short communication loops, co-located cross-functional agile teams, and short iterations.

Crystal methodologies are pretty flexible and actually comes in different variations (Crystal Clear, Crystal Orange, etc.), depending on the constraints of the work. The ideas here are pretty sound but Crystal didn’t really take off, I’m not sure why.

Lean Software Development

Tom and Mary Poppendieck took many of the ideas from the Japanese systems of Lean Manufacturing and the Toyota Production System and applied them to software. Lean Software Development has the following principles:

  • Eliminate Waste
  • Amplify Learning
  • Decide as Late as Possible
  • Deliver as Fast as Possible
  • Empower the Team
  • Build Integrity In
  • See the Whole.
lean software development alternatives to scrum

Lean Software Development is a classic book by the Poppendiecks

While some Lean ideas are more suited to repetitive industrial work (as opposed to iterative creative work), this is a good system. Unlike Scrum it has no specific roles or rituals, so you can tailor those as you see fit. Like the Kanban framework, you can use many of the ideas here are in conjunction with a formal system like Scrum or XP. Rather than as a stand-alone system.

If you want to know more, check out the articles I wrote on the difference between Lean and Agile, or the Lean wisdom at the heart of Agile. Also, much like Kanban, you don’t really have to choose Scrum vs Lean. There are some good ideas in Lean Thinking that you can apply in a Scrum context.

DSDM

DSDM stands for Dynamic Systems Development Method. It is actually quite an old framework, created all the way back in 1994, a year before when the original Scrum paper was delivered at the OOPSLA conference. It came out of the short-lived Rapid Application Development (RAD) movement.

DSDM is kind of a “hybrid” framework. Unlike Scrum, it assumes you are doing some kind of a project, with a roughly defined scope, a clear beginning and end. So it is an attempt at formally defining “agile project management”. It tries to shoe-horn some agile ideas and principles into this pretty Waterfall structure, to some success. But with some issues.

The DSDM principles are:

  1. Focus on the business need
  2. Deliver on time
  3. Collaborate
  4. Never compromise quality
  5. Build incrementally from firm foundations
  6. Develop iteratively
  7. Communicate continuously and clearly
  8. Demonstrate control

A big difference between DSDM and Scrum is that there is no Product Owner role in DSDM. Teams have an “embedded business representative”. Who sounds a lot like a Product Owner but isn’t because they don’t own the backlog.

DSDM rebranded as the Agile Business Consortium a few years ago.

I would recommend DSDM for organizations who are still stuck in Waterfall land and don’t want any major changes. They are still working in project instead of product constructs and scope is controlled by stakeholders, not by people in the delivery teams.

I wrote more about DSDM versus Scrum here if you want to read more.

FDD

FDD stands for Feature Driven Development. It was another early framework, and never really took off. There is not a lot of material around it now, and I don’t think many people are using it.

It tries to define a big backlog of all the features needed first, and then do lots of modelling and analysis on them before development happens, in iterations.

So like DSDM, it’s kind of a hybrid model. I don’t have any real experience of this framework. It doesn’t sound great to me to be honest. But if you try it and it works for you, that’s great. Let me know about it! I’m quite curious to be honest.

I wrote about Feature Driven Development vs Scrum here.

DA

DA stands for Disciplined Agile. It is another “hybrid” waterfall / agile framework. It has been around for a while and was started by some of the people who escaped the collapse of the Rational Unified Process (RUP) framework in the 90s.

project management institute scrum alternative

Disicplined Agile is owned by the Project Management Institute

A few years ago it was basically bought and completely rebranded by the PMI (Project Management Institute). They wanted a system that was more like alternatives to agile, more project management friendly, and they could put up as a poster child for their hybrid Agile-PMP certification. So you won’t find much Disciplined Agile material on the internet. Except for a bunch of stuff on the PMI website.

Nexus

nexus scrum scaled alternative

Nexus is a scaled alternative to Scrum

Some teams wanting to use Scrum in a larger or more complex context could look at Nexus. It is a lightweight scaling framework based on Scrum. And it is created and controlled by the Scrum.org group itself, which helps.

Nexus has struggled to gain traction against other systems like Scaled Agile Framework (SAFe) and Large Scale Scrum (LESS). So the jury is still out on whether it is an effective framework.

Scaled scrum

Many large organisation struggle to implement Scrum because they might have hundreds or even thousands of people working on software. And Scrum is ideally for one team of about seven people. I talked about this when I wrote about the problems with Scrum. So there are some “scaled scrum” systems, that tell you how to use Scrum / Agile in a large organisation. They might tell you to do quarterly planning / PI planning, do a Scrum of Scrums, etc.

So these aren’t really alternatives to scrum, more like extensions or modifications. The main ones are SAFe (Scaled Agile Framework, by author Dean Leffingwell), LeSS (Large Scale Scrum, an older system from 2005), DAD (Disciplined Agile Delivery, with more of a focus on DevOps), and a newer entrant X-SCALE.

History will show us how these systems will fare. So far, SAFe is probably the most popular, but it certainly has its critics. I believe that XSCALE and Large Scale Scrum are the superior choices and that SAFe is a significant move away from agility for many organisations.

Frequently Asked Questions

What is an alternative to Scrum in agile?

There are many alternatives to Scrum in agile. As described above, they include Extreme Programming, Kanban, Crystal, DSDM and Disciplined Agile. Larger organizations often use some type of Scaled Agile.

What is better than Scrum?

It’s hard to say what is objectively “better” or “worse” than Scrum. Or any other framework. The key point is to use a framework that suits your context. If you are working in an unstable environment with a lot of unplanned work, Kanban might be better than Scrum.

What is similar to Scrum?

Scaled Frameworks such as Scaled Agile Framework, Large Scale Scrum or Scrum @ Scale are based on or build upon Scrum.

Why don’t people like Scrum?

Scrum is not suited to all contexts. It can also be done badly. A lot of people use anti-patterns and Scrum “bad smells”. And end up with some sort of horrible “cargo cult agile”. That is not necessarily Scrum’s fault. A lot of organizations aren’t ready for the changes that Scrum requires.

On the Scrum vs Kanban topic, this video might give you some interesting ideas on whether to change.

Leave a Comment:

4 comments
Add Your Reply