A well-designed project and stage plan was once the pride of any successful project manager. In the post-waterfall era of agile everything, the humble project and stage plan has got itself a bit of a bad reputation for being excessive. However, effective project management still relies on efficacious planning. Without a plan there is no control, regardless of the project management methodology or product delivery framework used.
For continued business justification to exist, its vitally important that plans are kept in line with the business case at all times. Managing Successful Projects with PRINCE2® tells us this information should describe how, when and by whom a specific target or set of targets is to be achieved. It is the detailed analysis of how identified targets, milestones, deliverables and products will be delivered to timescales, costs, quality and benefits.
With that in mind, having an end date is one thing and how accurate and realistic it is can be something quite different. Hence why planning to the horizon or to what you can see is so important. Planning should ideally only be done to a level of detail that is manageable and foreseeable. Managing Successful Projects with PRINCE2 advises dividing the project into a number of manageable management stages enabling the extent of senior management control over projects to be varied according to the business priority, risk and complexity involved. Shorter stages offer more control, while longer stages reduce the burden on senior management.
Now back to that misconception that project planning is superfluous in project management, particularly when adopting a product delivery framework. Let’s revisit the Agile manifesto, it begins by stating that "through this work we have come to value ... responding to change over following a plan”. That is, while there is value in the items on the right, we value the items on the left more. However, this should not be interpreted as being at the exclusion of the opposing value. What’s often misunderstood is that the relationship between each opposing Agile value is one of balance, dependant upon the maturity level of the delivery team and, to a greater extent, the supporting organization. This indelibly includes the commitment of senior management and the functional offices that supports successful agile adoption across the organization.
The five levels of Agile planning
In fact, Agile places significant emphasis on planning. At the highest level, the five levels of planning are:
- Product vision – is the overarching goal the delivery team are aiming for, the reason for creating the product. It provides a continued purpose, acts as the product's true north, provides motivation and facilitates effective collaboration.
- Product roadmap – is used for high-level planning of strategic initiatives and is an important communication tool. It provides a long-term view of where a product is going and how the delivery team is going to get there.
- Release planning – is a very high-level plan for multiple iterations. It shows which features will be implemented and when they are to be completed.
- Iteration planning – is for the delivery team to plan and agree on the user stories or backlog items they are confident they can complete during the iteration and identify the detailed tasks and tests for delivery and acceptance.
- Daily stand-up – contrary to popular belief is used by the delivery team to actually plan for the day and to identify any blockers.
In Agile, each level of planning is an ongoing, time-boxed, empirical activity where plans are developed to the horizon. Like all other project management methodologies, the aim here is to do the right amount of planning at the right time. Release or iteration planning begins as a collaborative effort involving the iteration manager, who facilitates the meeting. A product owner, who clarifies the details of the product backlog items and their respective acceptance criteria, and the delivery team, who defines the work and effort necessary to meet the release or iteration commitment.
At the beginning of each iteration the product owner agrees on which features the delivery team think they can complete based on story points and prior experience. These features are broken down into user stories, which are prioritized in the product backlog. By working incrementally and in iterations, the delivery team is able to deliver a minimum viable product (the maximum amount of validated learning with the least amount of effort) to the customer and better able to respond to changes through frequent feedback loops.
In summation, planning is essential, regardless of project type or size. It is not an inconsequential exercise and plays an integral part in the success of the project. Project planning is important because it ensures proper expectations are set around what can be delivered, by when, and for how much. Every project is going to be different as the objectives will be different. Most of the work of planning is thinking about what you need to do to get everything done and putting the structure in place to make that happen.
No doubt planning is invaluable in itself because plans help us recognize when things have changed; it helps us understand the implications of change, how we need to adjust and the likely cost. The important thing is that, as we make plans, we understand that the plan may have to change depending on the velocity of the delivery team.