Written by Richie Harris
There are sometimes challenges around explaining what “Agile Development” means. The word “Agile” can lead people to think that it means sloppy or without planning. The biggest piece of practicing agile software development that belies that notion is sprint planning. Regular sprint planning meetings lend structure to an agile process. Sprint planning meetings give the product owner and the team a chance to break up work in a reliable way.
A sprint planning session is an opportunity for the product owner and project manager to regularly meet with the team. In running a sprint planning meeting a product owner can inform the team’s plans for what they work on next. The product owner can provide feedback and direction in terms of priorities and how to weigh value against effort. A product owner can also provide details in the form of user stories for a particular feature.
You cannot improve what you cannot measure. A core tool in the belt of a scrum master is the data that is gathered from being able to look at a team’s velocity. When the team members meet with the project manager and the product owner the team commits to completing product backlog items. That commitment is reflected in a sprint backlog. This allows the development team and product owner to review each previous sprint as part of planning the upcoming sprint. This makes it possible to track how a scrum team is performing and help in planning next steps.
The ability to see the future is something that everyone would love to have. In a sprint planning meeting, you can’t see the future, but you can prepare for it. The intent of sprint planning is to take what you know you need, and project the effort you think that will take. Once you have a sprint plan, the development team starts working toward a story point or milestone. You can track the progress toward that milestone in near real-time. If the progress toward the milestone starts to slip, you can adjust what you expect to happen instead of being surprised at the end. Without sprint planning, none of that would be possible.
Part of sprint planning is giving the development team a chance to set expectations for the product owner. Without fully realized sprint planning it would be hard for a product owner to really know how the team is progressing toward milestones. It is also an opportunity for the product owner to be made aware of any challenges that the team may expect. With the product owner properly armed with expectations, they can adjust the priority of a particular feature with the team. It can also be used to gauge the team’s definition of ready versus that of the product owner.
The purpose of sprint planning is to shine a light on the team’s work for the product owner to better understand how a project is going and speak to priorities. It’s also an opportunity for the team to bring up dependencies inherent in a feature that require certain tasks to come before others. Without the product owner and the team having this two-way communication and working together to regularly plan, faith can be damaged as unclear expectations lead to misaligned priorities.
Success in an agile software development project is measured in milestones delivered. Each sprint completed should show progress toward a milestone. As the project runs it is punctuated by meetings between the team and the product owner. Sprint planning meetings are just one of the types of meetings that can provide insight into the process and informs metrics against which to measure.
Written by Richie Harris