Lean sw development il tech-talks

2,677 views

Published on

A presentation from a talk i gave about the principles of lean thinking in software development

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

No Downloads
Views
Total views
2,677
On SlideShare
0
From Embeds
0
Number of Embeds
1,600
Actions
Shares
0
Downloads
26
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide
  • The baton analogy taken from bas vodde.The image and metaphor we like to convey a key thinking mistake—and opportunity—is the sport of relay racing.Consider the relay racers standing around waiting for the batonfrom their running colleague. The accountant in the finance department, looking aghast at this terrible underutilization ‘waste’ indicated in some report, would probably mandate a policy goal of “95%utilization of resources” to ensure all the racers are busy and ‘productive.’ Maybe—he suggests—the runners could run three races atthe same time to increase “resource utilization,” or run up a mountain while waiting. Funny…but this kind of thinking lies behind much of traditional management andprocesses in development and other domains.2 Of course, in contrast, here is a centralidea in lean thinking:
  • “The Software Value Stream” David Harvey, January 2004
  • LEAN PRIMER by Craig Larman and Bas VoddePlay the layout game.
  • LEAN PRIMER by Craig Larman and Bas Vodde
  • ????
  • מתי פעם אחרונה מישהו מדד כמה שעות משקיע המנהל בחניכה?
  • Managers “Walk the Talk” - managers understand and act on the goal of “eliminating waste” and “continuousimprovement” in their own actions and decisions—and employees see thisTeams & Individuals Evolve Their Own Practices & Improvements - management challenges people to change and may ask what to improve , but… workers learn problem solving and reflection skills and then... decide how to improve
  • דוגמא – לוח סטטוס בקומת ההנהלה שמעדכנים הסקראם מסטרים כל יום ב:מצב הספרינטמצב הריליסרשימת בעיותעל מה עובדים
  • מנהל צוות או אפילו מנהל פיתוח שלא מסתכל על הקוד, על התשתיות, על הסביבות.... או אפילו על המוצרמתי פעם אחרונה ה-CTO הסתכל על הקוד שלכם
  • רצוי ומותר לטעות. איפה שאסור לטעות – אי אפשר להתנסות, איפה שאי אפשר להתנסות – קשה מאוד להשתפר.
  • Play a short specification game.
  • Task switching game.
  • Specialist \\ generalist game
  • Retrospective game
  • Example: Not buying a long term license for a development 3rd party lib due to cost and complication of process. So they renew it once every two month, happened already several times that the license was expired and a whole dept. (around 40 people) could not start the client.
  • Maybe replay the notes game
  • Source: the “Lean primer” by Craig Larman & Bas Vodde
  • Just by doing step 1 and 2 you will start to notice stuff you missed before. Example: Lack of balance between lanes, lots of pending feature to be developed, items may be stuck in one queue for a very long time.
  • Lean sw development il tech-talks

    1. 1. “Lean” originated from a benchmarking studypublished in 1990 betweenJapanese and US/Europeancar manufacturers
    2. 2. The study showed that for certain Japanesemanufacturers: Average productivity about 50% higher Average quality about 50% higher Product development about 40% faster with less peopleLean is not only in production but also inproductdevelopment, sourcing, sales, customerrelations
    3. 3. The study introduce the word “lean” for thedifferent production/thinking style.Lean is heavily based on Toyota ProductionSystem (TPS)
    4. 4. Build only what is neededEliminate anything which doesnot add valueStop if something goes wrongrespects those engaged in the workstrives for full utilization of worker capabilitiesplaces authority and responsibility for thework with those doing it
    5. 5. “... it was only after American carmakers had exhausted every other explanation for Toyota’s success—an undervalued yen, a docile workforce, Japanese culture, superior automation—that they were finally able to admit that Toyota’s real advantage was its ability to harness the intellect of ‘ordinary’ employees” [Hamel06]
    6. 6. Goal: Highest quality, lowest cost, Shortest cycle time Product development continuous Respect for Improvement people The 14 (kaizen) Principles Management applies and teaches lean thinking.Management decisions are based on this long-term philosophy
    7. 7. “All we are doing is looking at the time line, from the moment the customer gives us an order to the point where we collectthe cash. And we are reducing the time line by reducing the non-value-adding wastes” [Ohno88]
    8. 8. Waiting Waiting Waiting Waiting Waiting for PM for TL for PM for Team for team 30 min 3 weeks 2 days 5 days 1 hour 8 days 2 hour 2 hour 2 days 5 daysA feature Analyzed Estimated Prioritized Design is born Waiting for tester Waiting for release date 10 days 5 days 6 days 1 month Coding TestingValue time = 0.1 + 2 + 0.1 + 0.2 + 2 + 10 + 6 = 18.4Cycle time : 0.1 + 21 + 2 + 5 + 0.1 + 8 + 0.2 + 0.2 + 2 + 5 + 10 + 5 + 6 + 30 = 89.6
    9. 9. Management applies and teaches leanthinking, and bases decisions on thislong-term philosophy All Toyota employees learn: problem solving through hands-on improvement experiments to see how lean thinking applies in different domains kaizen mindset (continuous improvement) To appreciate a core principle in Toyota called Go See and Gemba
    10. 10. Culture of mentoring.“My manager can do my job better than me”Expected to understand lean thinking.In this way, the Toyota DNA is propagatedExample: Toyota HR policies include analysis of how muchtime managers spent in teaching.
    11. 11. Don’t Trouble Your Customer!Develop People and Then Build ProductsManagers “Walk the Talk”Teams & Individuals Evolve Their OwnPractices & ImprovementsBuild Partners
    12. 12. Customer: anyone who consumes your work ordecisions.Relentlessly analyze and change to stop troublingthemDon’t force people to do wasteful workDon’t give them defectsDon’t make them waitDon’t impose wishful thinking on themDon’t overload them
    13. 13. Go See - GembaKaizen.The perfection challengeWork toward flow
    14. 14. The first factor for success incontinuous improvement [ToyotaWay 2001]Management should frequentlygo to the place of real work andsee and understand forthemselves
    15. 15. “You can’t come up with useful kaizen sitting at your desk… We have too many people these days who don’t understand the workplace… They think a lot, but they don’t see. I urge you to make a special effort to see what’s happening in the workplace. That’s where the facts are” [Michikazu Tanaka]
    16. 16. Mindset: My work is to do my work and to improve my work.Practice: Choose and practice techniques the team has agreed to try, until they are well understood—that is, master standardized work Experiment until you find a better way Repeat forever
    17. 17. Value: The moments of action or thoughtcreating the product that the customer iswilling to pay for.Waste: All other moments or actions thatdo not add value but consume resources.value ratio =total-value-time / total-cycle-time
    18. 18. Overproduction features or services the customer doesn’t want large engineering documents, more detailed designs than can be quickly implemented duplication of dataWaiting / delay for clarification Documents Approval Components other groups to finish something
    19. 19. Handoff, conveyance, moving Giving a specification from an analyst to an engineer Giving a component to another group for testingExtra processing Relearning, lose of information. Forced conformance to centralized process checklists of Recreating something made
    20. 20. Partially done work – WIP DIP Designs documented but not built Things built but not integrated or tested Things tested but not delivered.Task switching Interruption Multitasking on 3 projects Partial allocation of a person to many projects
    21. 21. Under-realizing people People only working to single speciality job Do people have the chance to change what they see is waste.Information scatter or loss Information spread across many separate documents Communication barriers such as walls between people, or people in multiple locations.
    22. 22. Wishful thinking “We MUST follow the plan” “The estimate cannot increase; the effort estimate is what we want it to be, not what it is now proposed.” “We’re behind schedule, but we’ll make it up later.”
    23. 23. A regular and frequent cadence of events isdesirable (Dailyweekly)Steps in a Kaizen event: Analyze some current situation until it is well-understood. Design experiments for improvement During this analysis and design, focus on activities rather sitting around a table and talking.
    24. 24. Traditional mindset: Why should wechange? We’re making good money, and have established processes…You will NEVER hear this question atToyota!
    25. 25. Move to ever-smaller batch sizes and cycletimes to deliver value fast & exposeweakness.Associated with applied queuing theory,pull systems, and more.
    26. 26. Outlearn the competition. Focus on uncertain things Focus on early testing and feedback Intensive customer investigation. Reuse knowledge. Mentoring Record experiments and use the data.Challenge everything.Cadence (Rhythm)
    27. 27. 1. Base management decisions on a long-term philosophy, even at the expense of short-term financial goals.2. Move toward flow; move to ever-smaller batch sizes and cycle times to deliver value fast & expose weakness.3. Use pull systems; decide as late as possible.4. Level the work—reduce variability and overburden to remove unevenness.5. Build a culture of stopping and fixing problems; teach everyone to methodically study problems.6. Master norms (practices) to enable kaizen employee empowerment.7. Use simple visual management to reveal problems and coordinate.
    28. 28. 8. Use only well-tested technology that serves your people and process.9. Grow leaders from within who thoroughly understand the work, live the philosophy, and teach it to others.10. Develop exceptional people and teams who follow your company’s philosophy11. Respect your extended network of partners by challenging them to grow and helping them improve12. Go see for yourself at the real place of work to really understand the situation and help.13. Make decisions slowly by consensus, thoroughly considering options; implement rapidly.14. Become and sustain a learning organization through relentless reflection and kaizen.
    29. 29. Refrain from local optimization.Optimize the whole.
    30. 30. Reduce cycle time.Reduce batch sizeReduce delaysReduce WIPA Perfection challenge.
    31. 31. Batch size Feedback time Queue size Transaction costs Innovation Cycle TimeQuality Efficiency
    32. 32. Everyone are customers.Don’t do anything unless the customersasks you to.Why pull? Expose defects early. Decide at the last responsible moment.A Perfection challenge.
    33. 33. Reduce Variability: Varying cycle lengths Varying batch sizes of work packages Varying size of one work package Varying teams Varying delivery times Defects Irregular arrival of requests.How? Cadence, sustainable pace. Decompose work into smaller package.
    34. 34. Reduce Overburden Overtime for fake deadlines. Asking too much of people. Specialists as bottlenecks.How? Detect queues and bottlenecks and eliminate. Take on less work. Descope. Spread skill and knowledge.
    35. 35. When someone finds a defect: Stop the line. Take the necessary time to analyze the problem. Fix it. Continue the line.Sends the right message
    36. 36. Toyota usesBIG visual tools to signalproblems, communicate, and coordinate apull system.Color coding.Kanban – Visual card.Andon – Error display.
    37. 37. A system to manage work.A pull system focusing on visibility.A system to help limit the WIP.Focus on speed (Cycle time)Not a complete solution, should be embeddedwithin another solution.
    38. 38. Identify the different process stages.Put them in the order of work.Map tasks into the different stages.
    39. 39. Create a Kanban board.Each work item is a card.Each step is a column.Each column has two parts: In work Done
    40. 40. Focus on speed of getting stuff Done.Go as fast as you responsibly can.Focus on the Baton,not the runners.
    41. 41. Remember what you “Noticed”.Limit the WIP to what you find matchingyour needs.Respect the WIP limitIf a queue is full throw out something else.
    42. 42. Cycle time. Why item X took twice as much as item Y.Delay time for each queue. Why was item X delayed more than item Y.Measure queue sizes. Why is this queue always empty full.Visualize the data. Generate cumulative flow charts.

    ×