42
AN INTRODUCTION TO KANBAN Nov 2014 Chandler Chen Agile Coach Beijing Operations Center

An Introduction to Kanban

Embed Size (px)

DESCRIPTION

An instrocudction to kaban

Citation preview

Page 1: An Introduction to Kanban

AN INTRODUCTION TO KANBANNov 2014

Chandler ChenAgile Coach

Beijing Operations Center

Page 2: An Introduction to Kanban

TABLE OF CONTENTS

• Experience Sharing1. Challenges

2. Kanban usage

3. What’s different?

• FAQ– Kanban – the word

– Kanban & BAU

– Kanban & Tools

– Kanban & Waterfall

– Kanban & Scrum

2

Page 3: An Introduction to Kanban

TYPICAL CASE 1

A long prioritizing list DEV TEAM 1BA TEAMPDM TEAM QA TEAM Production TEAM

Plan 1 Plan 4Plan 2 Plan 3 Plan 5 Plan 6

DEV TEAM 2

To do Item1

To do Item2

To do Item3

.

.

.

.

.

.

To do Item2

To do Item4

To do Item6

.

.

To do Item1

To do Item5

To do Item3

To do Item27

.

.

.

To do Item83

.

.

To do Item6

To do Item3

To do Item18

To do Item45

.

.

To do Item21

.

.

To do Item1

To do Item7

.

.

.

.

.

.

.

.

.

To do Item6

To do Item2

To do Item27

.

.

.

.

Non-synchronized priorities & plans between teams

Sorry, I’m currently busy on finishing spec for Item10. Please wait.

We got question on Item3 details. Could you help us?

When can we finish the work on Item3??

Item1

Item2

Item3

Item 4

Item5

Item6

Item7

Item8

Page 4: An Introduction to Kanban

TYPICAL CASE 2

DEV TEAM 1BA TEAMPDM TEAM QA TEAM Production TEAM

Plan 1 Plan 4Plan 2 Plan 3 Plan 5 Plan 6

DEV TEAM 2

To do Item99

To do Item1

To do Item2

.

.

.

.

.

.

To do Item1

To do Item5

To do Item3

To do Item27

.

.

.

.

.

To do Item6

To do Item3

To do Item18

To do Item45.

.

.

To do Item1

To do Item7

.

.

.

.

.

.

.

.

.

Please help develop Item99 by this week due to business urgency

Sorry, we currently busy with Item6, Item3,Item21…. And we have an agreed plan for this month. Please meet all teams, and go through change control process.

Oh, I’m afraid I have to wait 2 months as last time.

A long prioritizing list

To do Item2

To do Item4

To do Item6

.

.

Non-synchronized priorities & plans between teams

Item1

Item2

Item3

Item 4

Item5

Item6

Item7

Item8

To do Item6

To do Item2

To do Item27

.

.

.

.Sorry, we currently busy with Item4, Item2,Item9…. And we have an agreed plan for this month. Please meet all teams, and go through change control process.

Page 5: An Introduction to Kanban

TYPICAL CASE 3

DEV TEAM 1BA TEAMPDM TEAM QA TEAM Production TEAM

Plan 1 Plan 4Plan 2 Plan 3 Plan 5 Plan 6

DEV TEAM 2

To do Item1

To do Item2

To do Item3

.

.

.

.

.

.

To do Item2

To do Item4

To do Item6

.

.

To do Item1

To do Item5

To do Item3

To do Item27

To do Item33

To do Item45

.

.

To do Item83

.

.

To do Item1

To do Item7

To do Item6

To do Item2

To do Item27

.

.

.

.

I think Dev can finish the things within 8 days. I can give them 2 more DEs to do now…..

Oh, don’t put too much work on us, there is already a long list from different sources.

A long prioritizing list

Non-synchronized priorities & plans between teams

Item1

Item2

Item3

Item 4

Item5

Item6

Item7

Item8

To do Item6

To do Item3

To do Item18

To do Item45.

.

.

Page 6: An Introduction to Kanban

EXPECTATION FROM DIFFERENT VIEWS

• Working team– The simple questions are:

• “what should I focus on by now?”• “what should I do after I finish the work in hand?”

• Customer– “When can I get what I need?”

– “Can I get the staff earlier”?

• Management– “How many deliverables per year/month?”

– “Can we deliver most important things in first place?”

6

Page 7: An Introduction to Kanban

WHAT’S KANBAN

E.g., Lead Time

Page 8: An Introduction to Kanban

WHAT’S KANBAN

Kanban is a lean / agile system

that can be used to enhance any software development lifecycle including Scrum, XP, Waterfall, PSP/TSP and other methods.

• Kanban promotes the lean concept of flow ==>

to continuously and predictably deliver value.

• The work and the workflow is made visible ==>

to make activities and issues obvious.

• Kanban limits work in progress (WIP) ==>

to promote quality, focus and finishing.

Page 9: An Introduction to Kanban

A KANBAN DAY

Page 10: An Introduction to Kanban

A KANBAN DAY

Page 11: An Introduction to Kanban

A KANBAN DAY

Page 12: An Introduction to Kanban

A KANBAN DAY

Page 13: An Introduction to Kanban

A KANBAN DAY

13

Page 14: An Introduction to Kanban

A KANBAN DAY

14

Page 15: An Introduction to Kanban

A KANBAN DAY

15

Break boundaries between teams

Page 16: An Introduction to Kanban

A KANBAN DAY

16

Page 17: An Introduction to Kanban

A KANBAN DAY

17

Page 18: An Introduction to Kanban

Case 1: News BAU

• Delivery is increased 91%

• Cycle time / project is shorten from about 45 to 31 days

18

Page 19: An Introduction to Kanban

Case 2: News Team (cont.)• Tip:

– Change behavior and habit step by stepExamples:• Use Jira Planning board (a priorities list) with PM for similar user

experience as before (like excel) • Update status in Jira and provide link to stakeholders to involve them

in• “Push” information from Jira by adding stakeholders as “Watchers”,

rather than teach them the skill to “Watch” issues at beginning– Also consider customize notification scheme, add “Watcher” to email

group, etc

19

Page 20: An Introduction to Kanban

• Original delivery cycle is one month Dev + one month QA, i.e., about 60 Days.

• After Kanban implementation:

• Further focus on engineering practices, e.g., effective branching

Case 2: Media Team

Time Period Delivery # Avg Cycle Time7/26 - 9/22 12 25.4 Days9/23 - 11/3 11 34.6 Days

20

Page 21: An Introduction to Kanban

Case 2: Media Team (cont.)

21

Page 22: An Introduction to Kanban

Case 2: Media Team (cont.)• Benefits

– Shorter cycle time

– Less pressure BUT more busy team (within working hour)

– Higher tolerance to the communication/collaboration between product and dev team (or made it easier)

– Visible

• Difficulties – Requires much more QA env (hardware/maintain effort)

– Much more complex code/release management

– Even more overhead on code mgmt/context switching while waiting time (in mid stage) gets long. (priority reason)

Action on tools and automation

22

Page 23: An Introduction to Kanban

Case 2: Media Team (cont.)• Planning (Estimation? Commitment? Assignment?)

– Estimate continually

– No commitment to individual item most of time

– Assignment more dynamic (good or not)

• Tracking (Who? When? How?)

– PM/Feature lead

– Daily meeting / casual communication

– Daily email between CN/US

– Jira

• Technical actions after Kanban was adopted

– Build more QA env

– Tool for code management

– Tool for build/deployment

– Automation testing

– Modularization

23

Page 24: An Introduction to Kanban

Case 3: DE work in ADD team (trial)

• Current task board shows lot of items wait for UAT by now

• The Cumulate Flow Diagram shows it’s not single case

• UAT activity seems abnormal– Resource?

– Priority?

24

Page 25: An Introduction to Kanban

CASE 4: C&E Team

25

Page 26: An Introduction to Kanban

“PULL” ?

Lower Priority

Higher Priority

• Pull from customer- Priority

• Pull from downstream- WIP

Page 27: An Introduction to Kanban

DIFFERENCE

• Excel, SharePoint, Feature Plan, etc

• Kanban

27

All items

Status as a field

Priority as a field

Good for PM view

Ongoing work

Visualize work flow

Visualize Priority

Good for Team view

# DE Description DE Status DE Priority Ranking DERelationship

OwnerNew Entry

DEDef: PRS

EDDel: CD

EDDel: UAT

EDDel: PT

SD Go Live1 VNIBOR USD (U1) (Release

Mechanism) [ENH]14) Deployment - Go Live 2) AUTO (11) NR 17423 Lee Sar Lim 11 Jan 11 4 Feb 11 4 Mar 11 7 Mar 11

2 VNIBOR USD (U1) [AR] 14) Deployment - Go Live 2) AUTO (11) NR 16333 Lee Sar Lim 3 Sep 10 13 Sep 10 4 Feb 11 4 Mar 11 7 Mar 11

3 VNIBOR USD Fix (U1) (Fixing Methodology) [ENH]

14) Deployment - Go Live 2) AUTO (11) NR 16780 Lee Sar Lim 26 Oct 10 13 Sep 10 4 Feb 11 4 Mar 11 7 Mar 11

4 OVS Fix [NB] 13) Deployment - Pilot 1) NF (11) 1 9964 Graham MacGregor

17 Sep 08 27 Aug 10 17 Sep 10 19 Nov 10 22 Nov 10 6 Jun 11

5 EONIA [WG] 13) Deployment - Pilot 2) AUTO (11) 4 14277 Grit Haentsch 26 Jan 10 15 Oct 10 18 Oct 10 6 Jun 11

6 BBA GBP REPO [Add panel bank - Citibank]

12) Delivery - Standby 3) Imprmt/D1 (11) NR 17738 Thomson McWill iams

2 Feb 11 4 Apr 11

7 BBA GBP REPO [Add panel bank - Royal Bank of Canada]

12) Delivery - Standby 3) Imprmt/D1 (11) NR 17739 Thomson McWill iams

2 Feb 11 4 Apr 11

Page 28: An Introduction to Kanban

BEHAVIOUR CHANGES CHANGES Traditional method Kanban method

PLAN Plan for periodical schedule (yearly, monthly, etc)

Focus on current high priorities

Plan on details of each Item (date, assignment, effort, etc)

Only for really urgent things;Forecast target date base on empirical data.

A lot of schedule changes No waste for the changes of not started work

TRACKING Tracking by separate Project Managers

Self-manage for normal case

PM track TL or Individuals for detailed progress

Real-time Status is Visible on board

EXECUTION Multi-task due to dependencies Control Work In Process

28

• Still too complex? So forget them at beginning • Just VISUALIZE how we are working is already a good start!

Page 29: An Introduction to Kanban

Improve Transparency on:

1. End to End view

2. Work Status & Process Constraint

3. Historical Trend

Still provide forecast on:

4. Target of yearly/monthly Delivery number

5. Forecasted delivery date base on empirical data

FROM STAKEHOLDER VIEW

Page 30: An Introduction to Kanban

IT’S BEGINING, NOT END

• Improve Transparency firstly

• Emerge the obstacles which block quick delivery– Integration ?

– Test ?• Especially regression test -> automation, risk based

– Deployment ?

30

Page 31: An Introduction to Kanban

SUCCESS & FAILURE• Success

– 4 teams continue on Kanban after trial

– Measure: shortened delivery cycle; no obvious change on quality by now

• Failure– 1 team stop Kanban usage temporarily, as Product Managers

feel inconvenient. Product Managers need work with several Dev teams, only one team change the working method will make them work on different backlog.

– Next step:• Start from Dev internally, influence related stakeholders with real

case• Higher level management direction for wider scope may help, but not

waiting for that

31

Page 32: An Introduction to Kanban

32

FAQ

Kanban – the word

Kanban & BAU

Kanban & Tools

Kanban & Waterfall

Kanban & Continuous Delivery

Page 33: An Introduction to Kanban

“KANBAN” – WHAT’S THE WORD MEAN?

What we often see with the context

• Lean manufacturing – “Visual Card”

• Lean software development – “Visual Board”

• Anyway, the key is “Visual”

and same concept of WIP, JIT, PULL

33

Page 34: An Introduction to Kanban

KANBAN ONLY FOR BAU?

• Kanban is NOT only applicable for BAU

• Within our context, it satisfy the management needs for BAU mostly

• Other examples:– Scrum-ban

– Support Kanban

34

Page 35: An Introduction to Kanban

KANBAN & CONTINUOUS DELIVERY?

• Same Business Target– Shorten deliver cycle time

– With confidence of quality

• Kanban remove the management barrier, need continuous focus to deal with technical obstacles – good reference in Continuous Delivery practices.

35

Page 36: An Introduction to Kanban

“PULL” OR “PUSH”?• Look at the whole system

– New work is pulled into the system when there is capacity to handle it

– A pull system cannot be overloaded, capacity is determined by the number of signal cards

• Look at each team– PUSH: each team produce as much as possible, no matter if

downstream can handle

– PULL: each team STOP produce if downstream cannot handle. Instead, they need to help; or at least, remove waste from producing too many un-completed pieces

• Go or No Go decided from customer view

KANBAN – Successful Evolutionary Change for Your Technology Business David J. Anderson

36

Page 37: An Introduction to Kanban

HOW WIP HELPS?

• WIP – Work In Process

• Limit WIP is a powerful tool to– Reduce waste of partially done items

– Reduce multi-tasking and keep focus

– Enforce “Pull” system

• Sadly, we didn’t apply it very well. Looking for experience here.

37

Page 38: An Introduction to Kanban

KANBAN LOOKS LIKE WATERFALL?

• The Kanban “columns” look like Waterfall “phases”

• But the basic difference is – Waterfall move staffs together by phase

– Kanban encourage to complete work items one by one to deliver business value quickly

38

Page 39: An Introduction to Kanban

WHAT TOOL IS GOOD FOR KANBAN?• White board is enough for local team, while e-system is useful

for 1. multi-site or cross team cooperation

2. transparency for management & stakeholders

3. collecting historical data

• Ideally, same tool serves from end to end Experience: difficult to get end to end Kanban in large org

- When the process is very complicated- E.g., Multi to Multi interfaces

- When improve process from bottom up

Workaround:• Delivery team (most resources) work on Kanban Board.

Focus & Collaborate on active ongoing items.• Product Owner may work on a full list, prioritize and pass only highest

priorities to each delivery team’s Kanban Board. • Linkage is helpful

39

Page 40: An Introduction to Kanban

OUR THOUGHTS OF AGILE OVERVIEW (BY NOW)

40

Scrum (new Prod) / Kanban (BAU)

Disciplined Development

• Iterative Development• Test Automation• Continuous Integration

Goes Smoothly

• Early Integrate in a larger scale

• Test Driven Development

Challengeable

• Dependencies caused by architecture & org structures

Hard to Change

Scrum Team Tech O

ps

Scru

m o

f Scru

m

Scrum Team

Scrum Team

Page 42: An Introduction to Kanban

THANKS !

42