Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Training - Introducing Agile, Lean and Kanban


Published on

This is a presentation that I did for a team to introduce them to Agile, Lean and Kanban, It covers these these 3 areas, how they overlap and then gets into greater details about the Kanban Method.

Published in: Technology, Business
  • Be the first to comment

Training - Introducing Agile, Lean and Kanban

  1. 1. AGILE / LEAN / KANBAN 12/10/2013 Sudipta Lahiri, Digité 1
  2. 2. Let’s bust some myths first... 2  Agile methods are NOT:         You can get temporary speed... but not sustainable Speed needs much more discipline that otherwise!   Sloppy Whatever-you-want-to-do No-questions-asked, no-managers or no-dates Compressing schedule Throwing out documentation Coding till the last minute Think Formula One racing! Agile teams need testers... with strong testing skills 12/10/2013
  3. 3. Many are doing it today… 3 12/10/2013
  4. 4. 4 Even the Government is doing it… 12/10/2013
  5. 5. 5 So, what is all this noise about? 12/10/2013
  6. 6. The evolution of SDLC 6   1970s: Waterfall 1980s: SSAD  1985:  CMMI 1990s  OOD/RAD 12/10/2013
  7. 7. Changing Focus 7 Building the product RIGHT Are we building the RIGHT product? 12/10/2013
  8. 8. Emergence of Agile 8  2001: Agile Manifesto  individuals and interactions over processes and tools  Colocation/pair programming  Working software over comprehensive documentation  Sprints: deliverable software  Customer collaboration over contract negotiation  Responding to change over following a plan  Plan/Scope committed to the current Sprint 12/10/2013
  9. 9. Agile and Lean 9 12/10/2013
  10. 10. 10 Thinking progressed in 2 tracks... Management Methods       XP SCRUM Lean Kanban SCRUMBAN Many others... Engineering Methods     TDD + BDD Build Automation => Continuous Integration Continuous Delivery Continuous Deployment 12/10/2013
  11. 11. Lean applied to Software 11  What is a “Lean” system? A system in which we:  Eliminate waste:  Focus on hand-offs, source of errors  Amplify learning; create knowledge  Defer commitment  Deliver as fast as possible  Respect people; Empower them  Build quality in; optimize whole  Improvements can happen when you can see what is happening in the system => reduce waste  Focus on better economic outcome than better utilization of resources  Think of it as a pipeline... Anything, that slows things flowing out of the pipeline is a waste 12/10/2013
  12. 12. A different balancing act... 12 Cost (resources) Time Scope Agile software development Traditional software development Time Cost (resources) Scope (Target business goals & outcomes) 12/10/2013
  13. 13. SCRUM 13 12/10/2013 Img Src: Scrum Primer by Pete Deemer
  14. 14. What is Kanban? 14  David Anderson formulated the method  Kanban = kan ("visual") + ban ("card" or "board")    Coined by Toyota during the late 1940s and early 1950s and has spread to the manufacturing industry all over the world as a tool of Lean Manufacturing Kanban: signal Used to support noncentralized "pull" production control to gain visibility into the process and execution status, reduce waste (and costs), and help 12/10/2013
  15. 15. 15 The Kanban Method: Core Practices  Visualize the Work Focus is on creating a  continuously Limit Work in Process (WIP) improving system; NOT on creating Manage Flow; Establish a Cadence the most optimal  Remove bottlenecks and improve the flow system  Increase throughput    Map your value stream Making invisible work, visible! Make Process Policies Explicit ------------------------------------------------------ Improve Collaboratively, Evolve Experimentally (using models and scientific method)   Implement Feedback Loops 12/10/2013
  16. 16. A Board looks like this... 16 12/10/2013
  17. 17. Value Stream 17 Through metrics you can evaluate your efficiency. How much time spent on value add vs non value add 12/10/2013
  18. 18. Why Pull? Why Kanban 18 We don’t want to:  Build features that nobody needs right now  Write more specs than we can code  Write more code than we can test  Test more code than we can deploy  Work on Tickets/ Transactions that are not priority 12/10/2013
  19. 19. Limiting Work-In-Progress (WIP) 19  Reduces multi-tasking  Prevent context switching  Performing tasks one-at-a-time yields results sooner   Maximizes throughput Enhances teamwork  Working together to make things done  Increase cross-functionality 12/10/2013
  20. 20. Making policies explicit 20  Policies are not evil  Defining policies vs QMS  A framework for common understanding across all team members  For example:  Process Flow  Input Cadence; Output Cadence  WIP Limits  Definition of “Done”  Entry and Exit Criteria (moving from one stage to another)  Handling rework   Should the card be send back on the work board OR stay in the same lane till it is reworked? Handling Class of Service  How to handle Expedite cards? 12/10/2013
  21. 21. 21 Here’s what happens… Courtesy: Henrik Kniber 12/10/2013
  22. 22. 22 12/10/2013
  23. 23. 23 12/10/2013
  24. 24. 24 12/10/2013
  25. 25. 25 12/10/2013
  26. 26. 26 12/10/2013
  27. 27. 27 12/10/2013
  28. 28. How work happens today? 28  Project Managers do scope/work decomposition and assign tasks to people  Typically, done in a very deterministic manner   We make a MS Project schedule; gives a planned end date Tasks start slipping Team members try to juggle between what is planned (and kept on schedule) + new arrivals!   In most cases, people avoid reprioritization (you can’t do it for every incremental piece) As a result:  Planned tasks start slipping Multiple reasons: some in control of project team and some not...  Quality drops because people multitasking and context switching Unscheduled tasks start coming in  Management asks questions but very difficult to justify and show the problem!  Teams works in a reactive mode (as opposed to a planned proactive manner)  Team feels there is no time to breathe... the pressure seems endless! 12/10/2013     Some anticipated and some unanticipated...  Defects: you don’t know how many will come and their flow  New RFPs/CRs that need to be estimated that may or may not ever fructify  Some visible to the Project manager and some not...  These get assigned to people who are
  29. 29. How a “Project Board” changes this? 29  Shows all work items, their current state of progress and the people who are on it    Help collaborate between the project team:   If someone needs help, they can “block” without escalation/followup  If someone is overloaded, others in the team can respond  Work items move forward as they progress! Everyone knows what others are working on Provide for additional social tools to collaborate within project team Brings out many “hidden” things that people are working on Makes it obvious where work is getting piled up to everyone    You will see this when we show this in a fast simulation model Colors help you visualize the pattern of work  For e.g., are you doing more value enhancement work or more rework?    Chat/Threaded Discussions “What-if” simulation models Project Board is touch screen enabled and available on mobile 12/10/2013 platforms
  30. 30. 30 How a “Project Board” changes this?   Putting a limit on the work in process determines what really needs to be done Creates a scorecard with just having a simple Kanban board   The board keeps us accountable   You know how many get done! The person who owns the card has to move it forward Encourage teamwork as the tasks that are not being completed will focussed and 12/10/2013 worked on, together
  31. 31. 31 Kanban – an evolutionary approach  Kanban is an adaptive capability for evolutionary change  Not a process definition or a framework to be tailored 12/10/2013
  32. 32. Break ke baad... 32 12/10/2013
  33. 33. 33 The Daily Standup Meeting 12/10/2013
  34. 34. 34 The Challenges of Status Calls…  People report to leader…  Leader summarizes the status update  … and sometimes “massage” the status update  Often, there is chaos, no agenda, too many people  Louder personalities (few) dominate  Many sit quiet in tacit acceptance 12/10/2013
  35. 35. 35 Rationale behind the Standup call   Regularly communicating, working together and helping each other is the best team practice Gaining a shared understanding of what work is done and what remains to be done 12/10/2013
  36. 36. 36 Standup Call is the Team Huddle!  We have all seen the “HUDDLE”… in action  Why not in your teams? 12/10/2013
  37. 37. This is what happens… 37  Team Meeting to provide a Daily Status Update in 15 min    Gather issues during the Standup Process issues after the Standup: take discussions offline Each person tells their peers (not their manager)  What they did yesterday and what they plan on doing today  Where are they stuck or need help?  Think ahead your elevator pitch  Use the Board; have a facilitator  Same place; same time   Do not wait; do not repeat Ideally, start the day with a Standup 12/10/2013
  38. 38. GIFTS (goals) of a Standup Call 38  G – Good Start to the day   Give energy; instil a sense of purpose/urgency Clear understanding what needs to be done to achieve it   BUT… if you cannot START the day, schedule it at the end of the day so that it is not linked to starting work in the day  Expose problems to allow us to improve Share better techniques and ideas Focus on moving work through the system to achieve our objectives T – Reinforce the sense of Team  Strongly tied with team members helping each other with shared obstacles   Effective teams are built by regularly communicating, working, and helping each other  I – Support Improvement  F – Reinforce Focus on the Right Things  No "false urgency“: where people are geared up for activity but are without shared direction    Effective teams are autonomous (selforganizing) S – Communicate Status  How is the work progressing?  Is there anything else interesting that 12/10/2013
  39. 39. Some more guidelines 39  Who Attends?  “All Hands”    People are giving update on behalf of the stories Reject any meeting that risks that timeline    Including your manager’s or your customers They will appreciate your commitment to the “Huddle” Set your reminder 5 min ahead of start time Speaking order:   Round-robin… OR…  Replace some meetings/reports with Standup “Stories” are the participants   The last person who arrives speaks first Speak loudly; don’t whisper…  You have to energize!  End the meeting with a high note  Break eye contact with the manager  For larger teams  May not be possible in 15 min  Focus on Blocked Cards, Expedite Cards 12/10/2013  Leave time for something that
  40. 40. Standup Call - Mistakes 40  Be cautious of few issues dominating the call  Take them offline  Not Standing: Take out the chairs!  Some people get into “story telling”  Team members not showing up on time   Get support from line managers   Pick a time that everyone is OK with Provide buffer between meetings Allowing distractions  Location, No mobiles/laptops  Meeting etiquette  Not having a dedicated team room  Not using Standup for distributed teams 12/10/2013
  41. 41. 41 Retrospective 12/10/2013
  42. 42. The Retrospective Template: For mid-size projects 42   Appreciations Let everyone write their own points on a post-it and stick it on the white board What do they mean: Puzzles   Risks Wishes Risks: Future pitfalls that can endanger the project, represented by a bomb.  Actions Puzzles: Questions for which you have no answer, represented by a question mark. Appreciations: What you liked during the previous iteration, represented by a smiley face.  Wishes: Not improvements, but ideas of your ideal project, represented by a star. 12/10/2013
  43. 43. Scope 43     What did we plan to do? What actually happened? Why? What would we do next time? What do we want to do more of, what do we want to change or stop? (5 mins max) 12/10/2013
  44. 44. The method 44  Nominate a facilitator     Consider an outside facilitator to eliminate inter-personal issues Consider removing chairs => No more endless debates Avoid the product owner (unless you have a great one!)   Tend to hijack the discussion with “all problem with dev” Collect data for 15 min  Define ground rules. Consider:  Be respectful interrupt  Put away laptops and phones  Park long discussions in the designated lot  What is said here stays here  Look at Cumulative Flow, Cycle Time and Lead Time – what issues do we see, what actions can we take? (5 mins max) 12/10/2013  Collate your blockers Recap what you hear to ensure understanding  Go round the group – what have we done for the improvement actions we committed to last week? (23min per person) ; Do not
  45. 45. Break ke baad... 45 12/10/2013
  46. 46. getKanban Game 46  Each team has a playing board representing a Kanban task board, and a collection of story cards representing work to be done.  Each card has a value associated to it and an estimated effort for each stage  Team earns as cards complete the Value Stream  Teams compete to maximise net profit by optimizing the flow of work  All resources can do everything except when the system specifically mentions a constraint  System generates events and you have to keep re-planning based on the same  Lookout for Expedite or FixedDay cards; there is price for missing deadlines  When you pull cards, from the Backlog, new cards will appear; notice for the value of the cards 12/10/2013
  47. 47. 47 12/10/2013