“Plans are nothing; planning is everything.“
Dwight D. Eisenhower (1890-1969)
Imagine a pilot flying a a-330 from Copenhagen to Japan. The plan is to land at the Narita International airport. Once airborne though, unexpected winds, other aircraft traffic, mid-ocean storms, even solar flare activity affect and alter the airplane’s course. Unmanaged, the pilot would just as likely land the plane in Seoul rather than in Tokyo. The flight plan sets an initial course and a final destination, but the process of planning ensures that the pilot takes the appropriate corrective action to get the airplane where it needs to go.
Now, just imagine what the plan is for your own project. It is telling you where you are planning of going with your project, and it is not much different from the illustration above; it doesn’t consider any of the unexpected things that will pop up and affect you and your plan. While working on the project new and/or changed requirements will occur, your senior developer lead will leave the company, the sales and marketing department promised the customers functionality that simply isn’t in the scope, and now even the market has changed its mind and is requiring your product to come in orange (instead green). Your project plan sets the initial course and final result, but it is the process of planning that ensures your project to take appropriate corrective action to get the product that the customer really wants. The bottom line here is that the plan itself is worthless, while the activity of planning is everything!
Hence, planning can help minimizing the risks, planning can help you adopt to changes, planning can help avoid mistakes, planning can help visualize the work ahead, planning can bring people together who will need to know each other during the project; and above all it sets the stage for the coming “iteration of work”. However it’s very important to acknowledge that planning is a continuous activity, while a plan is a snapshot of a particular moment in time and thereby valid for precisely that time with those precise circumstances. Planning is an iterative process while the plan might be outdated the moment it is done. The further into the project, the more information you get and the more accurate the plans will be, i.e. it’s not the plan, it’s the planning that is of value.
“According as circumstances are favorable, one should modify one’s plans.”
Sun Tzu (400–320 BC) on the Art of War
One of the reason for the human survival and domination on this planet is our extraordinary ability to adapt to change, which (unfortunately) is an ability we too often try to fight instead of adopt. What we can predict is changes in the near future, however for the rest we simply have to inspect and adapt at regular intervals. Sticking to you plan and not adapting along the way could mean that any change, even a small one could invalidate your whole project plan. A goal however is more stable and can survive even major changes. That is why it’s more important to steer against clear goals (and maybe even a vision), rather than a plan, while responding to changes on the way to achieve the goals.
The Horizon of Predictability
“The Horizon of Predictability” is the distance into the future that you and your team can be reasonably sure that plans will be stable. Trying to go any further into the future plans and they start to get uncertain, and going even further into the future becomes totally unpredictable! (See the illustration below)
Based on personal experience, and the agile community I argue that the horizon of predictability for most teams are between 2-4 weeks depending on their knowledge and experience of the product/solution domain they are working within. As you can see from the illustration below uncertainty grows (and focus diminishes) the longer into the future you going..
In summary: The plan is nothing, it’s all the planning that is of value! Our biggest problem today is that we keep focusing too much on having a plan and the plan itself, instead of focusing more upon the planning process. The planning process (especially iterative) is a way to constantly re-consider and take corrective action to meet your project’s goal(s). Would the passenger of the flight to Narita airport appreciate the pilot following the plan (not considering unexpected winds, other aircraft traffic, mid-ocean storms, even solar flare activity affect and alter the airplane’s course) and ending up in Seoul, or would they appreciate the re-considerations and possible minutes of delay due to re-planning but bringing them safely to Narita airport?