We are about launch our latest feature to the eager public, when suddenly we get the call all developers dread: The Site is down! Our business is pressuring us to quickly fix the site, but we can’t even find the problem! We pick up the red phone and call Karen, the fixer. She calmly spends five minutes typing, and announces that she found the problem, and everything is back to normal. Where would we be without Karen? How can we get these skills on the rest of the team, so anyone can work the magic she does?
It turns out that troubleshooting is a learnable skill. Join Shawn as he explores the Science of Troubleshooting. This workshop will examine what is happening during effective problem solving. It will examine types of scientific reasoning, and explore how we are using them to solve problems, sometimes without even realizing what we are doing! Participants will see how, by using scientific reasoning and experiments to build and test hypotheses about the problems, they can greatly increase the effectiveness of their troubleshooting and debugging. By making the process explicit even consummate problem solvers can improve how they approach and solve problems. Using the awareness gained attendees can guide others to improve their problem-solving skills.


Outline/Structure of the Workshop

This session was presented at Agile 2016 in Atlanta, and was well attended and reviewed.
This workshop arose out of our observations that some people were much better at solving technical problems than others, and it didn’t always seem to be correlated to knowledge or experience. We analyzed the activities that were taking place, and realized that the best problem solvers were using scientific reasoning and experiments to build and test hypotheses about the problems, greatly increasing the effectiveness of their learning. We found that by teaching these concepts and being explicit about the process, people were able to improve their own problem-solving skills.

In this workshop we explore the Scientific Method, and its use during problem solving. We look at the three approaches to scientific reasoning (deductive, inductive, and abductive). We show how the scientific method is used to incrementally build an internal model of the problem, in order to approach a solution. We describe the process effective troubleshooting follows, and present factors that contribute to success, or lead to failure. We then show how participants can teach this use of the scientific method, so that their team mates can learn as well. We compare this method to other troubleshooting and improvement processes, such as A3, Lean Change and Toyota Kata.

This workshops contains an exercise designed to help participants understand types of scientific reasoning. The participants also work together as a table to use this method to troubleshoot a problem.
As a 60 minute session, this session will likely run like this:

0:00 Introduction
0:05 A Story - “How Time Pressure Made a Team Lose Its Marbles.” A story about a disastrous problem-solving experience, this stories illustrates how failure to apply scientific reasoning can derail attempts to solve problems
0:10 The three types of scientific reasoning.
0:15 Attendees evaluate scenarios to see what type of reasoning was used. Paper exercise. Debrief.
0:20 We discuss the process of learning through scientific reasoning and experimentation. We discuss how to frame problem and how to form hypotheses and use small experiments to learn about the system we are exploring.
0:30 We present a troubleshooting problem to the tables, and they use this method to solve them
0:45 We discuss factors that can increase your chance of success
0:50 What are we talking about when we say problem-solving? It turns out that this approach can be used for more than just troubleshooting. We explore this model as how it can be used for debugging, design sessions, continuous improvement, etc. We also show that this is a valid approach at the individual, team or even organizational level. We compare to other improvement frameworks like Kanban and Toyota Kata. We discuss the limits of this approach, and caution against over-reliance on reductionism.

Learning Outcome

  • Understanding type of scientific reasoning
  • A useful model for the process of troubleshooting
  • Tips and tricks to improve troubleshooting effectiveness
  • Language that can be used with your team to help them gain these skills
  • Understanding of how this relates to other troubleshooting and improvement processes (e.g. A3, Toyota Kata, Lean Change)

Target Audience

Developers, devops

schedule Submitted 4 years ago

  • Matt Barcomb

    Matt Barcomb - Deliver more effectively using flow-based road mapping

    Matt Barcomb
    Matt Barcomb
    Principal Consultant
    schedule 4 years ago
    Sold Out!
    90 Mins

    If you’d like an alternative to typical, quarter-by-quarter, schedule oriented road mapping (and all the associated waste) then this session is for you. Matt Barcomb will introduce a Cadenced Flow approach to flow-based road mapping.

    He will first cover how to layout and execute a road map based on models that better fit software planning as well as how to transform your existing plans. Next, using options thinking to frame work will be explored and how to use starting and stopping triggers for options, reducing the need of blind budgeting or project practices. Finally, Matt will wrap up by touching on a few key metrics that will let you monitor and evaluate your new road map.