O slideshow foi denunciado.
Utilizamos seu perfil e dados de atividades no LinkedIn para personalizar e exibir anúncios mais relevantes. Altere suas preferências de anúncios quando desejar.

Kanban, Flow and Cadence

1.765 visualizações

Publicada em

This workshop explores three important Lean concepts - Kanban, Flow and Cadence (KFC) - which can be combined to generate a more pipeline-based approach to software development, as opposed to the more common timebox-based approaches of more traditional Agile methods. The presenters will describe their experiences implementing these ideas at Yahoo! and explain the concepts using examples, simulations and games. In addition, because this is a new and emerging way of working, there will be an opportunity for discussion between the participants about how the ideas might be applied in their own situations, in order to advance the art. - See more at: http://conferences.agilealliance.org/sessions/20082311#sthash.QqTFKRkG.dpuf

Publicada em: Tecnologia
  • Entre para ver os comentários

Kanban, Flow and Cadence

  1. 1. KFC DevelopmentKFC Development It’s Finger Lickin’ GoodIt’s Finger Lickin’ Good But It Has ConsequencesBut It Has Consequences Karl Scotland Aaron Sanders
  2. 2. KFC DevelopmentKFC Development
  3. 3. KanbanKanban Controlling the Workflow
  4. 4. DefinitionDefinition Kanban (in kanji 看板 also in katakana カ ンバン , where kan, 看 カン , means "visual," and ban, 板 バン , means "card" or "board")
  5. 5. OriginOrigin “The two pillars of the Toyota production system are just-in-time and automation with a human touch, or autonomation. The tool used to operate the system is kanban.” Taiichi Ohno, Toyota Production System (adopted 1962)
  6. 6. Toyota Production SystemToyota Production System
  7. 7. Kanban BoardKanban Board http://www.flickr.com/photos/jnywong/22 22481466/
  8. 8. Kanban PullKanban Pull … Step 1 DoneStep 2 Step n…Work Items Queue In Process Queue In Process Queue In Process
  9. 9. KanbanKanban That’s it Except for one more important element Kanban Limits ◦ Queue ◦ WIP
  10. 10. Kanban Pull – With LimitsKanban Pull – With Limits … Step 1 DoneStep 2 Step n…Work Items Queue In Process Queue In Process Queue In Process
  11. 11. Queues / BuffersQueues / Buffers Large enough to keep the team busy Small enough to avoid premature prioritisation Ideally should be FIFO
  12. 12. Work In ProgressWork In Progress Reduce multi-tasking Maximize throughput Enhances teamwork
  13. 13. MultitaskingMultitasking Reduce Multitasking ◦ 20% time lost to context switching per ‘task’ Gerald Weinberg, Quality Software Management: Systems Thinking
  14. 14. MultitaskingMultitasking Reduce Multitasking ◦ Sequential yields results sooner A AA A B BB CCC B C
  15. 15. Multitasking ExerciseMultitasking Exercise 3 Projects 1. Write the 1st 10 digits in a column 2. Write the 1st 10 letters in a column 3. Write the 1st 10 roman numerals in a column 1.Sequential (non multi-tasking) ◦ Column by column 1.Parallel (multi-tasking) ◦ Row by row
  16. 16. ThroughputThroughput Maximize Throughput Throughput Work In Progress
  17. 17. ThroughputThroughput Little’s Law for Queuing Theory Therefore, to improve cycle time 1. Reduce Number of Things in Process 2. Improve Average Completion Rate Total Cycle Time = Number of Things in Process Average Completion Rate
  18. 18. TeamworkTeamwork Enhances Teamwork ◦ Team focus on goals that add value not individual tasks Encourages Swarming
  19. 19. GuidelinesGuidelines  What are you going to work on? 1. Can you help progress an existing kanban? • Work on that. 1. Don’t have the right skills? • Find the bottleneck and work to release it. 1. Don’t have the right skills? • Pull in work from the queue. 1. Can’t starting anything in the queue? • Is there any lower priority to start investigating? 1. They don’t have anything? • Find other interesting work.
  20. 20. Being BlockedBeing Blocked Lower priority work… ◦ Spikes ◦ Analysis Other interesting work… ◦ Refactoring ◦ Tool Automation ◦ Personal Development ◦ Innovation But NOT ◦ Anything which will create work downstream
  21. 21. WIP Limit SizesWIP Limit Sizes WIP limit can depend on type of work and size of team Should be adjusted to achieve maximum flow
  22. 22. ExampleExample Fill Me! UED ReleaseBuild TestWork Items Queue WIP Queue WIP Queue WIP Done Queue WIP Product Manager Prioritises 1 UED 6 Dev 1 QA 1 SE Fill Me! Fill Me! Fill Me! Fill Me! Fill Me! Fill Me! Fill Me! Fill Me! Fill Me! Fill Me! Fill Me! Fill Me! Remember! It’s the whole team’s responsibility to progress work items
  23. 23. Simulation - PushSimulation - Push  The system includes a cup of Raw Material tokens, several workers in a row, and a cup for Finished Goods.  Each worker has a fair die.  Place 6 tokens between each worker  Worker 1 removes tokens from the cup according to the number of dots rolled on the die. The tokens are moved to a point between Worker 1 and Worker 2. Worker 2 rolls the die and moves tokens from between Worker 1 and Worker 2 to between Worker 2 and Worker 3. Then number processed is the maximum of the number rolled and the number of tokens available (WIP) at that location  Play the game for ten days. Each worker will roll the die once each day.  Record the final amount of Finished Goods and Work in Process
  24. 24. Simulation - KanbanSimulation - Kanban  The system includes a cup of Raw Material tokens, several workers in a row, and a cup for Finished Goods.  Each worker has a fair die.  Place 6 tokens between each worker  On day 1, the last worker moves the tokens into the finished goods cup according to the roll of the dice. The next to last worker rolls and tries to replenish the WIP before the last worker to its Kanban level of 6.  Sometimes the next to the last worker will be short and will have to make up the shortage on future days. Sometimes the next to the last worker will roll a high number and could exceed the Kanban level. Don't allow the Kanban level (WIP between two workers) to go above 6 tokens.  Play the game for ten days. Each worker will roll the die once each day.  Record the final amount of Finished Goods and Work in Process
  25. 25. Simulation - DiscussionSimulation - Discussion How did the two processes compare? ◦ Finished Goods? ◦ Work in Process? Any other observations?
  26. 26. Kanban ConsequenceKanban Consequence
  27. 27. Kanban ConsequenceKanban Consequence Eliminate Backlogs, Timeboxed Iterations, and Estimates
  28. 28. FlowFlow The Work in the System
  29. 29. FlowFlow “In lean enterprises, traditional organizational structures give way to new team-oriented organizations which are centred on the flow of value, not on functional expertise.” http://www.poppendieck.com/papers/LeanThinking.pdf
  30. 30. One Piece FlowOne Piece Flow Moving one piece at a time between stages in a workflow as opposed to Moving batches of work between stages in a workflow
  31. 31. Large BatchLarge Batch Analysis Design Build Test Release
  32. 32. Smaller BatchesSmaller Batches Analysis Design Build Test Release
  33. 33. AgileAgile Analysis Design Build Test Release
  34. 34. One Piece FlowOne Piece Flow Analysis Design Build Test Release
  35. 35. Continuous FlowContinuous Flow
  36. 36. Minimal Marketable FeaturesMinimal Marketable Features “A minimal marketable feature is a chunk of functionality that delivers a subset of the customer’s requirements, and that is capable of returning value to the customer when released as an independent entity” M Denne & H Cleland-Huang, Software by Numbers
  37. 37. MinimalMinimal As small as possible ◦ Progressive delivery (realise product sooner) ◦ Reduce feature bloat (the core features are the most important) ◦ A feature has a cost to a user (added complexity)
  38. 38. MarketableMarketable I will be able to write an entry in our product blog about this new feature
  39. 39. MarketableMarketable  Table Stakes ◦ Parity to the competition ◦ Minimum needed to be in the game  Differentiator ◦ Differentiates from the competition ◦ Delights the customer  Spoiler ◦ A competitors differentiator ◦ Raises the bar for parity  Cost Reducer ◦ Reduces cost ◦ Improves the margin
  40. 40. FeatureFeature Distinct, Deliverable, Observable Fits the INVEST acronym ◦ Independent, Negotiable, Valuable, Estimable, Small, Testable
  41. 41. User Story MappingUser Story Mapping goal activity task tool task task tool tool tool tool tool activity task tool task task tool tool tool tool tool • Goal: business or user objective • Activity: user centred pursuit • Task: element of performing an activity • Tool: solution detail Time Necessity goal
  42. 42. Two Tier Kanban - 1Two Tier Kanban - 1 Proposed In Progress (5) Done Development (3)Queue (4) Done
  43. 43. Two Tier Kanban - 2Two Tier Kanban - 2 Proposed WIP(5) DoneQueue (4) DoneMMF (3)
  44. 44. Flow ConsequenceFlow Consequence
  45. 45. Flow ConsequenceFlow Consequence Use Larger, Value-Focussed Features
  46. 46. CadenceCadence Commitment and Reliability
  47. 47. CadenceCadence “If the team isn’t estimating or planning with fixed time-boxes, how can it make reliable commitments?” Anonymous(es)
  48. 48. CadenceCadence “A regular cadence, or ‘heartbeat,’ establishes the capability of a team to reliably deliver working software at a dependable velocity. An organization that delivers at a regular cadence has established its process capability and can easily measure its capacity.” http://www.poppendieck.com/pipeline.htm
  49. 49. MetricsMetrics Throughput - the amount of output of a process in a given period of time Cycle Time - the length of time to complete a process Throughput = WIP / Cycle Time Throughput allows forecasting of future capability
  50. 50. CommitmentCommitment  Cycle Time becomes an SLA with the business  May need to size and/or classify MMFs where there is variation
  51. 51. Long Term ForecastingLong Term Forecasting Focus on quarterly goals and objectives Prioritise MMFs to meet those goals and objectives Release regularly Trust the team to work to its full capacity
  52. 52. Cumulative Flow DiagramCumulative Flow Diagram
  53. 53. Throughput ChartThroughput Chart
  54. 54. Cycle Time ChartCycle Time Chart
  55. 55. Other CadencesOther Cadences  Stand-up Meetings  Retrospectives  Operations Reviews
  56. 56. Cadence ConsequenceCadence Consequence
  57. 57. Cadence ConsequenceCadence Consequence Commitment via Measurement as Opposed to Planning
  58. 58. Thank YouThank You kjscotland@yahoo.co.uk http://availagility.wordpress.com aaron@sanders.name http://aaron.sanders.name/ http://groups.yahoo.com/group/kanbandev/