The scrum framework consists of five events. Each event provides the scrum team transparency into either the product or their processes to enable regular inspection and immediate adaptation.
We have also found several common agile practices that complement and increase success of projects under a scrum model. Each of them, combined with the scrum framework are outlined in our Roadmap to Value:
Stage 1 – Vision. The first two stages of the Roadmap to Value are not part of scrum, but are commonly and successfully used to establish direction for a project. By establishing the product vision, the scrum team clearly defines the end goal of the product aligned with the company strategy–the “what” and the “why” of the product. It should be concise like an elevator pitch, so it is easy to refer back to at any stage of development to make sure tactically a scrum team is aligning with the overall strategy. Establishing vision is the first part of project planning.
Stage 2 – Product roadmap. The product vision outlines where you want to go with the product. A product roadmap outlines how you’re going to get there. It is a holistic view of product functionality required to accomplish the vision.
These first two stages are vital to ensure a project under a scrum model is strategically stable. The following stages provide for tactical flexibility to empirically deliver the highest value possible to the customer.
Stage 3 – Release planning: Although not a scrum event, release planning is implicitly part of the process, when the scrum team plans the next set of product features to release and identifies a product launch date around which the team can mobilize. Each release goal establishes the mid-term boundary around specific functionality that will be released to customers to use in the real world. Scrum teams plan one release at a time, because the feedback from customers at each release may fundamentally impact what is planned for each subsequent release. Each release goal aligns with the product vision.
Sprint. Although not a specific stage of the Roadmap to Value, the sprint is the container for each of the other scrum events. Scrum teams create potentially shippable functionality in short cycles, or iterations of development called sprints. Sprints are no longer than a month, but typically last between one and two weeks, and in some cases as short as one day. Consistent sprint length is important under an empirical model to reduce variance so a scrum team can confidently extrapolate what they can do each sprint based on what they have accomplished in previous sprints. Sprints give scrum teams the opportunity to make adjustments for continuous improvement immediately, rather than at the end of the project. Instead of course correcting by months, scrum teams course correct by weeks, or even days.
Stage 4 – Sprint planning: Each sprint begins with the scrum team establishing a sprint goal aligned with the release goal. They also identify the requirements from the product backlog that support the sprint goal and plan the individual tasks it will take to complete each requirement to deliver potentially shippable functionality by the end of the sprint.
Stage 5 – Daily scrum: Each day of the sprint, ideally at the same time each day, the scrum team members coordinate and plan the day’s work to be done in less than 15 minutes. Based on what was accomplished the previous day, the development team establishes who will do what during the next day to move closer to accomplishing the sprint goal. Unlike a status reporting meeting, the daily scrum is used to empirically plan, adjust and remove roadblocks.
Stage 6 – Sprint review: At the end of every sprint, the scrum team meets together with the project stakeholders to inspect and adapt the product by reviewing the sprint goal and demonstrating the working product functionality completed during the sprint. The sprint review is the opportunity for the product owner to gather feedback from stakeholders to help determine if the scrum team is delivering the desired value to the customer. The feedback received is added to the product backlog and prioritized by the product owner for consideration in future sprints.
Stage 7 – Sprint retrospective: The scrum team inspects their processes at the end of every sprint during the sprint retrospective. By exploring what went well and what did not go well, the scrum team gathers data and insights of the previous sprint to establish an action plan for improvement, and then executes the plan during an upcoming sprint.