9 Jun 2023
In the ideation phase, ideas for new products are generated and evaluated. Next, the ideas are refined and turned into tangible concepts that are tested with users for validation. Based on the outcome of the user testing, the shortlisted ideas are then picked for product development stages.
Before initiating development, product leaders work together to define the vision and strategy for the product. The vision communicates the long-term purpose and value the product will offer to its customers, while the product strategy gives a high-level plan for how to achieve that vision. Together, they help align the product development team around a common goal and provide a clear direction for product development efforts.
From there onwards, product managers play a critical role in translating the product vision and strategy into a product roadmap, which is a visual tool used to communicate how the product will progress over time. When done right, product managers use customer and market insights and collaborate with other cross-functional teams to generate a product roadmap that can span a period from 6 months to up to a few years.
The engineering teams take the product roadmap as input to generate a backlog of tasks for the development cycle. The cycle usually starts with designing visual interfaces for the product and then the developers help bring those designs into reality. During the testing phase, the quality assurance team tests the developed product and reports any identified defects to ensure that the product meets the desired quality standards. Once all the defects have been fixed, the DevOps team deploys the code on the production environment and makes it available for the end users. Finally, in the post-launch evaluation phase, the product is evaluated to identify areas for improvement.
Abraham Lincoln once said, "Give me six hours to chop down a tree, and I will spend the first four sharpening the axe."
Release planning and sprint planning are crucial activities that are part of the Agile Planning Onion (see figure below). By peeling through the different layers of the onion one by one, product teams can streamline their development efforts and maximize the value they deliver, meeting the needs of the business and the end-users.
Release planning involves breaking down the product roadmap into smaller, manageable portions that can be released to users. This breakdown enables product teams to identify important milestones and deliver value incrementally to obtain early feedback during the development process.
A release plan is a strategic document that outlines the schedule and scope of product releases over a specific timeframe. The primary purpose of a release plan is to provide a clear and structured approach to product development, ensuring that releases align with the organization's objectives and customer needs.
Once you have achieved that, you can create a comprehensive release plan that outlines the release objectives, scope, risks & dependencies, go-to-market plan, and timelines & resources, facilitating a structured and efficient product development process.
Release Objective / Goal: Based on the product vision and strategy, determine the specific objectives for each release. In order to keep the releases independent and easily manageable, it is best to have a single objective per release, but similar objectives can also be grouped together for a single release. In addition to guiding the team to stay focused, the release objectives can also be linked to Release KPIs evaluating the success and impact of the release (such as user adoption rate, customer satisfaction scores, revenue generated, etc), guiding future iterations and enhancement
Release Items: In light of the release objective, identify the features and functionalities that will be included in each release and prioritize them based on factors such as customer value, business impact, and technical dependencies.
In addition to this, product teams are also expected to regularly cater to customer support requests, fix bugs, handle technical debt, and incorporate security recommendations. While these items might not be part of the regular roadmap, it is mandatory to include all these details in the release plan.
In order to ensure that the release meets the expected standards of quality and reliability, define the required quality assurance activities that will be performed during each release.
Risks & Dependencies: By identifying potential risks and dependencies upfront, product managers can develop contingency plans to avoid bottlenecks and streamline the development process.
Go-to-Market plan: Having a detailed go-to-market plan helps product teams maximize the impact and adoption of the new release. It can entail:
Defining a release deployment strategy and determining when and how the product will be made available to users (i.e. Phased Deployment).
Establishing clear release communication and preparing marketing material to inform customers and internal teams about the release. This can be achieved through release notes, emails, blog posts, website copy updates, social media announcements, and webinars.
Preparation of help material, such as FAQs, user guides, and tutorials, to help users navigate and make the most of the new release.
Establishing a post-release action plan to measure release performance, collect feedback and respond to high-priority issues arising because of the release.
Resources & Timelines: After consideration of factors like resource availability, development velocity, and market demands, resources and timelines can then be assigned to the individual releases and included as part of the release plan.
Once the releases are defined, sprint planning comes into play.
Sprint planning takes the releases identified during the release planning phase and further breaks them down into smaller, achievable tasks that can be completed within a short period. Typically, sprints range from one to four weeks, but product teams have the flexibility to determine the appropriate sprint length based on the nature of the product, team capacity, and stakeholder expectations.
Sprint Goal: Define the overarching objective or goal for the sprint. Just like the Release Goal, the Sprint Goal helps provide a clear direction for the team during the sprint.
Sprint Tasks: Review the release backlog items and select the ones to be included in the sprint. Most often, the items with the highest dependency from other items are prioritized in earlier sprints to remove blockades down the road. The backlog items are broken down into smaller, actionable tasks.
Task Estimation: The development team collaborates to estimate the tasks and selects a prioritized list of tasks to work on during the sprint as per their capacity.
Task Assignment: The tasks are then assigned to individual team members based on their skills and expertise.
Definition of Done: For each of the tasks, an agreement is established within a development team regarding the criteria that must be met for a task to be considered complete.
Once the release and sprint plans have been created, establish a communication plan to keep stakeholders informed about the progress. Many teams often use a T-0 release checklist to keep track of all the activities, including sign-offs, meetings, demos etc.
Throughout the product development process, keeping a close eye on the tasks and maintaining regular communication with the development team is vital. Engaging in daily stand-up meetings not only fosters collaboration but also helps identify and overcome hurdles that could impact both the sprint and the release plan itself.
As each sprint concludes, make sure to host a sprint review session, showcasing the newly developed functionalities to stakeholders. Additionally, seize the opportunity to hold a retrospective meeting, where accomplishments are celebrated, and the lessons learned become the driving force for future sprints and release planning endeavors.
With each passing sprint, it is equally important to regularly review the release plan and make adjustments as necessary based on changing priorities, internal/customer feedback or the insights from the development sprints. Be open to iterating and refining the release plan to ensure it remains aligned with the evolving needs of the business and end-users.
By integrating release planning and sprint planning into the product's life cycle, product teams can deliver value to end-users incrementally, gather feedback early in the development process, and ensure that development efforts align with business objectives.
Finally, I will leave you with this quote from Dwight D. Eisenhower: "In preparing for battle, I have always found that plans are useless, but planning is indispensable."
21 Sep 2023Your Guide to Backlog: Product vs. Sprint Backlog