Practice: Two-Level Project Planning
The Two-Level Project Planning practice embodies the concept of high-level planning for the complete project scope (macro-) and low-level (micro-) planning for the immediate and next increments or iterations.

Why adopt this practice?

Two-Level Project Planning improves the accuracy of project planning, the ability to predict resource usage, and the ability to meet established delivery dates. In adopting this practice, the project team can better manage scarce resources and focus on delivering scope with higher quality and value to the organization.

In some development approaches, project managers would plan the whole project at project initiation, and then execute the plan, with little or no modifications to the original project plan unless there were significant scope changes or risks that derailed the project. These approaches depend a lot on the project managers' personal knowledge of the scope, and the resources available to deliver the scope. In many cases, these plans would become inaccurate and useless after the first one or two phases. At that point, many project managers would simply manage the milestones and abandon the detailed tasks.

Even seasoned project managers can benefit from Two-Level Project Planning. As more and more software developers move to iterative methods for delivering software, the need to perform just-in-time project planning is critical. Planning for the next few weeks is always more accurate than planning for the next few months. The goal of this practice is to balance the high-level and low-level planning such that detailed (low-level) planning occurs just-in-time to support the successful delivery of the software products.


Project planning is very inaccurate when you attempt to plan beyond the initial phases of work for any project. The Two-Level Project Planning practice ensures that your planning efforts are iterative in nature, aligned with the software delivery to ensure a more accurate estimate of work efforts.

In many cases, the planning horizon for a software project is a hard concept to understand. Software development project managers tend to want to plan the entire project, and then let the team work the plan, resisting changes to the plan as it executes. The Two-Level Project Planning practice emphasizes the need to plan the next iteration in detail, while planning the whole project at a high level. This practice also encourages the project manager to feel comfortable with re-planning as needed to ensure accuracy in delivery dates and costs based on events that impact the project.

How to read this practice

The best way to read this practice is first to get familiar with its overall structure: what it is in it and how it is organized. 

Start with the available work products:

Also, check the work product templates and reports. See:

Finally, get more details on how to perform project planning and staff a project by looking at:

See more information on How to Adopt the Two-Level Project Planning Practice.

Additional Information

Additional Resources

For more information on the Two-Level Project Planning approach, see the following:

  • Kroll, P. and Kruchten, P. The Rational Unified Process Made Easy, Addison Wesley, 2003. Chapter 12: Planning an Iterative Project.