Add scrum review article.
This commit is contained in:
parent
dd50547005
commit
c2253f11a5
|
|
@ -0,0 +1,94 @@
|
||||||
|
---
|
||||||
|
title: "Scalable Scrum Frameworks"
|
||||||
|
author: "James Pace"
|
||||||
|
date: "2024/02/24"
|
||||||
|
---
|
||||||
|
|
||||||
|
Scrum is a popular lightweight framework that defines how a single team can
|
||||||
|
work towards a goal and is very popular in software engineering circles.
|
||||||
|
Scrum is the most prescriptive of the frameworks that claim to be
|
||||||
|
"Agile", and is probably the initial approach most teams reach to
|
||||||
|
when they are trying to be more "Agile".
|
||||||
|
If you've worked on a "Sprint" to work down tasks in a "Backlog", you've
|
||||||
|
probably been doing Scrum.
|
||||||
|
|
||||||
|
The official definition of Scrum is found in the
|
||||||
|
[Scrum Guide](https://scrumguides.org/index.html).
|
||||||
|
|
||||||
|
The big idea in Scrum is there is a single "Product Owner" who is accountable
|
||||||
|
for managing a "Product Backlog", which is a list of tasks that need to be
|
||||||
|
done for a project.
|
||||||
|
Teams work to complete those tasks by completing a "Sprint" over a fixed time
|
||||||
|
interval.
|
||||||
|
A "Sprint" involves:
|
||||||
|
|
||||||
|
1. Defining a goal for the end of the sprint.
|
||||||
|
2. Picking which tasks from the "Product Backlog" will be worked on
|
||||||
|
for the sprint.
|
||||||
|
3. Working on those tasks, and communicating daily to make sure there are
|
||||||
|
no blockers.
|
||||||
|
4. At the end of each sprint, delivering some sort of deliverable working
|
||||||
|
towards the final deliverable (called an "increment"[^increment]).
|
||||||
|
5. Doing a retrospective and adjusting the process and backlog given
|
||||||
|
any information learned since the last sprint.
|
||||||
|
|
||||||
|
The Scrum Guide largely defines how a **single** Scrum team is built and works.
|
||||||
|
There are three popular approaches to extend Scrum to work for **multiple** teams:
|
||||||
|
|
||||||
|
1. Nexus
|
||||||
|
2. LeSS
|
||||||
|
3. SaFE
|
||||||
|
|
||||||
|
## Nexus
|
||||||
|
|
||||||
|
[Nexus](https://www.scrum.org/resources/online-nexus-guide) is the most light weight
|
||||||
|
and least prescriptive of the three aforementioned options.
|
||||||
|
|
||||||
|
Nexus starts with multiple scrum teams, all working on one product, who practice Scrum as normal
|
||||||
|
working from a single backlog of tasks.
|
||||||
|
To keep the individual Scrum teams from stepping all over each other, Nexus adds a "meta" Scrum team
|
||||||
|
called the "Nexus Integration Team" that is responsible for the coordination between teams, and
|
||||||
|
for combining the output of the inner Scrum teams into a single combined output.
|
||||||
|
The integration team is made up of selected members of the inner Scrum teams.
|
||||||
|
|
||||||
|
Of the three options in this article, I would lean towards Nexus if I was running a small start up
|
||||||
|
that had just outgrown every one being in one Scrum team.
|
||||||
|
Nexus would be easiest to apply, with the least amount of extra work and management layers.
|
||||||
|
|
||||||
|
## LeSS
|
||||||
|
|
||||||
|
[LeSS](https://less.works/) (for LargE Scale Scrum) is similar to Nexus, in that if you squint, it is
|
||||||
|
basically inner Scrums wrapped by a bigger Scrum, but the bigger Scrum doesn't have its own team.
|
||||||
|
Compared to Nexus, LeSS is also a lot more prescriptive.
|
||||||
|
Where Nexus leaves a lot up to the reader to figure out, LeSS provides a lot of guidance, answering
|
||||||
|
a lot questions in their guide that Nexus leaves up to the reader.
|
||||||
|
|
||||||
|
LeSS suggests roughly the following process for a sprint:
|
||||||
|
|
||||||
|
1. Sprint Planning 1, where the product owner communicates the things that need to be done
|
||||||
|
to all of the teams, who proportion the work out amongst themselves.
|
||||||
|
2. Sprint Planning 2, where the teams work to convert what needs to be done into individual
|
||||||
|
tasks that can be worked on.
|
||||||
|
3. Teams then go off and do Scrum to work on those tasks, refining the backlog and communicating
|
||||||
|
with eachother as they go.
|
||||||
|
4. At the end of the Sprint one Sprint Review is completed with all teams, and then two Retrospectives
|
||||||
|
are completed, one for each team and one for the Scrum as a whole.
|
||||||
|
|
||||||
|
Of the three options in this article, I would lean towards LeSS if I was in a small but already established
|
||||||
|
company.
|
||||||
|
I think the extra prescriptiveness of LeSS can help pre-answer questions people will have in a company that
|
||||||
|
is big enough that the person making the decision to switch can't individually talk to everyone, but also
|
||||||
|
small enough to not have decades of internal politics to wade through.
|
||||||
|
|
||||||
|
## SAFe
|
||||||
|
|
||||||
|
[SAFe](https://scaledagile.com/) is the most prescriptive of the methods in this article,
|
||||||
|
and arguably the least agile.
|
||||||
|
SAFe has multiple complicated layers of management, but all the complicated levels
|
||||||
|
are clearly documented with their explicit roles spelled out clearly.
|
||||||
|
|
||||||
|
My impression is SAFe only really makes sense in a large organization where there already
|
||||||
|
is a multilayered management system, and that system is seen as good.
|
||||||
|
|
||||||
|
|
||||||
|
[^increment]: Think "incremental deliverable" but with less letters.
|
||||||
Loading…
Reference in New Issue