

Deviations from Optimal Planning
In previous articles, we spoke about Perfect Planning and how it should look.
Let’s summarize it once again for both practice and because now we are starting a series of posts about deviations from Optimal Planning.
Optimal Planning is a meeting for which the Backlog is sorted according to priority. Developers take one User Story after another from top to bottom without needing to refine them further. Since everything is clear, delivering the User Stories will help deliver the Sprint Goal.
The preconditions for Optimal Planning are for the Product Owner to order the Backlog according to the priorities for the next three months and to refine the User Stories for the next two Sprints to be in a ready state.
Three months is reasonable scope because you can imagine and plan the development steps that you will have to take, you can see the development direction, management knows what to expect from your team and Stakeholders can see your priorities. You can prepare the Backlog for longer periods than this, but it is highly likely that you will have to change the Backlog based on development progress, changes in client requirements, changes in the market, etc. You know how it is—nothing ever goes according to plan.
The reason for two Sprints is that while you never know how many User Stories will end up in the Sprint that is currently being planned, it probably won’t be more than twice the amount feasible based on the team’s current velocity.
If the Backlog is taken care of in advance, the Planning should not take much time. From my personal experience, it should not take longer than one hour. Just put the pieces into place and each Developer can decide what to take into the Sprint from the sorted Backlog based on their capacity. And that will help deliver the Sprint Goal.
But as I said, life is not always perfect, and neither is the Planning. There are some deviations from the perfect or Optimal Planning.
These deviations, as my colleague Jan Pisarovský defines them, are:
- Backlog is not ready
- Capacity is forced
- Hungry, hungry Developers
- Tasks are not created
- No goal, no clue
We will devote additional posts to diving into each deviation in more detail. Excited? Yes? Excellent. See you next time.