One of the most valuable and often overlooked tools in the ScrumMaster’s toolbox is the Agile release plan. The Agile release plan is essentially a continuously updated flight plan that estimates the priority order of how work will be delivered within a release. As we continue to learn and as priorities shift, so too does our release plan.
Advantages of the Agile release plan
I find it astonishing how such a simple concept, and the power that it can yield, is so often underused or even ignored altogether. I see three primary advantages to a continuously updated release plan:
It creates a general schedule for the release.
First, an effective Agile release plan provides the general schedule of functionality for the release. It is typically a cooperative effort between the product owner and ScrumMaster. We start by creating logical pieces of functionality and then plotting them by sprints or dates. Naturally, we forecast the most when the plan is created, and less as work is completed as we move chronologically toward the release. The Agile release plan simultaneously communicates project progress (what has been completed to date), the current release status, and the estimated schedule for the remaining work.
It validates ROI tests and sanity checks.
The ROI test tells us whether the initiative will deliver sufficient benefits to warrant undertaking it. These benefits typically represent increased client revenue, cost savings, or required functionality. After the ROI has been validated, the sanity check is used to determine whether what had previously been planned and estimated is truly feasible for delivery as part of the release. If either check fails, the initiative can be sent back to the originating sponsor for rework, or it can be canceled entirely.
It streamlines the organization.
Finally, the third advantage is where the real magic happens, because we can use the Agile release plan to help streamline the entire organization.
- Because many organizations work by features or multiple projects per team, the release plan can assist stakeholders and management with the project intake process. They assist by pre-prioritizing the order of work awaiting team assignment, which reduces lag and ultimately maximizes team efficiency.
- The release plan prevents additional projects from being dropped too rapidly on teams that already have sufficient remaining work with existing priorities. Yes, in Agile we welcome change, but not at the expense of inundating and neutralizing our teams with constantly shifting priorities. This is especially true if there are multiple product owners, and we aren’t receiving effective priority guidance.
- The release plan communicates team velocity. All project stakeholders become familiar with how the remaining work for a given release is progressing, reducing questions about how long specific functionality will take to complete.
- Stakeholders gain the ability to manage their team interactions based on where their specific focus may be. It is especially helpful if we define which stories are included within those logical functional pieces.
This concept may be new to some, as we typically do not see forecasting at the story level as part of Agile/Scrum, but I believe the benefits far outweigh the risks. The fear generally results from worries about the forecast being misinterpreted as a commitment, which seems like legacy thinking from past methods, but it can easily be addressed as a learning opportunity. Because we collect this information, calculate a powerful velocity rate, and have the instincts of the ScrumMaster to estimate performance, why not empower our product owners, teams, stakeholders, and the entire organization with the information that we can provide?
As you can see, the benefits of an effective Agile release pan are many. If you are not using one currently, I suggest you consider unleashing this powerful tool to help organize your releases and realize some of the benefits discussed here.