0
Kanban
For Software Development
TJ Gokcen
Chief Software Architect at codebyts

codebyts
Agenda
•
•
•
•

A Brief History
Basic Concepts and Visualization
Kanban in Action: Software Development Scenarios
Kaizen a...
codebyts

TJ Gokcen
•
•
•
•

Chief Software Architect at codebyts
Kanban, Kaizen advocate
@tjgokcen @codebyts
www.codebyts...
A Brief History – World War II

codebyts
USA - Japan.

codebyts
William Edwards Deming (1900 – 1993)

codebyts
Toyota Production System: Just-in-Time and Autonomation

codebyts
Toyota Production System using Kanban

codebyts
Eliminate Chaos by Finding Bottlenecks

codebyts
•

93% communication is non-verbal

•

Images : Simultaneously deciphered

•

Language: Linear decoding

•

Children recog...
Waste is

• anything that does not improve the quality of the
product
• does not reduce the amount of time and effort it
t...
Bugs creeping into production. Leads to low quality customer perception, the longer it takes to
attend to it, the worse.
W...
Writing more code or functionality than required.
Waste: Overproduction

codebyts
Delays in starting a project, delays in staffing, delays due to excessive requirements
documentation, reviews, approvals, ...
Take advantage of your team’s skillset.
Waste: Neglected Talent

codebyts
Task switching
Waste: Transportation

codebyts
Think of your favourite person or letters from A-J, and numbers 1-10
With the timer ready
1. Write each word on separate l...
With letters and numbers:
90
80
70

60
50
40

30
20
10

0
to 10

to 20
Linear

3rd Project - to 10

3rd Project - to 20

C...
Functions and/or methods (“dead code”) that are not being referenced or used by any other
function or method.
Waste: Inven...
Finding information. From business consultant, to sales department, to project manager or
owner.
Waste: Motion

codebyts
Manual deployment vs. continuous delivery, manual testing vs. automated testing etc.
Waste: Excessive Processing

Source: ...
Defective Production

Overproduction

Waiting

Neglected Talent

Transportation

Inventory

Motion

Excessive Processing

...
In order to be able to write down your process, you need to go to the Gemba.
Visualize: Gemba (workplace)

codebyts
Kanban Board

codebyts
Visualize: Kanban Board

codebyts
Physical Kanban Board

codebyts
Visualize: Kanban Board

codebyts
Backlog

Analyze
doing

Dev
done

doing

Test

Ready

Production

done

dfwgwrgrgwrgg

dfwgwrgrgwrgg

dfwgwrgrgwrgg

dfwgw...
Backlog

Analyze
doing

Dev
done

doing

Test

Ready

Production

done

dfwgwrgrgwrgg

dfwgwrgrgwrgg

dfwgwrgrgwrgg

dfwgw...
Backlog

Analyze (2)
doing

done

Dev (3)
doing

Test (2)

Ready

Production

done

dfwgwrgrgwrgg

dfwgwrgrgwrgg

dfwgwrgr...
Backlog

Analyze (2)
doing

done

Dev (3)
doing

Test (2)

Ready

Production

done

dfwgwrgrgwrgg

dfwgwrgrgwrgg

dfwgwrgr...
Backlog

Analyze (2)
doing

done

Dev (3)
doing

Test (2)

Ready

Production

done

dfwgwrgrgwrgg

dfwgwrgrgwrgg

dfwgwrgr...
Backlog

Analyze (2)

Dev (3)

Test (2)

dfwgwrgrgwrgg

Production

done

dfwgwrgrgwrgg

dfwgwrgrgwrgg

dfwgwrgrgwrgg

don...
Backlog

Analyze (2)
doing

dfwgwrgrgwrgg

done

Dev (3)
doing

Test (2)

Ready

Production

done

dfwgwrgrgwrgg

dfwgwrgr...
Backlog

Analyze (2)
doing

done

Dev (3)
doing

Test (2)

Ready

Production

done

dfwgwrgrgwrgg

dfwgwrgrgwrgg

dfwgwrgr...
Backlog

Analyze (2)
doing

done

Dev (3)
doing

dfwgwrgrgwrgg

dfwgwrgrgwrgg

Test (2)

Ready

Production

done

dfwgwrgr...
Backlog

Analyze (2)
doing

done

Dev (3)
doing

Test (2)

Production

done

dfwgwrgrgwrgg

dfwgwrgrgwrgg

dfwgwrgrgwrgg

...
Backlog

Analyze (2)
doing

done

Dev (3)
doing

Test (2)

Production

done

dfwgwrgrgwrgg

dfwgwrgrgwrgg

dfwgwrgrgwrgg

...
Backlog

Analyze (2)
doing

done

Dev (3)
doing

Test (2)

Production

done

dfwgwrgrgwrgg

dfwgwrgrgwrgg

dfwgwrgrgwrgg

...
Backlog

Analyze (2)
doing

done

Dev (3)
doing

Test (2)

Production

done

dfwgwrgrgwrgg

dfwgwrgrgwrgg

dfwgwrgrgwrgg

...
Backlog

Analyze (2)
doing

done

Dev (3)
doing

Test (2)

dfwgwrgrgwrgg

dfwgwrgrgwrgg

dfwgwrgrgwrgg

dfwgwrgrgwrgg

dfw...
Backlog

Analyze (2)
doing

done

Dev (3)
doing

Test (2)

Production

done

dfwgwrgrgwrgg

dfwgwrgrgwrgg

dfwgwrgrgwrgg

...
Backlog

Analyze (2)
doing

done

Dev (3)
doing

Test (2)

Production

done

dfwgwrgrgwrgg

dfwgwrgrgwrgg

dfwgwrgrgwrgg

...
Backlog

Analyze (2)
doing

done

Dev (3)
doing

Test (2)

Production

done

dfwgwrgrgwrgg

dfwgwrgrgwrgg

dfwgwrgrgwrgg

...
- 24 stories completed in 3 weeks
- 8 stories per week
- 160 stories in backlog
- 160 / 8 = 20 weeks to complete (+/-)
- 3...
TFS: 32897

18-11-2013

As a…
I want to…

A: 04-11-2013
D: 10-11-2013
Kanban In Practice: What’s In A Card?

codebyts
- Daily standups in front of Kanban Board
- Reflect every * - Kaizen
- Demonstrate every *
- Collaboration happens all the...
Kaizen

codebyts
Kaizen: Process should never be the bottleneck

codebyts
Planning

Features
doing

done

Development
doing

dfwgwrgrgwrgg

dfwgwrgrgwrgg

Legal

Marketing

Released

done

dfwgwrg...
Kaizen: Fear of Change

codebyts
Kaizen: No Suggestion Box

codebyts
20
18
16
14
12
10
18
8
6
4
2
0

0.166666667
Suggestions Per Year
US(West)

Japan

Kaizen: Employee Suggestions Per Year

c...
120

100

80

60
108
40

20

0

1
Suggestions Per 6 Years
US(West)

Japan

Kaizen: Employee Suggestions Per 6 Years (so th...
100%
90%
80%
70%
60%
50%
40%
30%
20%
10%
0%
US(West)

Japan

Accepted

Declined

Kaizen: Suggestion Acceptance Rate

codeb...
On Time Arrivals
- 7th Place in 1994
- 1st Place in 1995

Kaizen: Case Study of Improvements: Management Driven

codebyts
Kentucky, US Plant

- Bolt bin pricing
- Local store
vs.
- Toyota Purchasing

Kaizen: Case Study of Improvements: Culture
...
Quality First: Toyota’s Andon Cord

codebyts
Quality First: Toyota’s Andon Cord

codebyts
- 25,000,000 units
- 80 defective
- That is Six Sigma (6.01)

- 3,000,000 deliveries / day
- 99.9% = 2,997,000
- 3,000 peo...
Mental Block: Don’t Fix It If It Ain’t Broken

codebyts
Mental Block: No Reports Does Not Mean No Mistakes

codebyts
Humans Will Make Mistakes

© Simpsons Fox Network

codebyts
Jeff Bezos, of Amazon:

“I encourage our

employees to go down blind alleys and

experiment. If we can get processes decen...
Shared Responsibility

codebyts
Too Big Too Soon

codebyts
Policy For The Organisation: What is Our Goal For This Year?

codebyts
Kaizen: Company Genes

codebyts
Thank You

codebyts
Upcoming SlideShare
Loading in...5
×

Kanban for Software Development and Kaizen Culture

1,155

Published on

Talk #1 - Kanban for Developers

There is much hype about Kanban since it was perfected and introduced to the world by Toyota. Since then, not only manufacturers but all businesses looked into this simple but extremely powerful approach.

As software developers are yearning for better project management and visibility on all aspects of their work, Kanban naturally blipped on their radar.

In this session, we will look at the origins of Kanban, how it applies to software development along with misunderstandings and myths. We will also compare manufacturing practices with software development techniques and see how we can benefit from their experiences. During the session we will have some interactive exercises to help us better understand Kanban and becoming more efficient and productive by limiting the amount of work we do.

Talk #2 - Kaizen: Continuous Process Improvement

Enterprises can utilize Process Improvement to improve their workflow, allowing them to be more efficient, eliminate bottlenecks and problem areas, and as a result, achieve reduced costs, on-time delivery and increased profits. Currently, enterprises are facing stiffer competition to win customer acceptance through quality, and the need to develop more customer-oriented products and services faster than ever before.

Einstein said "We can't solve problems by using the same kind of thinking we used when we created them.", and that is what lies at the heart of Kaizen. Improvement comes with a different look at the problems and doing this continuously every day and everywhere. It is more of a company culture than a project.

But where do we start improving? British comic writer Douglas Adams said "See first, think later, then test. But always see first. Otherwise you will only see what you were expecting.". And that is exactly where we start. By looking deep into our workflow and process.

In this session, we will look at Kaizen philosophy, why change is important and very hard to do. we'll also analyze waste and why it is bad for our business and see how quality-first approach makes us better at what we do. I will also provide some test cases and finish off by looking into implementing a Kaizen culture at the office by involving everybody.

Published in: Business, Technology
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
1,155
On Slideshare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
49
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide

Transcript of "Kanban for Software Development and Kaizen Culture"

  1. 1. Kanban For Software Development TJ Gokcen Chief Software Architect at codebyts codebyts
  2. 2. Agenda • • • • A Brief History Basic Concepts and Visualization Kanban in Action: Software Development Scenarios Kaizen and Continuous Improvement Culture codebyts
  3. 3. codebyts TJ Gokcen • • • • Chief Software Architect at codebyts Kanban, Kaizen advocate @tjgokcen @codebyts www.codebyts.com codebyts
  4. 4. A Brief History – World War II codebyts
  5. 5. USA - Japan. codebyts
  6. 6. William Edwards Deming (1900 – 1993) codebyts
  7. 7. Toyota Production System: Just-in-Time and Autonomation codebyts
  8. 8. Toyota Production System using Kanban codebyts
  9. 9. Eliminate Chaos by Finding Bottlenecks codebyts
  10. 10. • 93% communication is non-verbal • Images : Simultaneously deciphered • Language: Linear decoding • Children recognize objects before they can speak • Visuals are processed 60,000 times faster than text © www.visual-learners.com Visualize: Why does it matter? codebyts
  11. 11. Waste is • anything that does not improve the quality of the product • does not reduce the amount of time and effort it takes to produce the product • does not provide real value to the customer See Waste, Eliminate Waste codebyts
  12. 12. Bugs creeping into production. Leads to low quality customer perception, the longer it takes to attend to it, the worse. Waste: Defective Production codebyts
  13. 13. Writing more code or functionality than required. Waste: Overproduction codebyts
  14. 14. Delays in starting a project, delays in staffing, delays due to excessive requirements documentation, reviews, approvals, testing and deployment. Waste: Waiting codebyts
  15. 15. Take advantage of your team’s skillset. Waste: Neglected Talent codebyts
  16. 16. Task switching Waste: Transportation codebyts
  17. 17. Think of your favourite person or letters from A-J, and numbers 1-10 With the timer ready 1. Write each word on separate lines. Time it. 2. Write each word letter by letter on separate lines, switching from word to word. letters and numbers would be ABCDEFGHIJ 1 2 3 4 5 6 7 8 9 10 In this case, first A, then 1, then B, then 2 and so on… Context Switching Game codebyts
  18. 18. With letters and numbers: 90 80 70 60 50 40 30 20 10 0 to 10 to 20 Linear 3rd Project - to 10 3rd Project - to 20 Context Switch Context Switching Game: Compare Your Times codebyts
  19. 19. Functions and/or methods (“dead code”) that are not being referenced or used by any other function or method. Waste: Inventory codebyts
  20. 20. Finding information. From business consultant, to sales department, to project manager or owner. Waste: Motion codebyts
  21. 21. Manual deployment vs. continuous delivery, manual testing vs. automated testing etc. Waste: Excessive Processing Source: Crisp Blog codebyts
  22. 22. Defective Production Overproduction Waiting Neglected Talent Transportation Inventory Motion Excessive Processing DOWNTIME Waste: Downtime codebyts
  23. 23. In order to be able to write down your process, you need to go to the Gemba. Visualize: Gemba (workplace) codebyts
  24. 24. Kanban Board codebyts
  25. 25. Visualize: Kanban Board codebyts
  26. 26. Physical Kanban Board codebyts
  27. 27. Visualize: Kanban Board codebyts
  28. 28. Backlog Analyze doing Dev done doing Test Ready Production done dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg Initial Stage Kanban In Practice: Perfect World codebyts
  29. 29. Backlog Analyze doing Dev done doing Test Ready Production done dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg Problem: How do we know what do to and how much to do? Kanban In Practice: Perfect World codebyts
  30. 30. Backlog Analyze (2) doing done Dev (3) doing Test (2) Ready Production done dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg Work In Progress Limits Kanban In Practice: Perfect World codebyts
  31. 31. Backlog Analyze (2) doing done Dev (3) doing Test (2) Ready Production done dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg Kanban In Practice: Perfect World codebyts
  32. 32. Backlog Analyze (2) doing done Dev (3) doing Test (2) Ready Production done dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg Workflow Kanban In Practice: Perfect World codebyts
  33. 33. Backlog Analyze (2) Dev (3) Test (2) dfwgwrgrgwrgg Production done dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg done doing dfwgwrgrgwrgg doing Ready dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg Seeing what’s about to happen, before they happen Kanban In Practice: Seeing is Believing codebyts
  34. 34. Backlog Analyze (2) doing dfwgwrgrgwrgg done Dev (3) doing Test (2) Ready Production done dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg Seeing what’s about to happen, before they happen Kanban In Practice: Seeing is Believing codebyts
  35. 35. Backlog Analyze (2) doing done Dev (3) doing Test (2) Ready Production done dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg Kanban In Practice: Seeing is Believing codebyts
  36. 36. Backlog Analyze (2) doing done Dev (3) doing dfwgwrgrgwrgg dfwgwrgrgwrgg Test (2) Ready Production done dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg Let’s see where the team’s at. Kanban In Practice: Our Team codebyts
  37. 37. Backlog Analyze (2) doing done Dev (3) doing Test (2) Production done dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg Ready dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg BUG Change Request Maint. Other Items to work on. Kanban In Practice: Bugs. Maintenance Issues. Change Requests. It’s Feature codebyts
  38. 38. Backlog Analyze (2) doing done Dev (3) doing Test (2) Production done dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg Ready dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg URGENT Things that should work but don’t. They need to be treated as “urgent”. Kanban In Practice: BUGS codebyts
  39. 39. Backlog Analyze (2) doing done Dev (3) doing Test (2) Production done dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg Ready dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg Another approach is to block the line. Kanban In Practice: BUGS codebyts
  40. 40. Backlog Analyze (2) doing done Dev (3) doing Test (2) Production done dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg Ready dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg Kanban In Practice: Diminished Workflow = Bottleneck codebyts
  41. 41. Backlog Analyze (2) doing done Dev (3) doing Test (2) dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg Production done dfwgwrgrgwrgg dfwgwrgrgwrgg Ready dfwgwrgrgwrgg dfwgwrgrgwrgg URGENT Supply > Throughput (Capacity) Kanban In Practice: Team Work codebyts
  42. 42. Backlog Analyze (2) doing done Dev (3) doing Test (2) Production done dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg Ready dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg URGENT Kanban In Practice: VIP codebyts
  43. 43. Backlog Analyze (2) doing done Dev (3) doing Test (2) Production done dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg Ready dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg Policy: Feature over Maintenance URGENT Make policies that work for your team. Make your own rules. Kanban In Practice: Policy codebyts
  44. 44. Backlog Analyze (2) doing done Dev (3) doing Test (2) Production done dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg Ready dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg Your wait time from here is 24 days URGENT Measure Every Step For Better Predictability Kanban In Practice: Disneyland Wait Times codebyts
  45. 45. - 24 stories completed in 3 weeks - 8 stories per week - 160 stories in backlog - 160 / 8 = 20 weeks to complete (+/-) - 3 weeks is 15 working days - I have 5 developers, that is 75 developer days - 75 / 24 = 3.125 avg. developer days per story - This is the load factor in XP Kanban Metrics codebyts
  46. 46. TFS: 32897 18-11-2013 As a… I want to… A: 04-11-2013 D: 10-11-2013 Kanban In Practice: What’s In A Card? codebyts
  47. 47. - Daily standups in front of Kanban Board - Reflect every * - Kaizen - Demonstrate every * - Collaboration happens all the time, otherwise line stops * Determined by the team Kanban for Software Development codebyts
  48. 48. Kaizen codebyts
  49. 49. Kaizen: Process should never be the bottleneck codebyts
  50. 50. Planning Features doing done Development doing dfwgwrgrgwrgg dfwgwrgrgwrgg Legal Marketing Released done dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg dfwgwrgrgwrgg Kaizen: Kanban Board for Upstream and Downstream – The Big Picture codebyts
  51. 51. Kaizen: Fear of Change codebyts
  52. 52. Kaizen: No Suggestion Box codebyts
  53. 53. 20 18 16 14 12 10 18 8 6 4 2 0 0.166666667 Suggestions Per Year US(West) Japan Kaizen: Employee Suggestions Per Year codebyts
  54. 54. 120 100 80 60 108 40 20 0 1 Suggestions Per 6 Years US(West) Japan Kaizen: Employee Suggestions Per 6 Years (so the West reaches 1 suggestion) codebyts
  55. 55. 100% 90% 80% 70% 60% 50% 40% 30% 20% 10% 0% US(West) Japan Accepted Declined Kaizen: Suggestion Acceptance Rate codebyts
  56. 56. On Time Arrivals - 7th Place in 1994 - 1st Place in 1995 Kaizen: Case Study of Improvements: Management Driven codebyts
  57. 57. Kentucky, US Plant - Bolt bin pricing - Local store vs. - Toyota Purchasing Kaizen: Case Study of Improvements: Culture codebyts
  58. 58. Quality First: Toyota’s Andon Cord codebyts
  59. 59. Quality First: Toyota’s Andon Cord codebyts
  60. 60. - 25,000,000 units - 80 defective - That is Six Sigma (6.01) - 3,000,000 deliveries / day - 99.9% = 2,997,000 - 3,000 people not getting their packages Mental Block: Success rate is 99.9% codebyts
  61. 61. Mental Block: Don’t Fix It If It Ain’t Broken codebyts
  62. 62. Mental Block: No Reports Does Not Mean No Mistakes codebyts
  63. 63. Humans Will Make Mistakes © Simpsons Fox Network codebyts
  64. 64. Jeff Bezos, of Amazon: “I encourage our employees to go down blind alleys and experiment. If we can get processes decentralized so that we can do a lot of experiments without it being very costly, we’ll get a lot more innovation.” Policy For Dealing With Mistakes codebyts
  65. 65. Shared Responsibility codebyts
  66. 66. Too Big Too Soon codebyts
  67. 67. Policy For The Organisation: What is Our Goal For This Year? codebyts
  68. 68. Kaizen: Company Genes codebyts
  69. 69. Thank You codebyts
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×