Scrum? Agile?
Consultant
www.crisp.se

Climate guy

KTH, Sep 2018

Henrik Kniberg
henrik.kniberg@crisp.se@HenrikKniberg

Dad

Organizational coach& Change Instigator
AuthorScrum

Agile

Lean

User stories

Continuous
Integration

KanbanSprintVelocity

TDD
Pairprogramming

XPDaily standup
Henrik Kniberg

Retrospective

A history of failure

Henrik Kniberg

01:39

Big Projects usually fail. Regardless of process.
< $1 million> $1 million

Source: Chaos Manifesto 2013

“half of all large IT projects (>$15 million) massively blow their budgets. On average, large
IT projects run 45 percent over budget, while delivering 56 percent less value than
predicted. Software projects run the highest risk of cost and schedule overruns”
http://www.mckinsey.com/business-functions/business-technology/our-insights/delivering-large-scale-it-projects-on-time-on-budget-and-on-value

Henrik Kniberg

We tend to build the wrong thing
Features and functions used in a typical system
Always
7% Often

Sometimes
16%

Com

45%

plexi
ty

13%

NeverCost

Half of thestuff we build
is never used!

Rarely19%# of features

Sources:Standish group study reported at XP2002 by Jim Johnson, Chairman

Henrik Kniberg

The right-hand graph is courtesy of Mary Poppendieck

How successful products
are developed

Henrik Kniberg

01:39

PixarHenrik Kniberg

Example: Pixar

Early on, all of our movies suck.

That's a blunt assessment, I know, but I choose thatphrasing because saying it in a softer way fails to convey
how bad the ﬁrst versions really are.

Our job is to make them go from
Suck to Not-Suck.

Henrik Kniberg

Ed Catmull
President of Pixar & Disney Animation Studios

Henrik Kniberg

In the early stage of making a movie, we draw
storyboards (a comic-book version of the story) and thenedit them together with dialogue and temporary music.

The first versions are very rough, but they give a senseof what the problems are, which in the beginning of all
productions are many.

We then iterate, and each version
typically gets better and better.

Henrik Kniberg

Henrik Kniberg≈250 people involved
4 years to first public
releaseShut down after 2
years of operation

Henrik Kniberg

LegoUniverseLego Universe Spider Cave

Brian Tyler

Henrik Kniberg

Built by 1-2 people6 days to first public release> 100 releases within first year
$80 million revenue withinfirst 15 months
Sold to MS for $2.5 Billion!

Henrik Kniberg

Super Beautiful!
Kinda fun.
Low revenue.

4 years of development – 1000 man years!

Dead!
2 years later...
LegoUniverse

Beautiful enough.
SUPER fun!
LOTS of revenue!
Ugly, kinda fun.

Few days ofdevelopment

Henrik Kniberg

100s of releases....

Fame & Glory &Riches & Happy players!

Henrik Kniberg

Predictive vs Adaptive
processes

Henrik Kniberg

01:39

Predictive process = cannon ballAssumptions:• The customers knows what they need
• The teams know how to deliver it• Few things change along the way

Henrik Kniberg

Adaptive process = homing missile

Assumptions:• The customer discovers what they need
• The teams discover how to deliver it• Many things change along the way

Henrik Kniberg

Unclear/unstable

What todeliver

Clear & stable

Most projects arehere!

ComplexCo
mpSimplel icatedClear & stable
Henrik Kniberg

How todeliver it

Unclear/unstable

Once upon a time
15 years ago...

Henrik Kniberg

01:39

www.agilemanifesto.org
We are uncovering better ways of developing
software by doing it and helping others do it.
Through this work we have come to value:

Individuals and interactions over processes and tools
Working software
solutions over comprehensive documentation
Customer collaboration over contract negotiation
Responding to change
feedback over following a plan
That is, while there is value in the items on
the right, we value the items on the left more.
Henrik Kniberg

Principles behind the Agile Manifesto••••••Our highest priority is to satisfy the customer
through early and continuous delivery of valuablesoftware.
Welcome changing requirements, even late indevelopment. Agile processes harness change forthe customer's competitive advantage.
Deliver working software frequently, from acouple of weeks to a couple of months, with apreference to the shorter timescale.
Business people and developers must work
together daily throughout the project.
Build projects around motivated individuals. Givethem the environment and support they need, andtrust them to get the job done.
The most efficient and effective method ofconveying information to and within adevelopment team is face-to-face conversation.

Henrik Kniberg••••••Working software is the primary measure ofprogress.
Agile processes promote sustainabledevelopment. The sponsors, developers, andusers should be able to maintain a constantpace indefinitely.
Continuous attention to technical excellence
and good design enhances agility.
Simplicity--the art of maximizing the amount ofwork not done--is essential.
The best architectures, requirements, anddesigns emerge from self-organizing teams.
At regular intervals, the team reflects on how
to become more effective, then tunes andadjusts its behavior accordingly.

Agile ”umbrella” –a family of iterative, incremental methods

Scrum

XPKanbanHenrik Kniberg

DSDM

FDD
CrystalSlicing the elephantHenrik Kniberg

01:39

Not like this....

12

34

Like this!

1Henrik Kniberg

23

4

5

Slice the elephant!

RegionÖstergötland,Uppsala, etc

1.0
Crime types(weapon,drunk driving,shoplifting, etc)

1.1

1.3

1.4

1.2
1.5

Integrations

Henrik Kniberg

Optimize for flow,
not resource utilization

Henrik Kniberg

01:39

OM
ED

Needed: 5 volunteers

100% resource utilization = 0% flow
High resource utilization

Henrik KnibergFast flow

Optimize for value,
not effort

Henrik Kniberg

01:39

Focus on Valuenot Effort or Output

Effort (hours spent)

Output (items delivered)

Value

Henrik Kniberg

What you measure is what you get
Focusing on

EffortFocusing on

OutputHours

Time reports

Resource utilization

Backlog Developing

Released!

Focusing on

Value & Learning
Henrik Kniberg

$?

$$$

Stable, cross-functional
teams

Henrik Kniberg

01:39

Case study: Game development company
Design-ready games

Game backlog

1581m

Conceptpres.

4h6m

Actual work: 3 months
Time to market: 25 months

Resourceplanning1d1w

Graphics
designSound
design1m3w

Production-ready games

12Dev

6m

6m

3m
(1m+2m)Integr. &deploy

3wBeforeDesign-ready games

Game backlog

15

81m

Concept
pres.

4h6m

Resourceplanning

1d1w

Graphics
designSound
design

1m3w

Actual work: 3 months

12
Dev

6m

Cross-functional game teams

Game team(graphics, sound, dev,test, deploy, etc)

Time to market: 3-4 months

7 timesfaster!

Bettergames!

6m

3m(1m+2m)Time to market: 25 months

After

Production-ready games

Morefun!

Integr. &deploy

3wAgile team =stable, small, cross-functional, self-organizing, co-locatedHenrik Kniberg

Todo

Henrik Kniberg

DoingDoneScrum = the most popularagile framework

Henrik Kniberg

01:39

Split your organization

Scrum in a nutshell
Split your product

Order the backlog

Large group spending a long time building a huge thing
Small team spending a little time building a small thing... but integrating regularly to see the whole
Optimize process$$$

Split time
April

January$Notchecked out
checked out

SPRINT GOAL: Bet a-ready release!

Done! :o)DepositWritefailing
test

Burndown

2dDAO

Codepcleanu

1dGUI
spec
2dMigrat ion
t ool

Tapestry
spike

1dImpl.
migration
8d

Backoffice
LoginIntegr.
withJBoss
2dImplGUI

Backoffice
User adminGUI
design(CSS)
1dHenrik Kniberg

Write
failing
test
2d

Clarifyrequirements
2d

Integrtest
2d 0.5dDBdesign2d
1d

Write
failing
2d test3d
1d

2d

Unplanned it ems

Next

1dWritefailing
test
3d

Fix memo
ry
leak
Write
(JIR
2d A 125)
failing
test

Sales support
3dWritewhitepaper
4dImplGUI

6dit hdra
Wt estwrfPW
itehdraw

Leadership

Henrik Kniberg

01:39

Not too hard

Henrik Kniberg

A bit trickier

Henrik Kniberg

Hard!

Henrik Kniberg

How do we avoid THIS?

Henrik Kniberg

Common reaction

Someone needs totake charge!

Henrik Kniberg

Alignment & Autonomy

Alignment
Do whatI say!

Henrik Kniberg

Falsedichot
omyAutonomy

DowhateverAlignment enables Autonomy
We need tocross the riverHigh
Alignment

Build abridge!

Authoritative
organization
Conformist
cultureMicromanaging
organization

Low
Alignment

Henrik Kniberg

Indifferent
cultureLow Autonomy

Aligned Autonomy!

We need tocross the river

Figure out how!

Innovativeorganization
Collaborative
cultureEntrepreneurialorganization
Chaoticculture

High Autonomy

Hope someone isworking on theriver problem…

Leader’s job:
Explain what problem needs to be solved.
And Why.

Henrik Kniberg

Agile outside IT

Henrik Kniberg

01:32

JAS 39E Saab Gripen

Agile practices implemented at every level and inevery discipline: software, hardware and fuselage
design.

Pilots on the same site as
development teams.
Direct feedback provided
every sprint.

1500 people, allco-located in
Linköping, Sweden.

Sources:• http://www.stratpost.com/gripen-operational-cost-lowest-of-all-western-fighters-janes• Personal visit to SAAB Linköping
• Research paper “Owning the Sky with Agile”

Henrik Kniberg

World’s most cost-effective
military aircraft($4700 Cost per Flight Hour)

Compared to F35 joint strike fighter,
Gripen 39E has:
• 50x lower development cost!
• 10x lower unit cost!

Recruitment teamHenrik Kniberg

Recruitment teamHenrik Kniberg

67

Henrik Kniberg

The story of Robbit

Henrik Kniberg

01:32

RobitHenrik Kniberg

Henrik Kniberg

2 kids & rookies with very
little robot experience...

Henrik Kniberg... vs ten teams
ofadult geeks andprogrammers

Step 1: Set a clear goal (define “success”)

Let’s build a robotthat at least can puta fight....
No! We’re goingto WIN!

Henrik Kniberg

AgileHenrik Kniberg

Step 2: Build a Minimum Viable Robot(Earliest Testable Robot)

Henrik Kniberg

Aim for the clouds,
but deliver and test in small steps

Can stayin the ring

Henrik Kniberg

Can findopponent

Step 3: Build an opponent to practice against

Henrik Kniberg

Field test, Field test, Field test
Can win matchagainst a static
opponent
Can budge
opponent
Can get toopponent

Can stayin the ring

Henrik Kniberg

Can findopponentAim for the clouds,
but deliver and test in small steps

Can win matchagainst a static
opponent

Can budge
opponent
Can get to
opponent

Can stayin the ring

Henrik Kniberg

Can findopponent

Lifter? Or no lifter?

Hypothesis:- Mechanical Lifter can help us win
Experiment:- Build a simple lifter and try
Learning:- Works as designed...
- But too weak to lift opponent- ... so it doesn’t help us win!
Options:- Keep it cuz it’s cool (who needs to win anyway)- Improve it- Remove it, try a different approach
Henrik Kniberg

Simpler was better

Henrik Kniberg

Field testing =Success by
100 failures

Henrik Kniberg

Henrik Kniberg

Henrik Kniberg

Henrik Kniberg

Henrik Kniberg

How could they win?
Building skill? No.
Programming skills? No.
Luck? Partly, but not entirely.

1) Clear goal
2) Low self-confidence3) Emergent design4) LOTS of field testing!
Henrik Kniberg

Henrik Kniberg

The biggest problem in theworld

Henrik Kniberg

01:39

The Biggest Problem In The World!

Henrik Kniberg

Radical innovation needed

Carbon capture & storage

Energy production & storage

Transportation

Henrik Kniberg

AgricultureWrapup

Henrik Kniberg

01:39

15,000 person-years of experience

Communication
User involvement
Small steps
Henrik Kniberg

Don’t go overboard with Agile!
No planRough, adaptiveplan

No architecture

Rough, adaptivearchitecture

Bad AgileHenrik Kniberg

Good Agile

Big up frontplan

Big up front
architecture

Many traditional projects

Find (or create) agile companies!
How to recognize real agility:••••Work in small, cross-functional, self-organizing teams
Release often & get real user feedback
Focus on Value rather than Output/Cost
Experiment a lot with product & process
Beware empty buzzwords
We doScrum!
We areAgile!

Henrik Kniberg