Release Planning for Developers
What is Release Planning?
Release planning refers to the creation of a release roadmap. This roadmap consists of a list of requirements, and details of when these requirements will tentatively be finished and released to stakeholders. The release plan is far from definitive. Priorities change, stakeholders may request new features that are a higher priority than existing items in the product backlog, and events may occur that results in the elevation of a lower priority item to a high priority requirement. However, the release plan serves as a tentative and relative list of when features should be added to the product.
What Determines the Release Guideline?
The release plan spans the entire project, and there are several contributors to it. One of the most important contributors in creating the release plan is the developers. On a scrum team, developers possess the unique knowledge and qualifications to complete the project. This knowledge equips them to determine the number of key components of the release plan.
Delivering Value to Stakeholders
The main aim of the release plan is within the structuring of the delivery of value to the stakeholders. A scrum team seeks to deliver the most valuable features to the stakeholders first, and continue to develop the highest value requirements in every subsequent sprint. The release plan allows the scrum team to map out where the value comes from, and to schedule when it should be finished.
The Product Owner is in individual who determines how much value each of the requirements has, and sets the priority of the tasks in the release plan. The Development Team have a better understanding of how large and complex each of these requirements are, and can estimate the required effort for the requirements. Both of these pieces of information are important for scheduling items on the release plan.
For each requirement, the value and time required must be considered to maximize value for stakeholders. Given two user stories of the same value, the easier story will take less time to complete, and allows more time to finish additional features in the same sprint. Therefore, equal value with easier development will come earlier in the release plan. On the other hand, between two requests of the same difficulty or time, the more valuable requirement should be included first. The more valuable requirement gives more total value to the stakeholders within the same time frame. Only developers are properly equipped to decide the difficulty and size of each task.
Project Division of Release
Another important part of the release plan is how the releases will be divided across the life of the project. Any requirement can be decomposed into a stand-alone user story that can function independently by itself. It often makes sense to have user stories grouped together by feature where related user stories can be batched and addressed more efficiently. Full features will often complement each other and give more value when completed simultaneously.
Developers are the most knowledgeable roles on how features will interact with the rest of the product. They intuitively know which features are likely to share common functionality enabling them to group requirement together for the most efficient delivery of value to the stakeholders.
By grouping the requests together, stakeholders also receive valuable features earlier in the project.
Our Favourite Agile Books
We found these books great for finding out more information on Agile Scrum: