Scrum

The ultimate guide on Scrum, the Agile framework transforming product management across industries.

What is Scrum - the most popular Agile framework. Definition of Scrum according to the Scrum Guide

Scrum is a framework that helps teams efficiently create and develop complex products. It was first introduced in 1995 and is described in the document "The Scrum Guide". The creators of Scrum, Ken Schwaber and Jeff Sutherland, are the authors of the guide.

According to "The Scrum Guide", Scrum is a framework that helps people, teams, and organizations generate value through adaptive solutions for complex problems. It is the most commonly used and most popular framework supporting the Agile approach.

What is Agile? Is "Scrum methodology" a correct term?

Scrum vs Agile

Agile represents a philosophy and general approach - a set of principles and values focused on managing complex projects or products. The basis of Agile is the acceptance of experimentation, constant exchange of feedback, continuous learning, and improvement of the process during work progress.

Agile values were presented in the "Agile Manifesto", developed by a group of experienced developers in 2001. These are primarily the following principles:

  • People and interactions are more important than processes and tools.
  • Working software is more important than detailed documentation.
  • Customer collaboration is more important than contract negotiation.
  • Responding to change is more important than following the original plan.

The "Agile Manifesto" also describes twelve principles that help teams work more flexibly by being able to adapt to changing requirements and quickly respond to feedback. Thanks to this approach, projects can be implemented more efficiently and productively, benefiting both customers and companies creating software.

The main difference between Agile and Scrum is that Agile is a set of general values used in various frameworks, methods, and practices, while Scrum is a specific agile framework. Scrum helps organizations deal with complex, dynamically changing requirements and create high-quality products. It achieves this goal by breaking down large tasks into smaller, easier-to-manage parts, called Sprints, which an interdisciplinary team can start and finish within short iterations.

Assumptions and genesis of Scrum

The assumption underlying the creation of the framework was to improve and enhance the efficiency of the work system in creating software.

Previously used traditional IT project management methodologies (and not only), such as Waterfall (also known as the cascading model), often rely on very early and strict definition of the subsequent stages of product development. A lot of effort, time, and budget is invested in meticulous planning of each step. While planning itself is not wrong, in the case of complex, multi-stage goals, it is very difficult to predict everything that may happen at the initial stage and then flexibly respond to changes. Therefore, very detailed planning at the beginning creates a risk of later misalignment of reality with what is on the Gantt chart. The result of such an approach often includes delays, costs much above the budget, and a final product not in line with stakeholders' expectations

Using Scrum largely prevents the above problems. Special emphasis is placed on the earliest and most frequent verification of whether the work on the product is going in the right direction. Scrum uses an iterative, incremental approach to optimize predictability. This allows for better control over the project. The team does not wait until the end of the project to see the results. Instead, they regularly check progress and make corrections as needed. Thanks to regular Sprints, teams can better predict how much work they can accomplish in a given time. This helps in planning and managing stakeholder expectations.

This approach also helps better control risk. Instead of putting everything on one card at the end of the product, teams regularly deliver value to the customer. This not only provides the customer with a faster return on investment but also allows for earlier detection and correction of problems. If something goes wrong, teams can quickly adjust and change direction, rather than wasting time and resources on continuing the wrong path.

Scrum encourages creativity and mutual exchange of ideas without imposing detailed guidelines on how to work. It is the collective intelligence of its users, their mutual relationships, and interactions that build a specific model of cooperation for a given team or organization. This framework engages groups of people who collectively possess all the skills and expertise needed to do the job and share them or acquire them as needed.

In the case of mistakes made, the focus is not on finding culprits but on improving the process. If something does not work, we look at the functioning of the entire team. The framework rewards positive behaviors, focusing on cooperation and delivering products.

Does Scrum exclude planning?

No. Planning is important, for example, at the beginning of each Sprint. Every event in Scrum serves, among other things, for better planning - as they say, "the plan is nothing, planning is everything". An essential part of working on a product is creating, ordering, and updating the backlog. However, blind adherence to a long-term plan is avoided, and instead, actions are adapted to changing circumstances, work progress, and stakeholder expectations.

Empiricism, Lean Thinking, MVP

Scrum and Agile are based on empiricism and Lean Thinking. According to the assumption of empiricism, knowledge comes from experience and making decisions based on observations. Lean Thinking reduces waste and focuses on the essence that brings value.

The emphasis is placed on how people actually work, not on how they planned their work. It is a constantly evolving, adaptive, and self-correcting system. The frameworks it creates are focused around the learning process itself. There is a lot of room and acceptance for creativity and uncertainty about the outcome.

Scrum adapts the concept of MVP (minimal viable product). Thanks to the "Inspect and Adapt" approach, it constantly seeks ways to make work proceed faster and more efficiently. The basis is frequent stopping and asking oneself: what am I doing, what have I done, what is still to be done, do I really still need to do it, and how can I do it better?

Scrum Values

Success in working according to the Scrum framework depends on how well people can apply five values: commitment, focus, openness, respect, and courage.

  • Commitment - the team wants to achieve the best result, so it commits to achieving its goals and helping each other. Focus - the team's main goal is to work on the Sprint to achieve the best results.
  • Openness - the team and those interested in the product are open to work and challenges. Respect - team members respect each other as capable, independent individuals. They are also respected by others with whom they work.
  • Courage - team members have the courage to do what they think is right and work on difficult problems.

These values show the team how it should work, what decisions to make, and how to behave. Everything the team does should reinforce them. Of course, this is not the only way to understand these values - it's worth having such a conversation in your Team - how do I understand these values? How do they manifest?

Focus on value and elimination of waste

Using the Scrum framework promotes a focus on value. This, in turn, means that people prioritize the most important work, tasks lying in the magical area of 20% that brings 80% of the results. People involved in the project see not only their piece but the final goal to be achieved and do everything to achieve it.

However, to be able to focus on the most important tasks, it is necessary to eliminate obstacles and waste that occur in the process. The gains after eliminating these two slowdowns are huge. Despite this, organizations often do not decide to introduce changes because the very agreement to look at the course of previous processes requires a large dose of honesty towards oneself and others.

Empirical process control in Scrum Three pillars of Scrum

Empirical process control in Scrum is based on three pillars: transparency, inspection, and adaptation.

1. Transparency - everything we do must be clear to those who work on the product and for those who will use it.

For the effective functioning of the team, full transparency of processes and progress is essential. It provides a complete picture of the situation, allowing for accurate analysis and adjustment of actions based on the broadest range of available data. Transparency in conversations with stakeholders, who should be involved in the product creation process not only by sharing their opinions but also by providing valuable information, for example, from the market, is also important. This supports adjusting the product to the real needs of customers. We are not talking about everyone needing to know everything - transparency emphasizes mutual understanding in the context of building a quality product. We know what the Product Goal is, what our vision is to achieve it, what development might look like, we build the product backlog together, etc.

2. Inspection - helps us regularly and accurately check work tools and progress in achieving goals, to notice problems or deviations from the plan

Inspection is a way to verify whether Scrum elements, such as the Product Backlog, Sprint Backlog, and Increment, as well as the overall progress of work, are consistent with the established plans and expectations. Its goal is to identify any discrepancies or deficiencies, which can then be appropriately corrected. In the spirit of Lean, it supports the identification and elimination of waste.

3. Adaptation - if something in the work process is not going as it should, or if the product does not meet expectations, we need to adjust the process or product.

When some element of the process exceeds established tolerance limits or the work result is unsuitable, it is necessary to make appropriate corrections in the methods used or materials produced. It is important to introduce these changes as soon as possible and thus limit the risk of further deviations. The adaptation process can be difficult if the people involved in the project do not have the appropriate authority or ability to manage independently. The Scrum team is expected to introduce the necessary changes in a timely manner after receiving new information resulting from the inspection process. Each subsequent Sprint is a way to better adapt and build a quality product.

Scrum Artifacts

Artifacts in Scrum are key pieces of information used by the Scrum team. They help define the product and the work that needs to be done to deliver it. In Scrum, there are three main artifacts: Product Backlog, Sprint Backlog, and Increment (Increment).

Product Backlog

The Product Backlog is a dynamic list of features, requirements, enhancements, fixes, and other necessary activities managed by the Product Owner. It is a set of inputs for the Sprint Backlog, i.e., a list of tasks to be performed by the team. The Product Owner continuously updates the Product Backlog, modifying the priorities of the tasks contained therein as new information is obtained and market changes occur.

Sprint Backlog

The Sprint Backlog is a list of items, user stories, or bug fixes selected by the team for implementation in the current Sprint cycle. Before each Sprint, during the planning meeting, the team decides which Product Backlog items will be implemented during the Sprint. The Sprint Backlog may evolve during its course, but it should not deviate from the Sprint goal.

Increment

The Product Increment, the final product of the Sprint ready for use, is discussed during the Sprint Review to obtain feedback. The increment is accepted if it has met the criteria set for the team and product Definition of Done. Only completed backlog items can be discussed at the Sprint Review. Some teams may decide to release something to customers at the end of each Sprint, others multiple times during, and still others once every few months.

The role of the Product Owner, Developers, and Scrum Master

Scrum defines three key responsibilities: Product Owner, Developers, and Scrum Master. Each of these roles has its unique duties and responsibilities.

Product Owner

The Product Owner is the person responsible for maximizing the value of the Product Backlog. He decides which product features are most important and in what order they should be implemented. The Product Owner must understand the needs of customers and the business well to make the right decisions. His goal is to maximize the product's value.

Developers

Developers are professionals responsible for doing the work. This is a group of people who actually create the product. They can be programmers, testers, designers, lawyers, analysts, and other specialists, depending on the product's needs. The team analyzes the entire workload and selects tasks so that each Sprint increases the product's value. Team members work together to deliver a high-quality product at the end of each Sprint. The Scrum team is self-managing and interdisciplinary.

Scrum Master

This responsibility is usually the most doubtful. What does the Scrum Master actually do? Who is the Scrum Master? This is a person who helps both the Product Owner and the Scrum Team understand and apply Scrum. The Scrum Master ensures that the team works efficiently and without obstacles. He also helps maintain good communication between the team and the Product Owner as well as other stakeholders. His overriding goal is to ensure that Scrum is understood and applied in the organization to deliver the best quality Product that meets customer/user needs.

Interactions between roles

All three responsibilities are essential for effective Scrum application. The Product Owner defines what needs to be done, the Developers do the work, and the Scrum Master ensures the process runs smoothly. All team members cooperate with each other to deliver a valuable product to the customer.

Scrum teams are interdisciplinary, meaning they have various skills needed to work on the project. They decide who does what, when, and how. The Scrum team is small enough to be easily managed but large enough to achieve real results during the Sprint. The team usually consists of 10 or fewer people. If the team is too large, it can be divided into several smaller teams working on the same product.

The role of teams in Scrum

Scrum puts people first. It organizes projects using multifunctional teams that have the skills and competencies necessary to deliver an entire piece of functionality - from idea to implementation. Scrum's goal is to support the team in working together, which, in the end, is meant to delight customers.

Characteristics of a good Scrum team

The best teams are characterized by:

  • Transcendence - they are united in purpose, possessing the determination to overcome any obstacle.
  • Autonomy - they have the ability to self-organize effectively and the freedom to independently decide on the best way to perform the work.
  • Functionality - they possess all the skills needed to complete the project.

Small teams (up to 10 people) are often considered better for achieving the Sprint goal due to several variables:

  • Easier information flow and response to changes;
  • Time and resources are not spent on implementing additional team members (which reduces the efficiency of the rest)
  • There is a lower risk of creating sub-teams working on a specific issue, which violates the assumption of transparency and multifunctionality of the team

One of the key features of the Scrum team that unites all elements is trust. If trust is not present, tensions and obstacles to getting the work done are likely to arise. Scrum values are particularly important in environments where experimentation is key to progress.Teams that succeed are those that can effectively work together towards common goals.

Several key factors can influence the success of a given Scrum team:

  1. Focus on the goal. The team has a clearly defined, common goal. All its members understand what they are to achieve and why it is important. This focus on the goal helps maintain motivation and direction, even when they encounter difficulties.
  2. Radical collaboration. The team's success requires intense, open, and honest collaboration between all members. Each team member must be ready to share their ideas, listen to others, and work together to solve problems.
  3. Striving to push boundaries The team is not satisfied with just meeting minimum requirements. Instead, it strives for continuous improvement and pushing the boundaries of its capabilities.
  4. Eliminating obstacles. Effective teams are proactive in identifying and removing obstacles that may hinder their work. This may include both technical and interpersonal problems.
  5. Joy in success, regardless of who achieved it. In successful teams, all members enjoy the achievements of others. The success of one person is considered the success of the whole team. This creates an atmosphere of mutual support and positive competition.

Managing a Distributed Scrum Team: How to Effectively Manage Remote Work

As technology allows work from anywhere in the world, more and more companies decide to create distributed teams. In the context of Scrum, we talk about a distributed Scrum team when its members do not work in one place but are geographically dispersed.

Communication is one of the biggest challenges in such cases - both in terms of message clarity and time differences between team members. Other challenges include building trust and community, as well as coordinating and synchronizing work

However, some strategies can help distributed Scrum teams work effectively together. Remember that Scrum does not impose one way of working, but only helps create a framework for action depending on changing conditions. Especially important in remote work are therefore:

  1. Regular communication. Regular meetings, such as the Daily Scrum, are even more important for distributed teams. Video conferencing tools can help create a sense of presence and allow direct communication.
  2. Using technology. Project management tools, such as Jira or Trello, can help organize and track work. Online Scrum boards can replace physical boards and be accessible to all team members regardless of their location.
  3. Building trust and team culture. Regular live meetings, if possible, and online team-building sessions can help build relationships and trust between team members.
  4. Flexibility. Understanding and respecting cultural differences and time zones is key. Flexibility in scheduling meetings and deadlines can help maintain harmony in the team.

Scrum Events

Events in Scrum are an opportunity to look at what the team is doing and how. This allows for a better understanding of one's work and adjusting actions to the current situation.

Meetings in Scrum have a regular schedule, which helps the team better organize itself. It is best when they take place at the same time and in the same place because it facilitates planning and reduces confusion.

All events in Scrum take place within the Sprint. Sprints are a key component of the Scrum framework. They are periods of team work in which ideas turn into valuable solutions.

Sprint in Scrum

A single Sprint lasts up to a month. When one Sprint ends, another immediately begins. During the Sprint, all necessary work is done to achieve the Sprint Goal. It is important that changes that could disrupt plans are not introduced during the Sprint.

Elements of Sprint in Scrum. Read more

Sprint Planning

Sprint Planning (Sprint Planning) is the first stage of each Sprint. The Product Owner tells the Developers his vision for that Goal, expressed through the ranking of Product Backlog items, and then the Team selects the tasks they can complete in the upcoming sprint.

Daily Scrum

The Daily Scrum (sometimes incorrectly called Daily Stand-up copying the nomenclature of XP) is a short, daily team meeting aimed at coordinating work and identifying potential obstacles. One possible way of talking is to inform what the developers did the previous day, what they plan to do today, and what obstacles they encountered in the context of the Sprint Goal.

Sprint Review

The Sprint Review is a meeting at the end of the Sprint, during which the Team presents the results of its work, presents its achievements, and discusses progress. It is mainly an opportunity for discussion and feedback.

Sprint Retrospective

The Sprint Retrospective  is the last meeting in the Sprint, during which the team evaluates what went well, what could have gone better, and what changes can be introduced in future Sprints.

Scrum Board

The Scrum Board is a tool that supports project implementation. Its main goal is to visualize the work to be done and the team's progress working on the product or project. It is not in any way a required element of Scrum, more a complementary practice supporting work visualization.

Components of the Scrum Board

Dividing the board into columns of implementation states is a key element that allows tracking the progress of work. The most commonly encountered columns are:

  • Product Backlog Sprint
  • Backlog Execution state columns: To Do - tasks ready to start work; In Progress - tasks currently being implemented; Done - tasks completed in a given sprint.

Tasks

Each task is represented by a sheet (physical or virtual) that contains a brief description of what needs to be done. Additionally, it may contain information such as the responsible person, the estimated time needed to complete, priority, or any other useful notes.

How to use the Scrum Board?

  1. During Sprint Planning, the team selects tasks from the product backlog and moves them to the Sprint backlog.
  2. Then these tasks are distributed in the To Do column.
  3. When a team member starts on a task, he moves his card to the In Progress column.
  4. After completing the task, the card is moved to the Done column.
  5. Regular meetings (daily scrum) help the team update the status of tasks and coordinate further work.

Does Scrum only work in the software industry? Agile approach in non-IT processes.

The term Scrum comes from a Harvard Business Review article from 1986, in which authors Hirotaka Takeuchi and Ikujiro Nonaka compared high-performance, multifunctional teams to the scrum formation used by rugby teams.

Although Scrum has its roots in software development, today it is used in many fields. It can be useful wherever the goal is to deliver complex, innovative products and services.

Roles assigned to Scrum, namely Builder (Developers), Product Owner, and Scrum Master, therefore, come from an environment related to software products, but they can be replaced with terms from other industries, remembering, however, to strictly adhere to the principles of Scrum itself.

Scrum vs. Kanban

Both Scrum and Kanban are specific frameworks for managing work, consistent with the Agile philosophy. Scrum is so strongly associated with Agile that the terms Agile and Scrum are often (wrongly) equated.

Both Scrum and Kanban use visual tools to track progress, such as the Scrum board or Kanban board. In both methods, the priority is efficiency and breaking down complex tasks into smaller, easier-to-manage pieces, but the approach to achieving this goal is different.

Scrum focuses on short iterations of fixed length. After determining the duration of the Sprint, the backlog items of the product that can be implemented during the given sprint cycle are selected. On the other hand, in Kanban, the number of tasks or work in progress (WIP limit) to be implemented in the current cycle is initially set and then adapted as the team's maturity develops.

Kanban in the ProKanban approach is not as formalized as Scrum. Apart from the work in progress limit, this model gives a lot of freedom of interpretation. Meanwhile, Scrum is based on several specific rules, such as Sprint Review, Retrospective, Daily Scrum, etc.

This model also emphasizes interdisciplinarity, i.e., the ability of the Scrum team to achieve the goal independently without external members. Assembling such a team is not easy. In this context, Kanban is easier to implement, while Scrum is seen as a fundamental change in the way Developers think and work.

Kanban helps implement changes in an evolutionary way - start with what you have, while Scrum in this context is binary: either you have all the elements of Scrum, or it is not Scrum.

Scrum of Scrums

The Scrum of Scrums technique is used if it is necessary to coordinate the work of multiple Scrum teams working on the same product. It is particularly useful when dealing with large products that require the involvement of many teams.

In traditional Scrum, the daily Scrum (Daily Scrum) is an opportunity for the team to discuss progress and plans for the next day. In Scrum of Scrums, representatives of each Scrum team meet regularly (for example, once a day) to discuss the overall progress of product development.

During the Scrum of Scrums meeting, the representative of each team informs about:

  • What has their team done since the last Scrum of Scrums meeting?
  • What does their team plan to do by the next meeting?
  • Are there any obstacles hindering the work of their team or other teams?

The goal of Scrum of Scrums is to ensure transparency and coordination between different teams, as well as identify and solve problems that may affect more than one team. This way, all teams can work together effectively and efficiently towards a common goal.

Certified Scrum Training

Being effective in Scrum is more than just adhering to the rules of the framework. Sometimes Scrum Teams fall into the routine of simply ticking off the required elements called colloquially "zombie Scrum". However, professional Scrum requires a change in work mentality, adoption of Scrum Values, and an environment that supports such change.

Obtaining a certificate issued by Scrum.org is a significant step in the professional career of anyone working within the Scrum framework. These certificates are recognized worldwide and show that the person has solid and proven skills and knowledge about Scrum.

The certificate confirms the ability to effectively manage projects within Scrum. It shows that you understand the principles of Scrum and can apply them in practice. The process of obtaining a Scrum certificate is in itself a valuable educational experience. Courses and exams require participants to have a thorough understanding of Scrum, which helps consolidate and expand their knowledge. This can bring direct benefits to everyday work, helping to better manage projects and work more effectively with the team