Scrum with Kanban - schd.ws

2 downloads 182 Views 17MB Size Report
Sprint Planning, Daily Scrum. Sprint Review, Sprint ... IN SPRINT. SCRUM SPRINT: DAY 1. ITEM SEARCH .... 2. 4. DOING. DE
Scrum with Kanban

@jonathansen

Scrum with Kanban

Jonathan  Hansen   Thumbtack  Technology   NYC  Lean  Coffee

@jonathansen

Where’s the conflict? SCRUM RULES •  3  Roles  

! !

Product  Owner,  Team  Member   Scrum  Master  

!

•  4  MeeEngs   Sprint  Planning,  Daily  Scrum   Sprint  Review,  Sprint  RetrospecEve  

!

•  3  ArEfacts   Product  Backlog,  Sprint  Backlog   Increment  

! !

@jonathansen

Where’s the conflict? SCRUM RULES •  3  Roles  

KANBAN METHOD

! !

Product  Owner,  Team  Member   Scrum  Master  

!

•  4  MeeEngs   Sprint  Planning,  Daily  Scrum   Sprint  Review,  Sprint  RetrospecEve  

!

•  3  ArEfacts   Product  Backlog,  Sprint  Backlog   Increment  

! !

@jonathansen

! ! •  Visualize  your  work   ! •  Limit  your  Work  in  Progress   •  Manage  Flow   •  Make  Policies  Explicit   •  Implement  Feedback  Loops   •  Improve  CollaboraEvely,  
 Evolve  Experimentally

There is no conflict SCRUM RULES •  3  Roles  

KANBAN METHOD

!

!

!

Product  Owner,  Team  Member   Scrum  Master  

!

•  4  MeeEngs   Sprint  Planning,  Daily  Scrum   Sprint  Review,  Sprint  RetrospecEve  

!

•  3  ArEfacts   Product  Backlog,  Sprint  Backlog   Increment  

! !

@jonathansen

! •  Visualize  your  work  

&

! •  Limit  your  Work  in  Progress   •  Manage  Flow   •  Make  Policies  Explicit   •  Implement  Feedback  Loops   •  Improve  CollaboraEvely,  
 Evolve  Experimentally

Scrum with Kanban

IN  SPRINT      |      OUT  OF  SPRINT     BEYOND  SCRUM

@jonathansen

Scrum with Kanban IN  SPRINT

@jonathansen

Scrum with Kanban IN  SPRINT

FINISH  FEATURES            |          FIX  BUGS  FASTER

@jonathansen

Scrum with Kanban IN  SPRINT

FINISH  FEATURES            |          FIX  BUGS  FASTER Scenario:  Adding  Features   Item  Search  +  Item  Detail  +  User  Edit  

@jonathansen

Scrum with Kanban 178 hours of work

IN  SPRINT

Scenario:  Adding  Features   Item  Search  +  Item  Detail  +  User  Edit  

@jonathansen

Scrum with Kanban 178 hours of work

IN  SPRINT Burndown  Rate  (sprint  without  kanban)

200" 150" 100" 50" 0"

SUCCESSFUL  SPRINT?

@jonathansen

Scrum with Kanban without KANBAN

IN  SPRINT

SCRUM  SPRINT:  DAY  1 SPRINT BACKLOG IS2!

ITEM SEARCH

IS3!

IS4!

ID2!

ITEM DETAIL

ID4!

ISQA!Blk!

ID1!

ID5! IDQA Blk! !

ID3! UE2!

USER EDIT

IS1!

UE1! UE4!

UE3!

Blk! UE5! UEQA !

@jonathansen

DOING

DONE

Scrum with Kanban without KANBAN

IN  SPRINT

SCRUM  SPRINT:  DAY  5 DOING

SPRINT BACKLOG

DONE

IS1!

ITEM SEARCH

Blk!

ISQA!

IS3!

ID2!

ITEM DETAIL

ID1!

ID3! Blk!

IDQA!

USER EDIT

ID5!

ID4!

UE5!

UE4! Blk!

UEQA!

@jonathansen

IS2!

IS4!

UE3!

UE1! UE2!

Scrum with Kanban without KANBAN

IN  SPRINT

SCRUM  SPRINT:  DAY  10 DOING

SPRINT BACKLOG

ITEM SEARCH

ISB5!

ISB4!

DONE

ISQA!

IS1!

ISB1!

IS2!

ISB2!

ITEM DETAIL

IDB3! IDB4!

USER EDIT

IDB1!

UEB4!

@jonathansen

UEB5!

UEB3!

ID2!

ID4!

IDB2!

UEQA!

UEB2!

IS4!

IS3!

ID1!

IDQA!

UE2!

ID3!

ID5! UE4!

UE1!

ISB3!

UE3!

UE5!

Scrum with Kanban without KANBAN

IN  SPRINT

Т Е Н

Burndown  Rate  (sprint  without  kanban)

200" 150" 100" 50" 0"

SUCCESSFUL  SPRINT?

@jonathansen

Scrum with Kanban IN  SPRINT

91%  DONE  =       100%  USELESS @jonathansen

Scrum with Kanban IN  SPRINT

3  STATUSES

@jonathansen

{

1. Not  Started   2. In  Progress   3. Done

Scrum with Kanban without KANBAN

IN  SPRINT

HIGH  TASK  WIP  =  SLOW  TASKS 35" 30" 25" 20"

Todo"

15"

Doing"

10"

Done"

5" 0" Day"1" Day"2" Day"3" Day"4" Day"5" Day"6" Day"7" Day"8" Day"9" Day"10"

@jonathansen

Scrum with Kanban without KANBAN

IN  SPRINT

HIGH  TASK  WIP  =  SLOW  TASKS 35" 30" 25" 20"

Todo"

15"

Doing"

10" 5"

AVG  LEAD       3.7  DAYS

AVG  WIP     7.5  ITEMS

0" Day"1" Day"2" Day"3" Day"4" Day"5" Day"6" Day"7" Day"8" Day"9" Day"10"

@jonathansen

Done"

Scrum with Kanban IN  SPRINT

LITTLE’S  LAW Lead  Time

=

3.7 =

@jonathansen

WIP Throughput

7.5 2

Scrum with Kanban without KANBAN

HIGH  FEATURE  WIP  =   IDLE  QA  +  MORE  BUGS

IN  SPRINT

35" 30" 25" 20"

Todo"

15"

Doing"

10"

Done"

5" 0" Day"1" Day"2" Day"3" Day"4" Day"5" Day"6" Day"7" Day"8" Day"9" Day"10"

@jonathansen

Scrum with Kanban without KANBAN

HIGH  FEATURE  WIP  =   IDLE  QA  +  MORE  BUGS

IN  SPRINT

35" 30" 25" 20"

Todo"

15"

Doing"

10" 5"

NO  FEATURES     TESTABLE  FOR    7  DAYS

0" Day"1" Day"2" Day"3" Day"4" Day"5" Day"6" Day"7" Day"8" Day"9" Day"10"

@jonathansen

Done"

Scrum with Kanban without KANBAN

HIGH  FEATURE  WIP  =   IDLE  QA  +  MORE  BUGS

IN  SPRINT

35" 30"

SCOPE  CREEP   FROM       17  TO  31  TASKS

25" 20"

Doing"

15" 10" 5"

Todo"

NO  FEATURES     TESTABLE  FOR    7  DAYS

0" Day"1" Day"2" Day"3" Day"4" Day"5" Day"6" Day"7" Day"8" Day"9" Day"10"

@jonathansen

Done"

Scrum with Kanban IN  SPRINT

SPRINT  QUALITY  &  PREDICTABILITY with KANBAN

@jonathansen

1. Map  Value  Stream   2. Limit  Task  WIP   3. Limit  Feature  WIP

Scrum with Kanban with KANBAN

IN  SPRINT

DAY  1 SPRINT BACKLOG

FEATURES

2

TASKS

4

Item Search!

Item Detail!

User Edit! IS1! IS4!

ID2! ID3!

UE2! UE4! UE3! UE5

!

@jonathansen

DOING DEVELOPMENT

QA

DONE

Scrum with Kanban with KANBAN

IN  SPRINT

DAY  5 SPRINT BACKLOG

FEATURES

2

DOING DEVELOPMENT

Item Detail!

DONE

QA

Item Search!

User Edit! ID4!

TASKS

4

ID3!

ISB3!

UE2! UE4!UE1 ! UE3! UE5

ISB4!

!

@jonathansen

ISB1! ISB2!

IS1! IS3! IS2! IS4!

Scrum with Kanban with KANBAN

IN  SPRINT

DAY  10 SPRINT BACKLOG

FEATURES

2

DOING DEVELOPMENT

DONE

QA

Item Search!

User Edit! ISB1! ISB2!

TASKS

4

@jonathansen

Item Detail!

IS1! IS3! IS2! IS4!

IDB1!

ID1! ID4! IDB2! ID3!

UEB2! UEB4!UEB1!

UE1! UE4! UE2! UE5! UE3! UEB3!

Scrum with Kanban IN  SPRINT

LOW  TASK  WIP  =  FAST  TASKS Scrum  Alone

Scrum  +  Kanban

35"

35"

30"

30"

25"

25"

20"

20" AVG  WIP     7.5  ITEMS

15" 10" 5"

AVG  LEAD       3.7  DAYS

0"

15" 10" 5" 0"

@jonathansen

AVG  WIP     1.4  ITEMS

AVG  LEAD       0.5  DAYS

Scrum with Kanban IN  SPRINT

LOW  FEATURE  WIP  =  FAST  /BETTER  QA Scrum  Alone

Scrum  +  Kanban

35"

35" ! !

30" 25"

17  TO  31     TASKS

20" 15" 10"

30" 25" 20" 15"

!

NO  QA  7  DAYS

10"

5"

5"

0"

0"

@jonathansen

AVG  WIP     1.4  ITEMS

AVG  LEAD       0.5  DAYS

Scrum with Kanban IN  SPRINT

LOW  FEATURE  WIP  =  FAST  /BETTER  QA Scrum  Alone

Scrum  +  Kanban

35"

35" ! !

30" 25"

17  TO  31     TASKS

20" 15" 10"

30" ! !

25"

14  TO  24     TASKS

20" 15"

!

NO  QA  7  DAYS

10"

5"

5"

0"

0"

@jonathansen

QA  IN   4  DAYS

Scrum with Kanban IN  SPRINT

COMPARING  BURNDOWNS Scrum"Alone" 200" 150" 100" 50" 0"

@jonathansen

Scrum"with"Kanban"

Scrum with Kanban IN  SPRINT

SPRINT  QUALITY  &  PREDICTABILITY with KANBAN

@jonathansen

1. Map  Value  Stream   2. Limit  Task  WIP   3. Limit  Feature  WIP

Scrum with Kanban

IN  SPRINT      |      OUT  OF  SPRINT     BEYOND  SCRUM

@jonathansen

Scrum with Kanban OUT  OF  A  SPRINT

@jonathansen

Scrum with Kanban OUT  OF  A  SPRINT

SOME  EPICS  ARE  UNBREAKABLE

@jonathansen

Scrum with Kanban OUT  OF  A  SPRINT

SOME  EPICS  ARE  UNBREAKABLE

@jonathansen

Scrum with Kanban OUT  OF  A  SPRINT

EPICS:  UNSPLITTABLE  FEATURES BACKLOG

NEXT UP

DEVELOPMENT ONGOING

DONE

3

TESTING ONGOING

2

READY FOR DEMO

DONE

nt

L!

2

ri not  sp G!

F!

B!

A!

H! K!

M! 10

sprint E!

C! D!

@jonathansen

J!

I! E!

DONE

Scrum with Kanban

IN  SPRINT      |      OUT  OF  SPRINT     BEYOND  SCRUM

@jonathansen

Scrum with Kanban BEYOND  SCRUM

@jonathansen

Scrum with Kanban BEYOND  SCRUM

“In  Scrum,  you  should  inspect  and  adapt  on  everything...     except  Scrum.”   -­‐  David  J  Bland

h"ps://twi"er.com/davidjbland/status/430769613903654912  

@jonathansen

Scrum with Kanban BEYOND  SCRUM

ESTIMATION  WASTE          |          THE  TIME  BOX

@jonathansen

Scrum with Kanban BEYOND  SCRUM

STORY  POINT  ACCURACY 2,Point""

3,Point"

120" 100" 80" 60" 40" 20" 0" 1"

2"

3"

@jonathansen

4"

5"

6"

7"

8"

9"

10"

Scrum with Kanban BEYOND  SCRUM

HISTORICAL  LEAD  TIMES 40" 35" 30" 25" 20" 15" 10" 5" 0" 6)May"

11)May" 16)May" 21)May" 26)May" 31)May"

@jonathansen

5)Jun"

10)Jun"

15)Jun"

Scrum with Kanban BEYOND  SCRUM

HISTORICAL  LEAD  TIMES 40" upper limit: 29.88 35" 30" 25" 20" mean: 5.94 15" 10" 5" 0" 6)May" 11)May" 16)May" 21)May" 26)May" 31)May" 5)Jun"

@jonathansen

10)Jun"

15)Jun"

Scrum with Kanban BEYOND  SCRUM

HISTORICAL  LEAD  TIMES:  HISTOGRAM  VIEW 14" 12" 10" 8" 6" 4" 2" 0" "20"

Scrum with Kanban BEYOND  SCRUM

HISTORICAL  LEAD  TIMES:  CATEGORIZE  &  CALCULATE network(

UI(

6"

5"

5"

4"

4"

3"

3"

2"

2" 1"

1"

0"

0" "6"

Scrum with Kanban BEYOND  SCRUM

FEATURE  ESTIMATION  ALTERNATIVE with KANBAN

@jonathansen

1. 2. 3. 4.

Study  historical  data   Categorize  cards   Calculate  ranges   Shape  sprint

Scrum with Kanban BEYOND  SCRUM

ESTIMATION  WASTE          |          THE  TIME  BOX

@jonathansen

Scrum with Kanban BEYOND  SCRUM

KANBAN  IN  A  SCRUM ANALYSIS ONGOING

DONE

SPRINT BACKLOG

DEVELOPMENT ONGOING

@jonathansen

DONE

3

TESTING ONGOING

DONE

2

READY TO DEMO

DONE

Scrum with Kanban BEYOND  SCRUM

KANBAN  IN  A  SCRUM ANALYSIS ONGOING

DONE

SPRINT BACKLOG

DEVELOPMENT ONGOING

DONE

3

TESTING ONGOING

DONE

2

READY TO DEMO

Avg  cycle:  3  days

Avg  Lead:  32  days

@jonathansen

DONE

Scrum with Kanban BEYOND  SCRUM

KANBAN  IN  A  SCRUM ANALYSIS ONGOING

DONE

SPRINT BACKLOG

DEVELOPMENT ONGOING

@jonathansen

DONE

3

TESTING ONGOING

DONE

2

READY TO DEMO

DONE

Scrum with Kanban BEYOND  SCRUM

KANBAN  IN  A  SCRUM:  ROLLING  PRIORITIES ANALYSIS ONGOING

DONE

SPRINT BACKLOG

DEVELOPMENT ONGOING

@jonathansen

DONE

3

TESTING ONGOING

DONE

2

READY TO DEMO

DONE

Scrum with Kanban BEYOND  SCRUM

KANBAN  IN  A  SCRUM:  ROLLING  PRIORITIES ANALYSIS ONGOING

DONE

10

PRIORITIES

DEVELOPMENT ONGOING

@jonathansen

DONE

3

TESTING ONGOING

DONE

2

READY TO DEMO

DONE

Scrum with Kanban BEYOND  SCRUM

KANBAN  IN  A  SCRUM:  ROLLING  PRIORITIES ANALYSIS ONGOING

DONE

10

PRIORITIES

DEVELOPMENT ONGOING

DONE

3

TESTING ONGOING

DONE

2

READY TO DEMO

Avg  cycle:  3  days

Avg  Lead:  32  days

@jonathansen

DONE

Scrum with Kanban BEYOND  SCRUM

KANBAN  IN  A  SCRUM:  ROLLING  PRIORITIES ANALYSIS ONGOING

DONE

10

PRIORITIES

DEVELOPMENT ONGOING

DONE

3

TESTING ONGOING

DONE

2

READY TO DEMO

Avg  cycle:  3  days

14 Avg  Lead:  32  days

@jonathansen

DONE

Scrum with Kanban BEYOND  SCRUM

KANBAN  IN  A  SCRUM:  DEPLOY  WHEN  READY ANALYSIS ONGOING

DONE

10

PRIORITIES

DEVELOPMENT ONGOING

@jonathansen

DONE

3

TESTING ONGOING

DONE

2

READY TO DEMO

DONE

Scrum with Kanban BEYOND  SCRUM

KANBAN  IN  A  SCRUM:  DEPLOY  WHEN  READY ANALYSIS ONGOING

DONE

10

PRIORITIES

DEVELOPMENT ONGOING

@jonathansen

DONE

3

TESTING ONGOING

DONE

2

2

DEPLOY

DONE

Scrum with Kanban BEYOND  SCRUM

KANBAN  IN  A  SCRUM:  DEPLOY  WHEN  READY ANALYSIS ONGOING

DONE

10

PRIORITIES

DEVELOPMENT ONGOING

DONE

3

TESTING ONGOING

DONE

2

2

DEPLOY

Avg  cycle:  3  days

Avg  Lead:  14  days

@jonathansen

DONE

Scrum with Kanban BEYOND  SCRUM

KANBAN  IN  A  SCRUM:  DEPLOY  WHEN  READY ANALYSIS ONGOING

DONE

10

PRIORITIES

DEVELOPMENT ONGOING

DONE

3

TESTING ONGOING

DONE

2

2

DEPLOY

Avg  cycle:  3  days

7 Avg  Lead:  32  days

@jonathansen

DONE

Scrum with Kanban BEYOND  SCRUM

GOAL-­‐CENTRIC  PROCESS !

with KANBAN

@jonathansen

1. Team  Goals   2. Customer  Goals  

Scrum with Kanban BEYOND  SCRUM

@jonathansen

Scrum with Kanban

BEYOND  SCRUM                                                                                                                    OUT  OF  SPRINTS                

@jonathansen

Scrum with Kanban BEYOND  SCRUM                              OUT  OF  SPRINTS                                                IN  SPRINTS

@jonathansen

Scrum with Kanban

IMPROVE  SPRINTS  |  MANAGE  EPICS     ALIGN  WITH  CUSTOMER

@jonathansen

Scrum with Kanban

@jonathansen