The discussion of "why do projects fail" is many times based on the premise that since projects live in a chaotic world, there is no motivation to do good project management practices in this world. One of the project management practices abandoned by the agilest is Planning.
The first impulse to to say "see planning did not help," or "all the planning we do does give us much certainty that we will in fact be on time and on budget." First there is a difference between good planning and bad planning, just like the difference between good code and bad good, good requirements and bad requirements. When we encounter a"bad" something it does not mean the process that produced the thing is "bad," just that the execution of that process may have been bad.
But first separating planning, scheduling and execution is important.
- Planning - is a strategy
- Schedule - is the steps needed to implement the strategy
- Execution - is performing those steps
All three are needed.
Planning
What is the strategy for completing this project? How will we recognize we're making progress against this strategy? What are the units of measure for this progress? One successful approach is to measure the increasing maturity of the product or service produced by the project. By maturity it means the increasing fidelity results:
- Moving from a sketch to a set of final drawings
- Increasing capabilities of a system from a single function to a full suite of capabilities
- Assessment of the products against a standard which is agreed on before the specific effort starts
All of these approach asks and answers "what does done look like." The "done" in all cases is for the appropriate point in the project. No need for the agilest to get all spun up on defined the end. Just define done for the next Rolling Wave, iteration, or phase.
But in the end Someone needs to know what the end looks like. This is another topic. But for now just define "done" in the plan for each step along the way.
Scheduling
What are the individual, dependent and sequential steps needed to deliver these capabilities? The schedule speaks to these. The schedule has durations, dependencies, timing, dates, resources and other things related with the Plan. The idea that these steps "emerge" is fanciful in many situations.
Getting to the top of the mountain takes some planning and some sequencing of the steps needed to reach to summit. Along the way there will be changes in the plan because of immediate issues. A blocked trail, a flooded stream, an unfriendly animal. But these emerging risks my or may not change the Plan. There may need to be alternatives. Alternative routes.
Execution
While walking down the trail, we're "executing" the plan, in the sequence described by the schedule. The schedule may say:
- Get to Lake Odessa by 2:00PM in order to summit on Pawnee Ridge before the thunder storms roll in.
- Once on Pawnee Pass, return to the snow bridge before the sun softens the path
These steps are planned, they are scheduled and they are executed according to plan. This is called "project management," in this case the project is to summit Pawnee Pass.