Scaling Agile Processes: Five Levels of Planning

[article]
Summary:
Experience gathered during large-scale implementations of agile concepts in software development projects teaches us that agile methods, like Scrum, do not scale to program, product and organization levels without change. However, various planning frameworks have, in fact, been used successfully in large-scale agile projects, which can broadly be defined as projects that involve over 50 people and take months or years to complete.

Experience gathered during large-scale implementations of agile concepts in software development projects teaches us that agile methods, like Scrum, do not scale to program, product and organization levels without change. However, various planning frameworks have, in fact, been used successfully in large-scale agile projects, which can broadly be defined as projects that involve over 50 people and take months or years to complete.

One such framework relies on five levels to address the fundamental planning principles of priorities, estimates, and commitments. The five levels can be defined as: product vision, product roadmap, release plan, sprint plan, and daily commitment.

In agile, loading a team with work is done through iteration planning. For very small projects, it’s often sufficient to plan only a single iteration at a time. But when iteration planning is applied to projects that run for more than a few iterations or involve multiple teams, the view of longer-term implications can be lost entirely.

In plan-driven and waterfall methodologies, this problem is overcome through a large up front design, aiming to predict accurately how much work is involved in each project activity. This leads to a large investment early in the project, when it is by no means certain that the designed functionality is actually desired by the product owner. Any agile approach to large-scale development has to avoid the introduction of the big design up front. One solution is to add planning levels to incorporate a view of ‘the whole.'

Agile planning activities for large-scale development efforts should rely on five levels:

    • Product Vision
    • Product Roadmap
    • Release Plan
    • Iteration Plan
    • Daily Commitment

The certainty of undertaking activities addressed in each of the five levels increases as the planning horizon reduces from a year, to a quarter, and then to two weeks (see Figure 1). Therefore, the amount of detail addressed, the number of people involved, and the frequency of planning and design activities can increase without running the risk of spending money on features that may not be built or may be built differently.

Description: hs0507-1 ©

Figure 1: Agile planning activities for large-scale development efforts

Level 1 - Product Visioning

The broadest picture that a person can paint of the future is the product vision. In this vision, the product owner explains what an organization or product should look like after the project finishes. She indicates what parts of the system need to change (establishing priority) and what efforts can be used to achieve this goal (establishing estimates and commitments).

How To: Lead a Product Visioning Exercise
The product vision describes a desired state that is six months or more in the future. Further planning activities will detail the vision, and may even divert from the vision because the future will bring us a changed perspective on the market, the product, and the required efforts to make the vision reality.
There are several possible structures for a visioning exercise, two of which are to create an elevator statement [1] or a product box. [2] The principle of both exercises is to create a statement that describes the future in terms of desired product features, target customers, and key differentiators from previous or competitive products. Anyone who has gone through Certified Scrum Master training is likely familiar with the product visioning exercise.

Level 2 - Product Roadmap
The era of large-scale projects that deliver results in years is behind us. Customers demand more frequent changes, and time-to-market is measured in weeks or months. The higher frequency and smaller timeframes force a product owner into thinking in steps—into thinking of a road towards the final product. Just like a journey

Pages

About the author

TechWell Contributor's picture TechWell Contributor

The opinions and positions expressed within these guest posts are those of the author alone and do not represent those of the TechWell Community Sites. Guest authors represent that they have the right to distribute this content and that such content is not violating the legal rights of others. If you would like to contribute content to a TechWell Community Site, email editors@techwell.com.

AgileConnection is one of the growing communities of the TechWell network.

Featuring fresh, insightful stories, TechWell.com is the place to go for what is happening in software development and delivery.  Join the conversation now!