Welcome to our Explained for Executives series - software development topics explained in simple words for business owners, CEOs, and managers.
At some stage of the company's activity, there may appear a moment of stagnation in development, a sequence of failures, or loss of business vision. Access to information and high awareness of customers give an increasingly rapid pace, forcing adaptation to current market needs. Thus, the company's response to this adaptation may be the need to arrange and systematize specific internal processes, and here there is an opportunity to use popular and well-established solutions. One of them is Scrum, which helps to introduce a framework and order of activities. This text will explain what Scrum is, how it works, and why it's so recommended.
What is Scrum?
Scrum is an approach, which was introduced by Jeff Sutherland and Ken Schwaber in the early '90s. It is a development framework used in product development based on iterative and empirical processes. Scrum is a fast, flexible, and efficient way to manage the process so that the result is the delivery of value to the customer. Project progress begins with identifying a prioritized list of features (product backlog) that are expected to meet the product owner's expectations. According to this approach, the SCRUM team constantly updates the product, work techniques, group, or environment.
First stage - Product Backlog
Before the SCRUM team starts the sprint stage, the first step in the Scrum process is to define the Product Backlog. The goal is to clarify the development team with all the stakeholders' assumptions and that the milestones are laid out to be completed within a sprint and defined as done. The Product Backlog is a structured list of everything known about product development at any given time. It is the only source of required changes to be made to the product. Product Backlog is never finished. Initially, it contains the most critical features of the ongoing process, but the list is supplemented with new elements as the work progresses. Thus, it leads to Product Backlog Refinement, which aims to prepare the items at the top of the backlog for execution in upcoming sprints.
Sprints as a base of Scrum process
A sprint is a stage in the execution of a predetermined activity. During a sprint, none of the goals are changed. The team decides on their daily work schedule, and team relationships are based on information, support, and advice. At the end of each sprint, the Product Owner and the Scrum Master (a person whose duty it is to promote Scrum to the organization and educate them how to implement it) should check the increment and update the product backlog to provide guidance and advice on the completed scope of activities. Sprint duration is set during the planning phase, and it is unchanged at later stages; currently, the maximum sprint duration is around 30 days, but most companies opt for bi-weekly.
Sprint planning & sprint backlog
Sprint planning is a stage by which it is possible to minimize findings later in the process. During this part, it is necessary to consider three topics:
- Topic One: Why is this sprint valuable?
- Topic Two: What can be done during this sprint?
- Topic Three: How will the chosen work get done?
The purpose of sprint planning is to determine what and how it will be accomplished. This meeting is held at the beginning of each sprint and involves the entire team. Thus the PO presents the most critical elements of the Product Backlog and how they map the product goal. Based on this, team defines the sprint backlog. Each Sprint is dedicated to different functionality, so the Scrum team can invite other people to share their experiences and help to refine the spring backlog.
Daily scrum meeting
Another meeting that helps in organizing work and tracking progress is the daily scrum meeting. It is characterized by a short duration, takes place every day of the sprint, and the development team considers what was done to achieve the sprint goal and what stood in the way and could be improved in the team's work. Initially, the Scrum Guide called for the use of 3 specific questions:
- What have we done to achieve the sprint goal?
- What will we do to accomplish the sprint goal?
- What obstacles did we face to achieve the goal?
However, teams were too focused on completing the answers to this question and creating reports. Therefore, in the new version of Scrum Guide, the proposal for the daily is an open form of discussion.
The Scrum Master may accompany the team to their first daily scrum meetings to direct them on conducting sessions appropriately.
The meeting has a flexible agenda, determined by the current needs of the development team, to be held in the shortest possible time, and its effectiveness is at the highest possible level.
After each completed sprint, a sprint review is organized, during which all the people involved (the Scrum team and stakeholders) discuss the product's functionalities and the effects of the project with regards to the product backlog for future deliveries.
After a series of sprints, a retrospective sprint is conducted. During this meeting, the team reviews the accomplished goals of the sprint. They analyze workflow and collaboration. The retrospective goal is to identify actionable improvements to define a roadmap for the next sprint without duplicating the team's collaboration mistakes.
Roles in Scrum projects
Scrum is based on a team with all the necessary skills and resources to deliver the increment as expected. It is also suitable for team members to cross-train each other, emphasizing continuous collaboration rather than creating the increment in separate, unrelated stages. A development team usually consists of people with testing, design creation, analysis, and programming skills. SCRUM team members are called developers because their role is to develop the increment, to create it.
Product Owner & Scrum Master
The person who works closely with the SCRUM team is the Product Owner. A personage in this role is responsible for creating and improving the product vision, refining requirements, planning releases and preparing the product for launch, engaging customers, users, other stakeholders in the development process, and managing the budget. However, it is essential to remember that a PO works with other people to a large extent and does not work alone. Additionally, the role of the PO is not the same as the role of the Project Manager, who manages the team and is the contact person with the customer. Product Owner is a decision-maker who represents the customer/user and their current needs.
In Scrum, apart from the PO and the team, there is also the role of Scrum Master, whose area of activity is to observe and constantly improve the team's collaboration to increase its effectiveness. About do we need Scrum Master in the project? our Scrum Master Damian wrote in his post.
What is SCRUM - pillars of the process
Scrum is based on empirical and lean thinking about processes and built on knowledge gained from previous implementations. This means that the driving force for product development is the knowledge and experience of the people in the project team. Scrum uses an iterative (incremental) approach to optimize predictability and risk control. To standardize the process path, there are 3 pillars: transparency, inspection, and adaptation.
The premise of this pillar is complete clarity and transparency in understanding the stages, issues, and what it means that the project is completed. The clarification of all problems should appear as the initial stage so that all team members rely on the same rules and concepts. This improves communication and allows for quicker resolution of disputes and moving on to further work in case of crises.
Established issues and process progress should be frequently audited and subject to inspection to detect undesirable problems or misunderstandings as early as possible. But Scrum mechanisms are designed to provoke change, so the goal of the inspection is to catch as many areas as possible that can be improved. However, it's important to remember that an inspection can't be done so often that it doesn't get in the way of meeting goals. Reviews are most effective when they are reliably performed by people adequately qualified to do so.
If the inspection reveals factors that need to be reformulated or improved because they do not fit within the accepted norms and principles, changing and reformulating the process is necessary. Adaptation to new circumstances should take as little time as possible to generate more difficult inconsistencies to solve. When the people involved in the project team are not empowered or self-managing, adaptation becomes more challenging.
Scrum recommends four formal events for inspection and adaptation:
- Sprint planning
- Daily Scrum
- Sprint review
- Sprint retrospective
Why choose Scrum?
The scrum framework itself is simple. The rules, artifacts, and team roles are easy to understand, and the semi-descriptive approach helps to influence the understanding and streamlining of the product development process, yet without imposing a single and strict style of operation. Scrum works great for intricate and complex projects, but it's the clear role breakdown and defined sprint format that makes it easy for the people involved to see where the project stands quickly.
It may take some time to fully understand and imply SCRUM, primarily if the SCRUM team has worked together in other ways or if the company is developing and refining its internal processes. However, the long-term benefits of introducing Scrum make it worthwhile to introduce this framework in organizations.