When I started to learn agile approaches to projects, OODA was all the rage, but it seems to have disappeared from view as modern agilistas move from Scrum to lean to Kanban to ultra-velocitus development.
I guess I am still a bit old school, because I still think the OODA loop is the essence of the agile approach.
So what is an OODA loop?
OODA loops began as an approach for fighter pilots to avoid dying. It is a way to train fighter pilots and also a way to design fighter aircraft, develop tactics for air combat and win wars in the air. It turns out that it is also really useful for agile projects, production support teams and anyone rolling out a product in a competitive market.
But what is an OODA loop?
I am only producing a quick summary of the idea here because I want to adopt the approach when I am doing some regression testing. But you can get more information by going to Wikipedia and exploring the links it has there.
The basic idea goes like this
- In a rapidly changing world, you can come up with a plan but it will be out of date before you can text your friends to tell them that you plan is ready to share.
- So rather than just executing your plan you need to get really good at observing, interpreting and reacting to what is happening around you.
- But as you react, you also impact the world, which then reacts to what you have done and is immediately different to what it was when you started to react to it.
- So now you need to observe what is going on again, interpret it and react again faster than your competitors because otherwise you are always playing catch-up.
- What is worse though is that it is not only about how fast you react, but how effectively you do so. If you are acting on the wrong information or you are interpreting it incorrectly then that is often worse than not reacting. So you need to be really, really good at observing, interpreting and reacting to things.
- But things get even worse, because you cannot just react to what others do, you need to also take the initiative and come up with new moves and new ideas before the other guy does.
- But of course while you are getting good at observing what happens and thinking up cunning new ideas, the world is moving so rapidly that you already need to be reacting again.
And so the loop repeats (unless you are a fighter pilot; in which case you will be shot down before you react).
Message from a sponsor
I was asked by an online university whether I could put a link to their degree on my site somewhere. I actually think it is relevant here because my first degree was done face to face and had a slow response time in learning – I would attend a tutorial and have a short discussion where one person spoke at a time. But when I did my masters online, I would read comments from other students, then see a response next time I logged on … and then see further discussions. So rather having one go at a topic (and then studying the night before the exam) I would have several “learning cycles”. I would see a comment (observe), orient myself to what they meant, decide whether to respond and then type my response. Then the cycle would begin again.
The reason I did my second degree online was for convenience, but I do think I gained a further benefit from the ongoing learning cycles rather than a one off hit at each topic. If you want to see how this works, then check this link for a good example of an online degree program – this one is relevant both because it is online and because the courses are relevant to the concepts of OODA (business intelligence and modern organizational leadership): SJU Online.
But what is the OODA loop?
Based on all of this, some guy called John Boyd came up with the idea that a fighter pilot will be successful if he or she can be both really fast and really effective at doing the following four steps continuously:
- Observing the world around you:
- For a pilot this means noticing what the instruments are telling you as well as what is happening outside your cockpit (eg what your friends and enemies are doing, or whether what you see contradicts what your instruments are telling you; and
- For a project team this means observing the impact that your previous decisions and actions have had, as well as how the evolving system is performing. And in some cases it also means observing what your competitors, suppliers and business customers are experiencing.
- Orienting yourself to what you observe:
- For a fighter pilot this means making sense of huge amounts of chaotic, complex and often contradictory information as you observe it. The problem is made worse because the pilot already has his or her own assumptions and expectations and these alter the way the pilot will interpret what he or she observes, sometimes for the better and often to the pilot’s detriment.
- For a project team, orient means exactly the same thing.
- For both doomed fighter pilots and project teams, this is the piece that we often don’t have time to do, or that we do incorrectly without even realising it. But that means either we cannot make a decision or that we make the wrong one. Either way it means that things become overwhelming and you end up crashing and burning.
- Deciding what to do about it:
- Apparently a lot of people who do well in the early stages of pilot training bomb out when they get to aerial combat training because they simply don’t trust their instincts enough to make a decision when they are in practice dogfights … or they ignore their analysis and make poor decisions in the heat of battle.
- This is also where a lot of clever people bomb out when they become project leaders, senior BA’s or testers. They can analyse information but they do not seem to be able to make effective decisions based on that analysis.
- The situation gets even worse for many teams where different people are making logical decisions on their own “OODA” loop, but this is not aligned to the analysis and decisions that others are making.
- Acting on your decision:
- Obviously for a fighter pilot there is no point in a decision that is not acted on quickly. But just as importantly, if the pilot lacks flying skills then he or she may attempt to do something and fail – which ends with crashing and burning.
- Once again things are similar in the project team, if a decision is not acted on quickly then it is out of date and the team have to redo their analysis and if the team are poor at executing their decisions then they quickly become muddled as events overtake their planning.
- Sadly, no matter how fast you act in a rapidly evolving situation, you still need to adjust to events that are transpiring as you act. And each time you act, you alter the complex system you are part of, both for better and for worse. So you need to rapidly return to the Observe step, observing the impact of your action and the other changes that are occurring at the same time.
Most of the good project managers I work with can relate to the OODA loop even if they have not heard it explained in quite those terms. In fact this is how I predict which project managers who will be lucky in their projects and which will seem to work hard and do all the right things but then crash and burn.
More than that though, I think that this is what separates a brilliant BA from a mediocre one. Rather than simply regurgitating what people say and therefore passing the already out of date information back to the decision makers, a good business analyst is the one who actually drives the OODA loop in the team.
So when you have good BA’s the decision makers feel like they are undder pressure, but there is a feeling that they are fine tuning old decisions and making the right new decisions as the project evolves. But with a bad BA, decision makers have no idea what is going on after only a few days on the project, or they skip the analysis phase in pursuit of timely (and often ill-informed) decisions and then pay the price later as the project seems to get harder and harder.
But what does all that have to do with regression testing? I hope to make that clear in the next enthralling episode of my series on regressions testing, day by day.