8/8/2019 Explaining CFD
1/37
Yuval YeretAgile Coach @ Agilesparks
[email protected]: 054-4802458
mailto:[email protected]:[email protected]8/8/2019 Explaining CFD
2/37
Brief IntroAgileSparks is an elite team focused entirely on helping
companies improve their product developmentoperations, by leveraging Lean/Agile/Scrum thinking
and techniques.
Yuval Yeret Lean/Agile Consultant/Coach, comingfrom R&D leadership background, specializing in
scaling agile through Lean.Find more about me athttp://www.linkedin.com/in/yuvalyeret, my googleprofile
http://www.linkedin.com/in/yuvalyerethttp://www.google.com/profiles/112519125474153692546http://www.google.com/profiles/112519125474153692546http://www.google.com/profiles/112519125474153692546http://www.google.com/profiles/112519125474153692546http://www.google.com/profiles/112519125474153692546http://www.google.com/profiles/112519125474153692546http://www.linkedin.com/in/yuvalyeret8/8/2019 Explaining CFD
3/37
Lets start with a classic
burndown/burnup chart
0
20
40
60
80
100
120
1 2 3 4 5 6 7 8 9 10
Time
Burndown / Burnup
DONE (BURNUP)
ACTUAL REMAINING EFFORT
PLANNED REMAINING EFFORT
Whats wrong here?
Working software only towards
the end of the iteration/projectSo?
Risk of missing the iterationWork is not spread evenly,
bottlenecks
We call it Scrumfall
8/8/2019 Explaining CFD
4/37
8/8/2019 Explaining CFD
5/37
Keys to steady burnup Effectively sized and testable stories
Allow finishing work end to end quickly
Focus on few stories at a time, rather than work on toomuch at once
8/8/2019 Explaining CFD
6/37
How to make this happen? Get the Product Owner to provide INVEST stories
Provide more visibility to WHERE work is before its
DONE Manage the work in progress to drive focus
8/8/2019 Explaining CFD
7/37
How do we Visualize the work
status in more depth?
0
20
40
60
80
100
120
1 2 3 4 5 6 7 8 9 10
TODO
WORK IN PROGRESS
DONE (BURNUP)
Wow!Whats that?
This is called Cumulative Flow
Diagrams
Introduced by Lean ThoughtLeaders Don Reinertsen and
David Anderson
The idea is to visualize wherethe features/stories are in the
workflow across time
8/8/2019 Explaining CFD
8/37
How do we Visualize the work
status in more depth?
0
20
40
60
80
100
120
1 2 3 4 5 6 7 8 9 10
TODO
WORK IN PROGRESS
DONE (BURNUP)
8/8/2019 Explaining CFD
9/37
TO DO IN PROGRESS DONE
Elad
In
bar
Elad
Mush
on
Mushon
In
bar
Inbar
Mushon
Elad
8/8/2019 Explaining CFD
10/37
TO DO IN PROGRESS DONE
1 8 1
8/8/2019 Explaining CFD
11/37
TO DO IN PROGRESS DONE
1 8 1
8/8/2019 Explaining CFD
12/37
TODO
IN PROGRESS DONE
1 8 1
8/8/2019 Explaining CFD
13/37
8/8/2019 Explaining CFD
14/37
8/8/2019 Explaining CFD
15/37
So a cumulative flow is built of snapshots of
the board summary per day
0
20
40
60
80
100
120
1 2 3 4 5 6 7 8 9 10
TODO
WORK IN PROGRESS
DONE (BURNUP)
8/8/2019 Explaining CFD
16/37
And provides a LOT of data
0
20
40
60
80
100
120
1 2 3 4 5 6 7 8 9 10
TODO
WORK IN PROGRESS
DONE (BURNUP)WI
P
Mean Cycle Time
8/8/2019 Explaining CFD
17/37
Now, how can we get more details? Lets dive into the workflow
8/8/2019 Explaining CFD
18/37
0
20
40
60
80
100
120
1 2 3 4 5 6 7 8 9 10
TODO
CODING
TESTING
DONE (BURNUP)
Wide means lots of WIP
Means problems finishingwork
ORNext stage cannot deal
with work now
8/8/2019 Explaining CFD
19/37
http://agileanalysis.blogspot.com/2008/12/finger-charts.html
http://agileanalysis.blogspot.com/2008/12/finger-charts.htmlhttp://agileanalysis.blogspot.com/2008/12/finger-charts.htmlhttp://agileanalysis.blogspot.com/2008/12/finger-charts.htmlhttp://agileanalysis.blogspot.com/2008/12/finger-charts.htmlhttp://agileanalysis.blogspot.com/2008/12/finger-charts.htmlhttp://agileanalysis.blogspot.com/2008/12/finger-charts.htmlhttp://agileanalysis.blogspot.com/2008/12/finger-charts.htmlhttp://agileanalysis.blogspot.com/2008/12/finger-charts.html8/8/2019 Explaining CFD
20/37
This is better!
0
20
40
60
80
100
120
1 2 3 4 5 6 7 8 9 10
TODO
CODING
TESTING
DONE (BURNUP)
8/8/2019 Explaining CFD
21/37
What is this?
0
20
40
60
80
100
120
1 2 3 4 5 6 7 8 9 10
TODO
CODING
TESTING
DONE (BURNUP)
8/8/2019 Explaining CFD
22/37
So what do we need for a CFD? Have a defined workflow, even a simple one (TODO,
IN PROGRESS, DONE)
Track state of Features/Stories/Requirements ,including historical data
Cumulative Flow can be easily generated based on this
Can be improved to be based on Size of items e.g.
Story/Feature Points. When using this, can mix different entities on same CFD
With # of items, items need to be of same kind (e.g.stories/epics but not a mix)
8/8/2019 Explaining CFD
23/37
Why use CFD? One visibility report provides insight to Burnup, Cycle
Time, WIP, Bottlenecks
Drives Continuous Improvement, great companion todiscussions about limiting/managing work in progress(WIP).
Can be applied for
Scrum Teams End to end product development project/group
Any kind of team chewing customer-valued work items
8/8/2019 Explaining CFD
24/37
The visibility partner of Kanban Replaces Burnup/Burndown for Kanban
teams/groups.
8/8/2019 Explaining CFD
25/37
Lets revisit KanbanLand Henrik Kniberg came up with One day in Kanban
Land a comic explaining the key Kanban concepts.
Lets try to see how a Cumulative Flow Diagram looksfor each of the hours in Kanban Land
Comic courtesy and copyright Henrik Kniberg, CrispSE
http://blog.crisp.se/henrikkniberg/2009/06/26/1246053060000.htmlhttp://blog.crisp.se/henrikkniberg/2009/06/26/1246053060000.htmlhttp://blog.crisp.se/henrikkniberg/2009/06/26/1246053060000.htmlhttp://blog.crisp.se/henrikkniberg/2009/06/26/1246053060000.htmlhttp://blog.crisp.se/henrikkniberg/2009/06/26/1246053060000.htmlhttp://blog.crisp.se/henrikkniberg/2009/06/26/1246053060000.htmlhttp://blog.crisp.se/henrikkniberg/2009/06/26/1246053060000.html8/8/2019 Explaining CFD
26/37
0
2
4
6
8
10
12
14
16
18
20
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
Backlog
Selected
Develop Ongoing
Develop Done
Deploy
Live
26
8/8/2019 Explaining CFD
27/37
0
2
4
6
8
10
12
14
16
18
20
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
Backlog
Selected
Develop Ongoing
Develop Done
Deploy
Live
27
8/8/2019 Explaining CFD
28/37
0
2
4
6
8
10
12
14
16
18
20
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
Backlog
Selected
Develop Ongoing
Develop Done
Deploy
Live
28
8/8/2019 Explaining CFD
29/37
0
2
4
6
8
10
12
14
16
18
20
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
Backlog
Selected
Develop Ongoing
Develop Done
Deploy
Live
29
8/8/2019 Explaining CFD
30/37
0
2
4
6
8
10
12
14
16
18
20
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
Backlog
Selected
Develop Ongoing
Develop Done
Deploy
Live
30
8/8/2019 Explaining CFD
31/37
0
2
4
6
8
10
12
14
16
18
20
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
Backlog
Selected
Develop Ongoing
Develop Done
Deploy
Live
31
8/8/2019 Explaining CFD
32/37
0
2
4
6
8
10
12
14
16
18
20
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
Backlog
Selected
Develop Ongoing
Develop Done
Deploy
Live
32
8/8/2019 Explaining CFD
33/37
0
2
4
6
8
10
12
14
16
18
20
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
Backlog
Selected
Develop Ongoing
Develop Done
Deploy
Live
33
8/8/2019 Explaining CFD
34/37
0
2
4
6
8
10
12
14
16
18
20
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
Backlog
Selected
Develop Ongoing
Develop Done
Deploy
Live
34
8/8/2019 Explaining CFD
35/37
0
2
4
6
8
10
12
14
16
18
20
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
Backlog
Selected
Develop Ongoing
Develop Done
Deploy
Live
35
8/8/2019 Explaining CFD
36/37
0
2
4
6
8
10
12
14
16
18
20
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
Backlog
Selected
Develop Ongoing
Develop Done
Deploy
Live
36
8/8/2019 Explaining CFD
37/37
0
2
4
6
8
10
12
14
16
18
20
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
Backlog
Selected
Develop Ongoing
Develop Done
Deploy
Live