Scrum: The lifecycle of a Sprint
In today’s software development world the adoption of Agile methodologies has become a common, or even better, the best practice. Even though there are several different Agile methods, such as Extreme Programming, Lean and Crystal, the most used one today is Scrum.
Scrum can be considered as a management tool, which has as core characteristics the self-organized development teams, the short release times and development iterations, also known as Sprints. The purpose of this article is to explore what is happening during the lifecycle of a Sprint.
Sprint Overview
When following the Scrum framework, the development of potentially releasable software is accomplished during Sprints. In the beginning of a typical Sprint the team selects the functionality that will be implemented and then develops and tests the selected functionality in order to produce an updated version of the product that is ready to be released.
To guide and facilitate the accomplishment of the Sprint’s goal, Scrum uses a variety of different meetings, each of which has a specific time-box and objective. In more detail, each new Sprint starts with a Sprint Planning meeting, where the team decides what can be delivered and how it will be implemented. Apart from that, the team schedules short every day meetings, called Daily Scrums, to empower transparency and achieve a fast resolution of possible impediments. Moreover, at the end of the Sprint, two additional Scrum events take place, the Sprint Review that includes the increment’s presentation and the Sprint Retrospective, where the team tries to improve its way of working.
To put things into perspective it may be helpful to provide an overview of the duration of the Sprint and its events. As it is depicted in the below table, the highest possible duration of a Sprint is one calendar month. It must be noted that all Sprints must have consistent durations during the software development process.
To facilitate a better understanding of the abovementioned Sprint events, in the next sections we provide a better insight on the inner workings of each one of them, starting with the Sprint Planning.
Sprint Planning
This meeting occurs at the beginning of every new Sprint and its objective is the definition of the Sprint’s goal. The outcome that is produced at the end of the Sprint Planning meeting is the generation of the Sprint Backlog and a time-estimation for every task that is included in the Sprint’s scope.
The duration of the Sprint Planning meeting is related to the length of the Sprint. In other words, the shorter the Sprint’s duration, the shorter the length of the event. Typically, Sprint Planning is limited to an 8-hour meeting for one-month Sprints, while bi-weekly Sprints usually are scheduled as 4-hour events.
In the first part of Sprint Planning, the entire Scrum team collaborates to define what can be delivered during the Sprint. The Product Owner explains the Sprint’s objective and specifies the Product Backlog items that would accomplish this goal. The Scrum Team as a whole works together to achieve a mutual understanding of the Sprint’s work.
Having defined the Sprint Goal and selected the relevant Product Backlog items, the Development Team decides how it will create this functionality.
Daily Scrum
The Daily Scrum is a short event, with a 15-minute duration that is held every morning. It is typically a “stand-up meeting”, where the team plans the next 24 hours.
During the Daily Scrum, every team member answers the following three questions:
- What did I do yesterday?
- What will I do today?
- Are there any impediments in my way?
The focus of the Daily Scrum is the setting of commitments and the uncovering of potential impediments. It must be noted that a detailed discussion for the resolution of impediments has to take place outside of the Daily Scrum meeting.
Sprint Review
The Sprint Review is held at the end of the Sprint to review the work that is completed. The participants of this event are the entire Scrum Team and potentially other key stakeholders that are invited by the Product Owner.
Sprint Review has a four-hour time limit for monthly Sprints, while it lasts less for shorter ones. During the meeting, the team presents and demonstrates the completed work to stakeholders to gather feedback and foster collaboration.
Sprint Retrospective
The Sprint Retrospective meeting is typically scheduled right after the Sprint Review and it’s an opportunity for the Scrum Team to inspect and improve its way of working.
The duration of a Sprint Retrospective meeting should not be longer than three-hours for monthly Sprints.
The two main questions that need to be discussed during this meeting are the following:
- What went well?
- What could be improved?
By the end of the meeting, the Scrum Team should have identified improvements that will be implemented in the next Sprint. These potential improvements could be related to:
- the Scrum Team’s relationships and overall collaboration
- the processes that are followed
- the tools that are being used
An indicative timetable of a bi-weekly Sprint that presents the distribution of these events in the life span of a Sprint is presented below.