By Tom Steele
One popular criticism of the early agile software development movement is often summed up by the phrase Ready, Fire, Aim. The phrase’s intent is to depict agile approaches like Scrum and XP as foolish—something so obviously inconsistent with conventional wisdom that it could not possibly work. At its core, it suggests that lengthy planning (aiming) must come before getting started (firing). Anything else could never work and should be avoided.
Those of us who have successfully adopted Scrum know that rapid and continuous planning throughout the life of a project is much better than any lengthy upfront planning effort. Scrum, through its release and iteration burndown charts, provides the necessary information to properly steer projects toward successful outcomes.
Nonetheless, you may still encounter this anti-agile sentiment from people or organizations reluctant to try Scrum. I would like to share two illustrations that show why Ready, Fire, Aim can sometimes be a good thing.
Ready, Fire, Aim Really Works
Ready, Fire, Aim is a play on Ready, Aim, Fire, a phrase commonly used in conjunction with firearms. Since firearms are used extensively by the military, the first counter story I want to share comes from the US military.
General Norman Schwarzkopf commanded US forces in the Persian Gulf during Operation Desert Shield and Operation Desert Storm. He is credited with taking advantage of technology advancements in weaponry to aide his success during the Gulf War. One such advancement involved putting soldiers on top of buildings in Iraq. These soldiers would remain hidden during daylight hours. At night missiles would be fired from several miles away. After the missiles had been fired, the soldiers on the rooftops would use lasers to guide (aim) them to their targets—truly a Ready, Fire, Aim operation.
A Scrum team is similar to the soldiers on the buildings, constantly guiding their projects to the desired targets.
Confucius Says
My second story illustration is a simple passage from a fortune cookie: You can’t aim a duck to death.
The Scrum/agile interpretation of this phrase is that you will never complete any project (kill the duck) if you never actually get started (aim endlessly). Numerous projects fail before getting started; too much time and money is expended at the onset. This can be especially true in large enterprises where there is a tendency to spend far too long defining and planning projects and never getting them started. The passage also nicely complements the Scrum mantra The art of the possible.
That doesn’t mean that we shouldn’t aim at all. After all, it is also said that a well-aimed spear is worth three. Even (and especially) in an agile setting, everything must be kept in balance. It’s entirely possible for a project to start prematurely and fail as a result. Discussing this possibility with those who are predisposed to mistrust agile demonstrates an appreciation for the motivations of plan-driven project managers. Maintaining the crucial balance between aiming and firing is why we ultimately tailor agile approaches to individual circumstances—why we strive to be as agile as possible.
Conclusion
The next time you are in a situation where you sense uneasiness towards agile or Scrum, consider using these stories as arguments for an agile approach. Introduce Ready, Fire, Aim as a common argument against agile, then share these stories to help illustrate your understanding of their concerns. Though simple and anecdotal, they may cause a skeptic to reconsider any bias against agile software development approaches like Scrum.