Scrum is a popular project management methodology used by tech companies to manage their product development. The term scrum comes from Rugby where it refers to an ordered formation of players. Similarly, in the workplace, scrum refers to a cross-functional team coming together to achieve a common product goal. Scrum is an agile process, meaning it is iterative. It constantly takes in feedback from customers or end users and enhances the product accordingly. The following overview of the scrum process is based on The 2020 Scrum Guide™.
What is scrum?
Scrum is a lightweight framework that helps people, teams, and organizations generate value through adaptive solutions for complex problems.
Scrum employs an iterative, incremental approach to optimize predictability and to control risk. Scrum engages groups of people who collectively have all the skills and expertise to do the work. Together, they share or acquire such skills as needed.
What is a scrum team?
A scrum team is the fundamental and smallest unit of scrum. It consists of one scrum master, one product owner, and multiple developers. It is a cohesive unit of professionals focused on one objective at a time – the product goal.
Scrum teams are cross-functional, meaning its members have different skill sets. For example, a scrum team may include front-end developers, back-end developers, a software manager, a software architect, a QA engineer, and a technical writer. Together, they have all the skills necessary to create a valuable contribution each Sprint.
A scrum team is self-managing. Team members internally decide who does what, when, and how. The scrum team is small enough to remain nimble and large enough to complete significant work within a sprint. While the team size varies by organization, a typical scrum team has 10 or fewer people. The scrum team as a whole is accountable for creating a valuable, useful increment every sprint.
Contributors of a scrum team
Based on their responsibility, a scrum team has three types of contributors: developers, a product owner, and a scrum master.
Developers
Developers are individuals committed to creating any aspect of a usable increment each sprint. For example, let’s say a scrum team is working on a software feature for this sprint. The back-end developer on the team is responsible for writing the code for the feature, the front-end developer is responsible for creating the UI for the feature. Software architect is responsible to ensure that the feature structure complies with the organizational guidelines and aligns well with the bigger product. QA engineer is responsible for testing the feature and ensures that it is bug-free and secure. Technical writer is responsible for creating help documentation for the feature.
Product owner
Product owner, sometimes called product manager, is the person accountable for maximizing the value of the product resulting from the work of the scrum team. The product owner is constantly in touch with the customers or end users to understand how they use the product, what difficulties they face while using it, and what they’d like to see improved. Based on the customer or user feedback, the product owner decides what product improvement the scrum team should be working on.
Scrum master
Scrum master is the person accountable for executing the scrum process in the team. This includes performing the scrum ceremonies, helping everyone understand the scrum theory and practice, and keep track of the team’s progress towards its commitment for the sprint.
What is a sprint?
A sprint is the unit of time measurement in scrum. A typical sprint is usually month-long during which the scrum team delivers an increment. Sprints are consistent in length. A new sprint starts immediately after the conclusion of the previous sprint.
All the work necessary to achieve a product goal happens within the sprint. This includes scrum ceremonies – sprint planning, daily scrums, sprint review, and sprint retrospective.
At the beginning of each monthly sprint, the scrum team commits to achieving certain goals by the end of the sprint. Monthly sprints are often broken down into weekly sprints. And bigger goals are broken down into smaller goals – small enough to be achieved in a week. Smaller goals tied to the bigger monthly goals are added to weekly sprints.
Scrum ceremonies
Scrum has four crucial ceremonies – sprint planning, daily scrum, sprint review, and sprint retrospective.
Sprint planning
Sprint planning happens at the beginning of the sprint. The scrum team meets together to plan the work they’ll be doing for that sprint. The product owner ensures that attendees are prepared to discuss the most important product backlog items and how they map to the product goal. The team may also invite other people to attend sprint planning to provide advice.
Daily scrum
The scrum team meets daily for 15 minutes to discuss what each member is working on. They share an update on their work progress. Team members can also use this time to ask for help from other team members or raise concerns if something is preventing them from completing their goal.
Sprint review
The purpose of the sprint review is to inspect the outcome of the sprint and determine future adaptations. The scrum team presents the results of their work to key stakeholders and progress toward the product goal is discussed.
Sprint retrospective
Sprint retrospective is a team meeting where members discuss, and often write down, what went well and what went wrong during the last sprint. The team discusses ways to continue the good things and prevent wrong things from happening again.
Scrum artifacts
A scrum artifact represents work or value. Each artifact contains a commitment, toward a product goal, a sprint goal, or an increment. It provides detailed information about what needs to be done and how the progress will be measured. There are three types of scrum artifacts: product backlog, sprint backlog, and increment.
Product backlog
Product backlog is an emergent, ordered list of what is needed to improve the product. Product owner owns the product backlog and the scrum team base their work on it.
If product backlog items are too big to complete in one sprint, they are divided into smaller items that can be achieved during one sprint. This breaking down process is called product backlog refinement.
Sprint backlog
Developers create and own the sprint backlog. It is an actionable plan to achieve the product goal for the sprint. A sprint backlog is a highly visible, real-time picture of the work that the developers plan to accomplish during the sprint. It is updated throughout the sprint as developers make progress on their items or learn more about them.
Increment
Increments are items developers must complete to achieve their sprint goal. Each increment must have a “Definition of Done.” It means a formal description explaining exactly what standards and measures the increment must meet to be called done. The definition of done can differ based on the increment.
This is the basic framework of scrum. A process must include all these basics to be called scrum. However, organizations can and do build on this basic framework to better suit their needs.
Ken Schwaber and Jeff Sutherland first co-presented the scrum framework in 1995. Since then the methodology has been adapted by not just the tech industry but many other industries.