Why Release Planning Won’t Happen Overnight

There are nuances to leveraging the practices and principles of Agile, more specifically Scrum, effectively. One of the key practices of the framework is Release Planning. In fact, it is related to what I believe is one of the most common frustrations teams encounter: Being able to accurately predict what can be delivered when.

To explore this topic, I will cover 4 key areas of interest and ultimately end with a summary of why you simply cannot be effective release planners overnight.

  1. Why the Word “Predict”
  2. The Importance of Setting Expectations Early & Often
  3. Inputs to Release Planning
  4. Keys to Accurate Release Planning

Why “Predict”

It is important to remember that Release Planning is just that, a plan. A Release Plan does not convey a commitment from a team to deliver some set of functionality. That is why I say a common frustration is a team’s ability to predict what can be delivered when. Any sort of planning that specifies dates about software development is inherently difficult. Regardless of methodology or philosophy related to the art of software development, Release Planning is much more like predicting the weather than it is determining how much can come off of a manufacturing line.

Setting Expectations Early & Often

There are three expectations that need to be set early on by an Agile team in relation to their release.

  • It is a plan, not a commitment
  • Release Plans will evolve based on prioritization of the backlog and completion of work each iteration
  • It wil be updated at the completion of each iteration to show progress and variance

Ensuring stakeholders know that the Release Plan is only a plan and having the discipline to update it each iteration will build trust with stakeholders over time as you show the team’s ability to accurately predict what can be done each iteration (or each release) increases over time. Additionally, the discipline of updating the Release Plan each sprint will force collaboration with Product Owners to validate priority of items in the backlog as well as always ensure stakeholders are informed with the best most current model showcasing projected features for delivery within the release.

Inputs to Release Planning

Release Planning requires three inputs at a minimum.

  • A prioritized backlog (enough stories to fill each iteration for the release)
  • A sized backlog (enough so that the sum of the sized stories in the backlog ≥ sum of target velocities for each iteration of the release)
  • Target velocity for each iteration of the release

WIthout these three elements a team cannot begin to allocate stories to each sprint of the release. Additional inputs such as key dependencies and milestones as well as active collaboration with the Product Owner will result in more effective Release Planning sessions.

Achieving Accuracy with the Release Plan

A Release Plan will only be as accurate as the inputs provided. Early on, team’s simply do not have the experience or knowledge needed to do accurate relative sizing (at the beginning they are selecting random baseline stories to begin triangulating the size of stories). Additionally, they have not yet been working together so are making a SWAG at what the velocity will be. Only after 3-5 iterations will a team begin to derive true velocity, and even then the velocity may be somewhat false if a team’s stories within the backlog are not property sized. There is a bit of a chicken and egg thing going on with it really.

  • Release Plans provide team’s focus with what stories to groom
  • Better Grooming results in…
    • More accurate story sizing
    • More accurate task planning
  • Together which result in a more true velocity for the team
  • A true velocity with well sized stories yields an accurate Release Plan

And it is that chicken and egg dynamic with the disciplines of Story Grooming, Story Sizing, Sprint Planning, and Release Planning that bring us to the real point here. No Agile team can start out with an accurate Release Plan. It will take at least 3-6 iterations to get enough meaningful experience and data from which to craft an accurate plan, but only with the discipline to create a plan from the beginning can a team gain focus and achieve the goal of accurately predicting what will be included in any given release.