At Fishtank, many of our Sitecore development projects are long-running typically lasting 3-6 months. In order to effectively manage these projects and ensure they stay on time and on budget we use planning techniques. One of these planning techniques is known as Sprint Planning.
Sprint Planning is an essential part of the development cycle in Agile project management. The planning session is a collaborative meeting where the team defines the work to be done in the upcoming sprint. During sprint planning, the team determines which user stories and tasks will be included in the sprint backlog, estimates their effort, and creates a plan for achieving the sprint goal.
The meeting is typically run by a Project Manager closely followed by the Product Owner who should be prepared to discuss the most important backlog items with the development team.
Why Do We Need Sprint Planning
Sprint planning is crucial for several reasons. Firstly, it helps the team align their understanding of the project goals and prioritize the most important tasks for the upcoming sprint. Additionally, it allows the team to estimate the effort required for each task, facilitating better resource allocation and time management. Lastly, sprint planning enables the team to create a clear roadmap and set achievable sprint goals, leading to increased productivity and successful project delivery.
The Objective for the Planning Sessions Should Be To:
- Agree as a team on the objective of the next sprint
- Review the backlog and agree on the next most important stories to work on
- Review the previous sprint and check if any user stories need to get rolled over to the new sprint
- Break down the user stories into tasks
- Estimate all of the tasks
- Assign all of the tasks to a resource
- Discuss team capacity
- Discuss the length of the sprint (typically 2-3 weeks)
People Involved:
- Project Manager
- Tech Lead
- Developers
- Solution Architect
- Product Owner
Capacity Planning
Capacity planning must happen as part of every sprint planning session. Every person is given a daily capacity for the length of the sprint. At the beginning of a Sprint Planning meeting, capacity for the team should be determined in order to plan out some realistic goals for the sprint phase. The idea is to complete as many top prioritized tasks as there is capacity to do.
Estimation of Tasks
During a Sprint planning meeting, developers will discuss and agree on the amount of time it will likely to complete a certain story. Estimates for QA, front end, and back end are typically split out separately. Once this is completed, the ‘state’ of the story should be updated to ‘Estimated’.
Once the estimation of tasks and capacity planning is completed the sprint is ready to start work on. This process of planning & prioritization is repeated for every sprint until the last sprint of the project.
What Will a Successful Sprint Session Yield?
A successful sprint session will yield a clear and shared understanding of the sprint goal and the tasks to be completed in the upcoming sprint. It will also result in a well-defined sprint backlog, consisting of user stories and other product backlog items that the team has committed to working on. This clarity and alignment among team members are essential for a productive and successful sprint.
A Successful Meeting Will Yield Three Important Strategic Items:
- The sprint goal: A short written summary of what the team plans to accomplish in the next upcoming sprint.
- The sprint backlog: The list of full stories and other product backlog items the team has agreed to work on in the next upcoming sprint.
- Team capacity: The number of hours the developers can take on and dedicate to the sprint
How Long Should a Sprint Planning Session Take?
The duration of a sprint planning session can vary depending on the length of the sprint. As a general guideline, a sprint planning session should typically take one to two hours for every week of the sprint. For example, if the sprint is three weeks long, the planning session may be between 1-3 hours. It's important to ensure that the session is time-boxed to keep the team focused and maintain productivity.
Conclusion
In our experience here at Fishtank Sprint Planning has been a vital cog in the development cycle machine. It has contributed to the success of countless projects while helping Product Owners and Project Managers to keep on track with scope and timeline whilst also providing clients with insight on every phase of completed work. The sessions allow clear focus and direction for the next few weeks of a project and allow the development team to have a clear understanding of what is expected of them.