Successfully reported this slideshow.
Your SlideShare is downloading. ×

Agile Everywhere! - Henrik Kniberg

Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad

Check these out next

1 of 78 Ad

Agile Everywhere! - Henrik Kniberg

Download to read offline

Agile Everywhere!

Henrik Kniberg talks about how his journey implementing agile & lean methods at Spotify and Lego helped him apply agility in new & unexpected fields. Henrik will share his vision on how agility may evolve in the future and affect various areas of our lives.

About Henrik Kniberg
Henrik Kniberg is an Agile/Lean coach at Crisp in Stockholm, working primarily with Lego and Spotify. He enjoys helping companies succeed with both the technical and human sides of software development. During the past 15 years he has been CTO of 3 Swedish IT companies and helped many more get started with Agile and Lean software development.

Henrik is former board member of the Agile Alliance and works regularly with Mary Poppendieck, Jeff Sutherland, and other thought leaders. He is the author of “Scrum and XP from the Trenches” and “­Kanban and Scrum, making the most of both” and “Lean from the Trenches“. These books are available in over 12 languages, have over 500,000 readers, and are used as primary guide to Agile and Lean software development by hundreds of companies worldwide.­ Henrik also created the viral animated videos “Agile Product Ownership in a Nutshell” and “Spotify Engineering Culture“.

Agile Everywhere!

Henrik Kniberg talks about how his journey implementing agile & lean methods at Spotify and Lego helped him apply agility in new & unexpected fields. Henrik will share his vision on how agility may evolve in the future and affect various areas of our lives.

About Henrik Kniberg
Henrik Kniberg is an Agile/Lean coach at Crisp in Stockholm, working primarily with Lego and Spotify. He enjoys helping companies succeed with both the technical and human sides of software development. During the past 15 years he has been CTO of 3 Swedish IT companies and helped many more get started with Agile and Lean software development.

Henrik is former board member of the Agile Alliance and works regularly with Mary Poppendieck, Jeff Sutherland, and other thought leaders. He is the author of “Scrum and XP from the Trenches” and “­Kanban and Scrum, making the most of both” and “Lean from the Trenches“. These books are available in over 12 languages, have over 500,000 readers, and are used as primary guide to Agile and Lean software development by hundreds of companies worldwide.­ Henrik also created the viral animated videos “Agile Product Ownership in a Nutshell” and “Spotify Engineering Culture“.

Advertisement
Advertisement

More Related Content

Slideshows for you (20)

Viewers also liked (20)

Advertisement

Similar to Agile Everywhere! - Henrik Kniberg (20)

More from Agile Montréal (20)

Advertisement

Recently uploaded (20)

Agile Everywhere! - Henrik Kniberg

  1. 1. Author Dad Organizational coach & Change Instigator www.crisp.se Consultant Henrik Kniberg henrik.kniberg@crisp.se @HenrikKniberg Agile Everywhere! Keynote, Agile Tour Montreal Nov 16, 2016
  2. 2. Is Agile just a Software thing? www.agilemanifesto.org We are uncovering better ways of developing software by doing it and helping others do it. Through this work we have come to value: Individuals and interactions over processes and tools Working software over comprehensive documentation Customer collaboration over contract negotiation Responding to change over following a plan That is, while there is value in the items on the right, we value the items on the left more.
  3. 3. Henrik Kniberg
  4. 4. Henrik Kniberg 5
  5. 5. Henrik Kniberg 6
  6. 6. Recruitment team Henrik Kniberg
  7. 7. Henrik Kniberg Recruitment team
  8. 8. JAS 39E Saab Gripen Henrik Kniberg Agile practices implemented at every level and in every discipline: software, hardware and fuselage design. Pilots on the same site as development teams. Direct feedback provided every sprint. Compared to F35 joint strike fighter, Gripen 39E has: •  50x lower development cost! •  10x lower unit cost!1500 people, all co-located in Linköping, Sweden. World’s most cost-effective military aircraft ($4700 Cost per Flight Hour) Sources: •  http://www.stratpost.com/gripen-operational-cost-lowest-of-all-western-fighters-janes •  Personal visit to SAAB Linköping •  Research paper “Owning the Sky with Agile”
  9. 9. Henrik Kniberg Pair programming Product Owner role Physical tools Process tools a.k.a. ”organizational patterns” Thinking tools a.k.a. ”mindsets” or ”philosophies” Lean Agile Toolkits a.k.a. ”frameworks” Scrum XP Visualize management To do Dev Release H C 2 Test 35 Done! 3 D G K A B FLOW Kanban Systems Thinking Queuing theory SAFe Tool ”anything used as a means of accomplishing a task or purpose.” - dictionary.com
  10. 10. Henrik Kniberg Lean Agile
  11. 11. Henrik Kniberg Lean Agile
  12. 12. Henrik Kniberg
  13. 13. Henrik Kniberg 15 Agile Manifesto www.agilemanifesto.org We are uncovering better ways of developing software by doing it and helping others do it. Through this work we have come to value: Individuals and interactions over processes and tools Working software over comprehensive documentation Customer collaboration over contract negotiation Responding to change over following a plan That is, while there is value in the items on the right, we value the items on the left more. products feedback solutions
  14. 14. Agile is not new Henrik Kniberg Buzzwords will come and go, but the underlying ideas and principles are timeless
  15. 15. Henrik Kniberg •  2.3 million blocks •  6 million tons •  140 meters high •  Tallest man-made structure for 3800 years
  16. 16. Iterations, Continuous Improvement, Pull, Single-piece flow 4500 years ago Henrik Kniberg 2.5 – 15 tonsVelocity of Khufu’s pyramid construction: 1 block every 2.5 minutes ... for 30 years!!!
  17. 17. Beware of Tool Misuse Henrik Kniberg Abraham Maslow If all you have is a hammer, everything looks like a nail
  18. 18. Misguided Lean Photo: http://leanactionplan.pl/o-nas/artykuly_lean/Lean-Office;183.html Henrik Kniberg Revealing the right problem Solving the wrong problem
  19. 19. SAFe LeSS / SAFe The Agile ”umbrella” Scrum XP DSDM FDD Crystal Kanban Henrik Kniberg Using an agile framework doesn’t automatically make you agile! You can be agile without using ANY of these frameworks Daily Scrum Sprint Product Owner Continuous Integration WIP Limits Big Room Planning Program board Pairing Agile Values & Principles
  20. 20. Henrik Kniberg
  21. 21. Pixar Henrik Kniberg
  22. 22. Example: Pixar Henrik Kniberg That's a blunt assessment, I know, but I choose that phrasing because saying it in a softer way fails to convey how bad the first versions really are. Our job is to make them go from Suck to Not-Suck. Ed Catmull President of Pixar & Disney Animation Studios Early on, all of our movies suck.
  23. 23. Henrik Kniberg In the early stage of making a movie, we draw storyboards (a comic-book version of the story) and then edit them together with dialogue and temporary music. The first versions are very rough, but they give a sense of what the problems are, which in the beginning of all productions are many. We then iterate, and each version typically gets better and better.
  24. 24. The further you are from software development, the less likely that any of the popular frameworks will fit 100% Henrik Kniberg Agile Values & Principles SAFe LeSS / SAFe Scrum XP Kanban
  25. 25. Continuous Integration XP Henrik Kniberg User stories Definition of Done Scrum Master Sprint TDD Velocity Pair programming Cadence Daily standup Retrospective Value stream mapping Understand the Why of each tool Story points Cross-functional team WIP limits
  26. 26. Example: Why Sprints? Henrik Kniberg Too much “stability” Too much “flexibility” Sprint = stability + flexibility Compromise between stability & flexibility.
  27. 27. When is Agile most needed? Henrik Kniberg What to deliver Unclear/unstable Clear & stable How to deliver it Clear & stable Unclear/unstable Any process works here Agile is optimized for this Predictive process doesn’t work here. Need an adaptive process. (feedback loops rather than detailed plans)
  28. 28. Why is Agile spreading so fast? Henrik Kniberg What to deliver Unclear/unstable Clear & stable How to deliver it Clear & stable Unclear/unstable Any process works here Agile is optimized for this Predictive process doesn’t work here. Need an adaptive process. (feedback loops rather than detailed plans)
  29. 29. The role of copy-paste Henrik Kniberg Scrum and XP from the Trenches Spotify Engineering Culture AdaptCopy Paste Copy Paste
  30. 30. Strategies for applying agile in other contexts Henrik Kniberg Implement method X “by the book”, then customize it Cherry-pick specific practices Apply agile ideas directly, without using any specific framework Implement method X “by the book”, and follow the rules religously
  31. 31. Strategies for applying agile in other contexts Henrik Kniberg Implement method X “by the book”, then customize it Cherry-pick specific practices Implement method X “by the book”, and follow the rules religously Apply agile ideas directly, without using any specific framework
  32. 32. Example: Big Family Trip Henrik Kniberg
  33. 33. Henrik Kniberg 35 Vision Motive Must Do Departure Date: Oct 1 Should Do Could Do Preparations
  34. 34. Travel “spike” Henrik Kniberg Small Family Trip London, 4 days Big Family Trip Round the world, 6 months
  35. 35. Peru Japan New Zealand West Indies
  36. 36. On-the-road schooling Henrik Kniberg using velocity, cadence, and burnup chart
  37. 37. “School” is every day after breakfast, regardless of location Henrik Kniberg
  38. 38. On-the-road schooling Henrik Kniberg Travel days School points “done” using velocity, cadence, and burnup chart “On track” = bottom bar is ahead of top bar
  39. 39. Henrik Kniberg Back home from the trip... Why is the kitchen always such a mess suddenly? We didn’t have that problem when travelling. Why?
  40. 40. 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 16 160+
  41. 41. Henrik Kniberg 1 Mon 7:00 2 Mon 11:00 3 Mon 22:004 Tue 22:00 1-2 days! Root cause: Dishwasher!
  42. 42. 8 8 8 8 8 8 16
  43. 43. Henrik Kniberg
  44. 44. Henrik Kniberg
  45. 45. Henrik Kniberg 1 Mon 7:00 2Mon 7:30 < 1 hour!
  46. 46. Henrik Kniberg
  47. 47. Worked like a charm! Henrik Kniberg but did we keep doing it?
  48. 48. Sometimes agile practices don’t stick. That’s Fine. Explanations: •  The practice was only needed for a specific situation •  The practice didn’t work too well •  The practice was a stepping stone until a better practice was found •  The practice was only needed to learn & internalize a new behaviour Henrik Kniberg
  49. 49. Pattern: Go all-in first, then go pragmatic Henrik Kniberg 1 2 3 “Good enough” test coverage. Tests & code in same commit TDD when needed 3 No personal sets needed “Wash my own dishes” attitude internalized Dishwasher used sometimes 1 Dishwasher 2 No batching No dishwasher WIP limit Personal sets Batching LeanKitchen No tests Full TDD Test automation
  50. 50. Example: Using a practice only when needed Henrik Kniberg Spotify Engineering Culture video – part 1 •  Expected production time: A few days •  Actual production time: Several weeks! Whoa! That took MUCH longer than I expected! Agile Product Ownership in a Nutshell •  Production time: 2 days Takes a couple of days to make a cool animated video How can I avoid the same problem for Part 2?
  51. 51. Video storyboard (rough sketches) Henrik Kniberg
  52. 52. “Pointifying” the work Henrik Kniberg
  53. 53. Pomodoro Technique Personal Scrum with 30 minute sprints Henrik Kniberg Decide what to focus on 100% Focus! No interruptions! Measure: • How much can I get done in one Pomodoro? • How many Pomodoros can I execute per day / week? Pomodoro 1 25 minutes 5minutebreak Pomodoro 2 25 minutes Decide what to focus on 100% Focus! No interruptions!
  54. 54. Used Yesterday’s Weather and burndown chart to reliably forecast when the video would be done Henrik Kniberg
  55. 55. Strategies for applying agile in other contexts Henrik Kniberg Implement method X “by the book”, then customize it Cherry-pick specific practices Apply agile ideas directly, without using any specific framework Implement method X “by the book”, and follow the rules religously
  56. 56. Robit Henrik Kniberg
  57. 57. Henrik Kniberg
  58. 58. Henrik Kniberg 2 kids & rookies with very little robot experience... ... vs ten teams of adult geeks and programmers
  59. 59. Step 1: Set a clear goal (define “success”) Henrik Kniberg Let’s build a robot that at least can put a fight.... No! We’re going to WIN!
  60. 60. Henrik Kniberg Agile
  61. 61. Henrik Kniberg Step 2: Build a Minimum Viable Robot (Earliest Testable Robot)
  62. 62. Aim for the clouds, but deliver and test in small steps Henrik Kniberg Can stay in the ring Can find opponent
  63. 63. Step 3: Build an opponent to practice against Henrik Kniberg
  64. 64. Field test, Field test, Field test Henrik Kniberg Can stay in the ring Can find opponent Can get to opponent Can budge opponent Can win match against a static opponent
  65. 65. Aim for the clouds, but deliver and test in small steps Henrik Kniberg Can stay in the ring Can find opponent Can get to opponent Can budge opponent Can win match against a static opponent
  66. 66. Lifter? Or no lifter? Henrik Kniberg Hypothesis: - Mechanical Lifter can help us win Experiment: - Build a simple lifter and try Learning: - Works as designed... - But too weak to lift opponent - ... so it doesn’t help us win! Options: - Keep it cuz it’s cool (who needs to win anyway) - Improve it - Remove it, try a different approach
  67. 67. Simpler was better Henrik Kniberg
  68. 68. Field testing = Success by 100 failures Henrik Kniberg
  69. 69. Henrik Kniberg
  70. 70. Henrik Kniberg
  71. 71. Henrik Kniberg
  72. 72. Henrik Kniberg
  73. 73. How could they win? Building skill? No. Programming skills? No. Luck? Partly, but not entirely. Henrik Kniberg 1) Clear goal 2) Low self-confidence 3) Emergent design 4) LOTS of field testing!
  74. 74. 01:39 Some tips when applying agile in <insert domain here> Henrik Kniberg
  75. 75. Don’t inflict help on people. Pull works better than Push Henrik Kniberg Sure, I’ll show you how we work, and why. Sure. Tell me more about your domain, and we’ll figure it out together. Hey, your way of working looks interesting. Think something similar might work for us? Hey we’re using Scrum here, you should too! ... Push Invites resistance and “not invented here” syndrome Invites collaboration I like it! Can you help us get started? Pull
  76. 76. WARNING 2 slides full of bullet points coming up sorry...
  77. 77. Agile in Domain X requires a collaboration between people who understand Domain X, and people who understand Agile. Step 1: Understand the context •  What do you do? •  Who are your stakeholders? •  What is a unit of work? •  What does Done mean? •  What does Success look like? •  Who is need to get things to Done? •  What do you want to improve, and why? •  How will you know if you’ve improved? Henrik Kniberg Step 2: Understand the tools •  What is Agile? Scrum? Kanban? XYZ? •  Which principles and practices are most applicable in your context? Step 3: Get Buy-in •  Who needs to be involved to make the change happen? •  What’s in it for them? Step 4: Start experimenting •  When in doubt, start by making work visible •  Find some early wins to build trust
  78. 78. Take-aways •  Agile is not new, and not going away •  The word may go out of fashion, but the ideas are timeless •  Agile can be useful in just about any context, not just software •  But Agile or <insert framework here> is only a means, never a goal •  Distinguish between Principles and Practices •  Practices are more domain-specific and need to be adapted or replaced •  Copy & Paste & Evolve •  No need to reinvent the wheel •  Use the appropriate language for the domain •  Don’t unnecessarily alienate people with strange words •  Don’t inflict help on people •  If they are happy with their current way of working, then don’t bother trying to change it. Henrik Kniberg

×