08Mar
Scrum Sprint: In a Nutshell

The Scrum development process is a series of sprints that are linked to each other, in a linear way. At the end of each sprint the product increment grows larger. Each sprint is built on top of the outcome from the previous sprint.

Sprint duration is fixed. The length can be between 1 to 4 weeks, and is decided by the Scrum Team from the beginning. The objective is to have a sprint long enough to include complete user stories in it but also short enough to be easily manageable. The duration remains the same for the whole duration of the process. In the beginning of the project, the product increment will be very simple with very basic functionality, but each sprint iteration incrementally builds on the functionality already completed in the last product increment, which is why Scrum is described as both iterative and incremental. And since each sprint includes the highest priority items in the product backlog, the resulting product increment will always include the features, which the customer considers the highest value.

Each sprint begins with a sprint planning meeting, where items are moved from the product backlog to the sprint backlog, signaling they will be completed in the upcoming sprint. The product owner maintains the product backlog with the highest priority items at the top. So, the product owner has authority to say what is in the sprint. The Scrum team says how the work will be completed, breaking each item into small tasks with a time estimate.

The time estimates are used to determine when the work added to the sprint backlog meets the capacity of the team during the next sprint (also called the velocity). At this point, the team commits to completing the work in the sprint backlog, which is frozen; no more items can be added to the sprint. During the sprint, the team owns the work, and retains absolute responsibility for completing it in the manner that best suits the team.

Daily Scrum meetings are held with the team and the Scrum master, to check in and communicate where each team member is on the task they have accepted.
During the Scrum meeting, each team member reports what they did yesterday, what they will do today and any impediments blocking them. The Scrum Master is responsible for removing impediments so the team can continue to make progress. When the duration determined for the sprint is over, the sprint concludes with the sprint review meeting. In this meeting, the team demonstrates the functionality added to the product increment, to the product owner.

Customers and stakeholders often attend the sprint reviews, to monitor the product increment as it grows and develops over multiple sprints. The sprint review also provides the opportunity for the stakeholders and customers, to give feedback to the product owner and team after they see the product increment demonstration.

The performance of the team during the sprint will vary, especially at the beginning of the project when the members are not yet use to working as a team. That is why the sprint retrospective meeting is held after every sprint, so the team can openly discuss the events of the last sprint, what worked, and what issues were encountered. The team can then focus on the root cause of the issues and put processes in place, to ensure the same issues are not encountered in the next sprint, leading to continuous process improvement.