Using ToC And JIT Practice To Coach Agile Teams

Loading...

Flash Player 9 (or above) is needed to view presentations.
We have detected that you do not have it on your computer. To install it, go here.

1 comments

Comments 1 - 1 of 1 previous next Post a comment

  • + VenusinNYC New York Digital Filmmaker 2 months ago
    Network with us in the USA - We can assist in business contacts in North America.

    Film 'JAIN ENLIGHTENMENT - A Cosmic Way of Life' for America and the world

    We have produced a beautiful 10 min DEMO film 'JAIN ENLIGHTENMENT - A Way of Life' and also working on 'Palitana - City of Temples on the Hill' to inform and educate America about Ahimsa, Anekantvad, Aparigrah ... involving Forgiveness, Compassion, and Peace.

    We returned from India with over 200 hours of film and are also producing a series of films on Legend of Lord Bahubali; King Adhinathan, Lord Mahavira and Sacred Pilgrimages - including Ranakpur, Ellora etc. to show Jain Images of Perfection.

    Vinanti Sarkar,Director, Global Cultural Diversity Films (GCDF) Inc. 425 East 51st Street, New York, NY 10022. Tel: 212-759-4568
    Website: www.globalfilmlinks.com
    Review short clips on www.vimeo.com 5084696 or 5084856 or 50864417 or 5092260 or 5092316 and join our discussions on blog: ttp://jainenlightenment.blogspot.com where we are inviting donors to help in funding and receive free DVDs in return
Post a comment
Embed Video
Edit your comment Cancel

7 Favorites

Using ToC And JIT Practice To Coach Agile Teams - Presentation Transcript

  1. Using ToC and JIT Practice to Coach Agile Teams Naresh Jain naresh@agilefaqs.com Licensed under Creative Commons by Naresh Jain 1
  2. Example Context • Large Enterprise clients [450 ppl + 30 teams] • Huge communication and delivery issues • Help teams adopt Agile thinking Licensed under Creative Commons by Naresh Jain 2
  3. Consider this... Customer Signoff Bug reported 0 71 Time in days Licensed under Creative Commons by Naresh Jain 3
  4. After Value Stream Mapping Licensed under Creative Commons by Naresh Jain 4
  5. After Value Stream Mapping Time in days Licensed under Creative Commons by Naresh Jain 4
  6. After Value Stream Mapping Bug reported 0 Time in days Licensed under Creative Commons by Naresh Jain 4
  7. After Value Stream Mapping Reproduce Bug Bug reported 0 8 8 Time in days Licensed under Creative Commons by Naresh Jain 4
  8. After Value Stream Mapping Write failing test Reproduce Bug Bug reported 0 8 10 8 2 Time in days Licensed under Creative Commons by Naresh Jain 4
  9. After Value Stream Mapping Fix Bug Write failing test Reproduce Bug Bug reported 0 8 10 30 8 2 20 Time in days Licensed under Creative Commons by Naresh Jain 4
  10. After Value Stream Mapping Regression Testing Fix Bug Write failing test Reproduce Bug Bug reported 0 8 10 30 38 8 2 20 8 Time in days Licensed under Creative Commons by Naresh Jain 4
  11. After Value Stream Mapping Making a release Regression Testing Fix Bug Write failing test Reproduce Bug Bug reported 0 8 10 30 38 69 8 2 20 8 31 Time in days Licensed under Creative Commons by Naresh Jain 4
  12. After Value Stream Mapping Customer Signoff Making a release Regression Testing Fix Bug Write failing test Reproduce Bug Bug reported 0 8 10 30 38 69 71 8 2 20 8 31 5 Time in days Licensed under Creative Commons by Naresh Jain 4
  13. After Value Stream Mapping Customer Signoff Making a release Regression Testing Fix Bug Write failing test Reproduce Bug Bug reported 0 8 10 30 38 69 71 8 2 20 8 31 5 Time in days Licensed under Creative Commons by Naresh Jain 4
  14. Identify Constraints/ bottleneck Subordinate everything else and Elevate the Set Goals Constraints/ bottleneck Licensed under Creative Commons by Naresh Jain 5
  15. Agenda • Some background about ToC and JIT • Technique • Open Discussion with examples from audience Licensed under Creative Commons by Naresh Jain 6
  16. Theory of Constraint is based on the premise that... “Every real system, such as a business, must have within it at least one constraint. If this were not the case then the system could produce unlimited amounts of whatever it was striving for, profit in the case of a business.……………….” Dr Eli Goldratt Licensed under Creative Commons by Naresh Jain 7
  17. “Theory of Constraints” Licensed under Creative Commons by Naresh Jain 8
  18. “Theory of Constraints” Global optimization does not emerge from local optima Licensed under Creative Commons by Naresh Jain 8
  19. “Theory of Constraints” Global optimization does not emerge from local optima Managing by cost (optimizing local performance) is usually at odds with managing by throughput (exploiting constraints) Licensed under Creative Commons by Naresh Jain 8
  20. Significance of bottlenecks • Maximum speed of the process is the speed of the slowest operation • Any improvements will be wasted unless the bottleneck is relieved • Bottlenecks must be identified and improved if the process is to be improved Licensed under Creative Commons by Naresh Jain 9
  21. Significance of bottlenecks • Maximum speed of the process is the speed of the slowest operation • Any improvements will be wasted unless the bottleneck is relieved • Bottlenecks must be identified and improved if the process is to be improved Licensed under Creative Commons by Naresh Jain 9
  22. Assumes current constraints cannot be changed in the short-run Licensed under Creative Commons by Naresh Jain 10
  23. Assumes current constraints cannot be changed in the short-run What should be produced now, with current resources, to maximize profits? Licensed under Creative Commons by Naresh Jain 10
  24. How to apply ToC? Licensed under Creative Commons by Naresh Jain 11
  25. How to apply ToC? • Step 1: Identify the system's constraint(s). Licensed under Creative Commons by Naresh Jain 11
  26. How to apply ToC? • Step 1: Identify the system's constraint(s). • Step 2: Decide how to exploit the system's constraint(s). Licensed under Creative Commons by Naresh Jain 11
  27. How to apply ToC? • Step 1: Identify the system's constraint(s). • Step 2: Decide how to exploit the system's constraint(s). • Step 3: Subordinate everything else to the decisions of Step 2. Licensed under Creative Commons by Naresh Jain 11
  28. How to apply ToC? • Step 1: Identify the system's constraint(s). • Step 2: Decide how to exploit the system's constraint(s). • Step 3: Subordinate everything else to the decisions of Step 2. • Step 4: Elevate the system's constraint(s). Licensed under Creative Commons by Naresh Jain 11
  29. How to apply ToC? • Step 1: Identify the system's constraint(s). • Step 2: Decide how to exploit the system's constraint(s). • Step 3: Subordinate everything else to the decisions of Step 2. • Step 4: Elevate the system's constraint(s). • Step 5: Back to Step 1, identify next constraint. Licensed under Creative Commons by Naresh Jain 11
  30. Step 1: Identify the system’s constraint(s). Licensed under Creative Commons by Naresh Jain 12
  31. Step 1: Identify the system’s constraint(s). • Goal? Licensed under Creative Commons by Naresh Jain 12
  32. Step 1: Identify the system’s constraint(s). • Goal? • Throughput? Licensed under Creative Commons by Naresh Jain 12
  33. Step 1: Identify the system’s constraint(s). • Goal? • Throughput? • Inventory? Licensed under Creative Commons by Naresh Jain 12
  34. Step 1: Identify the system’s constraint(s). • Goal? • Throughput? • Inventory? • Operating Expense? Licensed under Creative Commons by Naresh Jain 12
  35. Step 2: Decide how to exploit the system’s constraint(s). Licensed under Creative Commons by Naresh Jain 13
  36. Step 3: Subordinate everything else to the decisions of Step 2 Licensed under Creative Commons by Naresh Jain 14
  37. Step 4: Elevate the system’s constraint(s). Licensed under Creative Commons by Naresh Jain 15
  38. Step 5: Back to Step 1, identify next constraint. What might happen if the constraint is elevated? Licensed under Creative Commons by Naresh Jain 16
  39. ToC : 3 things can increase profitability of a plant • Decrease Inventory • Decrease Operating Expense • Increase Throughput Licensed under Creative Commons by Naresh Jain 17
  40. How does ToC apply to Software projects? Licensed under Creative Commons by Naresh Jain 18
  41. How does ToC apply to Software projects? • Inventory Licensed under Creative Commons by Naresh Jain 18
  42. How does ToC apply to Software projects? • Inventory • Features requested but not specified • Features specified and documented but not built • Code that's written but not tested • Code that's tested but not deployed to users • Code that's deployed but not used Licensed under Creative Commons by Naresh Jain 18
  43. How does ToC apply to Software projects?... Licensed under Creative Commons by Naresh Jain 19
  44. How does ToC apply to Software projects?... • Operating expenses Licensed under Creative Commons by Naresh Jain 19
  45. How does ToC apply to Software projects?... • Operating expenses • Idle team members - Phased approach • Commercial Tools • Cost of change curve - rework • Constant thrashing of ideas • Technical Debt Licensed under Creative Commons by Naresh Jain 19
  46. How does ToC apply to Software projects?... • Throughput • Large batch Size - Queuing Theory Licensed under Creative Commons by Naresh Jain 20
  47. Queuing Theory Utilization (%) Source: Beyond Agile Software Development Becoming Lean, Mary Poppendieck, Poppendieck.llc Licensed under Creative Commons by Naresh Jain 21
  48. How does ToC apply to Software projects?... Licensed under Creative Commons by Naresh Jain 22
  49. How does ToC apply to Software projects?... • Throughput Licensed under Creative Commons by Naresh Jain 22
  50. How does ToC apply to Software projects?... • Throughput • Large batch Size - Queuing Theory • Heavyweight methodology • Poor choice of tools • Real resource shortage Licensed under Creative Commons by Naresh Jain 22
  51. Using Lean principles to Identify Waste Licensed under Creative Commons by Naresh Jain 23
  52. Using Lean principles to Identify Waste • Overproduction = Extra Features Licensed under Creative Commons by Naresh Jain 23
  53. Using Lean principles to Identify Waste • Overproduction = Extra Features • Inventory = Requirements Licensed under Creative Commons by Naresh Jain 23
  54. Using Lean principles to Identify Waste • Overproduction = Extra Features • Inventory = Requirements • Extra Processing Steps = Extra Steps Licensed under Creative Commons by Naresh Jain 23
  55. Using Lean principles to Identify Waste • Overproduction = Extra Features • Inventory = Requirements • Extra Processing Steps = Extra Steps • Motion = Finding Information Licensed under Creative Commons by Naresh Jain 23
  56. Using Lean principles to Identify Waste • Overproduction = Extra Features • Inventory = Requirements • Extra Processing Steps = Extra Steps • Motion = Finding Information • Defects = Defects Not Caught by Tests Licensed under Creative Commons by Naresh Jain 23
  57. Using Lean principles to Identify Waste • Overproduction = Extra Features • Inventory = Requirements • Extra Processing Steps = Extra Steps • Motion = Finding Information • Defects = Defects Not Caught by Tests • Waiting = Waiting, Including Customers Licensed under Creative Commons by Naresh Jain 23
  58. Using Lean principles to Identify Waste • Overproduction = Extra Features • Inventory = Requirements • Extra Processing Steps = Extra Steps • Motion = Finding Information • Defects = Defects Not Caught by Tests • Waiting = Waiting, Including Customers • Transportation = Handoffs Licensed under Creative Commons by Naresh Jain 23
  59. Just In Time Licensed under Creative Commons by Naresh Jain 24
  60. Just In Time • A pull system, driven by actual demand. The goal is to produce or provide one part just-in-time for the next operation. Reduces stock inventories, but leaves no room for schedule error. As much a managerial philosophy as it is an inventory system. Licensed under Creative Commons by Naresh Jain 24
  61. Just In Time • A pull system, driven by actual demand. The goal is to produce or provide one part just-in-time for the next operation. Reduces stock inventories, but leaves no room for schedule error. As much a managerial philosophy as it is an inventory system. • Last Responsible Moment Licensed under Creative Commons by Naresh Jain 24
  62. Just In Time • A pull system, driven by actual demand. The goal is to produce or provide one part just-in-time for the next operation. Reduces stock inventories, but leaves no room for schedule error. As much a managerial philosophy as it is an inventory system. • Last Responsible Moment • Just-In-Time Training - Training provided to individuals or units just before the skills or function taught will be used in a practical application. Typically used to teach perishable or infrequently used skills Licensed under Creative Commons by Naresh Jain 24
  63. Licensed under Creative Commons by Naresh Jain 25
  64. Can we benefit more from ToC, JIT and Lean? Licensed under Creative Commons by Naresh Jain 25
  65. What if... • We consider software team members as the machines in our software factories? • Can we apply ToC and benefit? Licensed under Creative Commons by Naresh Jain 26
  66. Consider this... Licensed under Creative Commons by Naresh Jain 27
  67. Consider this... Time in days Licensed under Creative Commons by Naresh Jain 27
  68. Consider this... Bug reported 0 Time in days Licensed under Creative Commons by Naresh Jain 27
  69. Consider this... Reproduce Bug Bug reported 0 8 8 Time in days Licensed under Creative Commons by Naresh Jain 27
  70. Consider this... Write failing test Reproduce Bug Bug reported 0 8 10 8 2 Time in days Licensed under Creative Commons by Naresh Jain 27
  71. Consider this... Fix Bug Write failing test Reproduce Bug Bug reported 0 8 10 30 8 2 20 Time in days Licensed under Creative Commons by Naresh Jain 27
  72. Consider this... Regression Testing Fix Bug Write failing test Reproduce Bug Bug reported 0 8 10 30 38 8 2 20 8 Time in days Licensed under Creative Commons by Naresh Jain 27
  73. Consider this... Making a release Regression Testing Fix Bug Write failing test Reproduce Bug Bug reported 0 8 10 30 38 69 8 2 20 8 31 Time in days Licensed under Creative Commons by Naresh Jain 27
  74. Consider this... Customer Signoff Making a release Regression Testing Fix Bug Write failing test Reproduce Bug Bug reported 0 8 10 30 38 69 71 8 2 20 8 31 5 Time in days Licensed under Creative Commons by Naresh Jain 27
  75. Consider this... Customer Signoff Making a release Regression Testing Fix Bug Write failing test Reproduce Bug Bug reported 0 8 10 30 38 69 71 8 2 20 8 31 5 Time in days Licensed under Creative Commons by Naresh Jain 27
  76. Challenges making a Release • Developers not checking in frequently • Complicated and non-standard build process • Real Build owned by Config Mgmt Team • ... Licensed under Creative Commons by Naresh Jain 28
  77. Fixing Release issues by applying JIT Practice Licensed under Creative Commons by Naresh Jain 29
  78. Fixing Release issues by applying JIT Practice • Standardize build process for the whole team Licensed under Creative Commons by Naresh Jain 29
  79. Fixing Release issues by applying JIT Practice • Standardize build process for the whole team • Manual integration on developers machines before checking in Licensed under Creative Commons by Naresh Jain 29
  80. Fixing Release issues by applying JIT Practice • Standardize build process for the whole team • Manual integration on developers machines before checking in • Manual integration on an independent server machine Licensed under Creative Commons by Naresh Jain 29
  81. Fixing Release issues by applying JIT Practice • Standardize build process for the whole team • Manual integration on developers machines before checking in • Manual integration on an independent server machine • Continuous integration using CI servers like CruiseControl Licensed under Creative Commons by Naresh Jain 29
  82. After optimizing biggest bottleneck... Customer Signoff Making a release Regression Testing Fix Bug Write failing test Reproduce Bug Bug reported 0 8 10 30 38 44 49 8 2 20 8 5 6 Time in days Licensed under Creative Commons by Naresh Jain 30
  83. After optimizing biggest bottleneck... Customer Signoff Making a release Regression Testing Fix Bug Write failing test Reproduce Bug Bug reported 0 8 10 30 38 44 49 8 2 20 8 5 6 Time in days Licensed under Creative Commons by Naresh Jain 30
  84. After recursively applying ToC Licensed under Creative Commons by Naresh Jain 31
  85. After recursively applying ToC • Total time to fix any bug was 10 days...one two-week iteration Licensed under Creative Commons by Naresh Jain 31
  86. After recursively applying ToC • Total time to fix any bug was 10 days...one two-week iteration • Find practices or techniques that help solve this problem and recurse. Licensed under Creative Commons by Naresh Jain 31
  87. Summary • ToC and JIT can be applied to software team’s “business” process • Using Retrospectives and other techniques Identify biggest stinkers [bottlenecks] • Use a JIT practice to elevate the bottleneck • Baby Steps - No Silver Bullets! • Recurse Licensed under Creative Commons by Naresh Jain 32
  88. Thank You naresh@agilefaqs.com Licensed under Creative Commons by Naresh Jain 33

+ Naresh JainNaresh Jain, 2 years ago

custom

3125 views, 7 favs, 1 embeds more stats

My approach on coaching Agile teams using Theory of more

More info about this document

CC Attribution-NonCommercial-ShareAlike LicenseCC Attribution-NonCommercial-ShareAlike LicenseCC Attribution-NonCommercial-ShareAlike License

Go to text version

  • Total Views 3125
    • 3121 on SlideShare
    • 4 from embeds
  • Comments 1
  • Favorites 7
  • Downloads 285
Most viewed embeds
  • 4 views on http://agilefaqs.com

more

All embeds
  • 4 views on http://agilefaqs.com

less

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate. If needed, use the feedback form to let us know more details.

Cancel
File a copyright complaint
Having problems? Go to our helpdesk?

Categories