The concept of a sprint is one of the core ideas in the Scrum Framework. But what is a sprint and why is it important?
What is a Sprint?
A sprint is very simply a time limited period in which development takes place. Typically a sprint is between one and four weeks in length, with the most common length being two weeks.
During the sprint the team must self organise to complete the sprint backlog and achieve the sprints’ goal. The sprint backlog consists of the user stories that the team has committed to complete in this sprint. The user stories are taken from the overall product backlog. The user stories that make up the sprint backlog are selected at the start of each sprint in a sprint planing meeting.
The sprint goal is the overall objective for the sprint. It unities the user stories in the sprint backlog into a common theme. For example, adding the shopping cart functionality to an e-commerce site. The goal is not to deliver the complete finished working product, but rather a small, but complete, part of the overall product which builds on the work done in the previous sprints.
At the end of each sprint the team demonstrates the new functionality that has been added to the product. This takes place at the sprint review meeting. The customer can them make a decision to ship the product in its current, now finished, state, or to continue to improve the product in another sprint.
Why is a Sprint Important?
Sprints are important for two reasons. Firstly, it creates a natural rhythm to the process of developing the product. This makes it easier to show regular incremental and iterative progress towards the finished, shippable, product.
From the customers perspective this regular and clear progress gives them confidence that the development team is moving forward towards the overall goal and ultimately proving a return on investment to the business.
From the teams perspective the regular progress gives them a sense of achievement that they are delivering a valuable product to the customer who will actively use the final version. This in itself helps to motivate the team.
Secondly the end of each sprint provides a natural pivot point where the objectives of the overall project can, and often do, change. The business priorities may have changed over the course of the sprint, or the customer may see new potential based on the result of a sprint. The end of the sprint provides a clear opportunity for the project to adjust to these changed priorities and new ideas.