Software Quality.com

Scrum

By Ben Lutkevich

Scrum is a framework for project management that emphasizes teamwork, accountability and iterative progress toward a well-defined goal. The framework begins with a simple premise: Start with what can be seen or known. After that, track the progress and tweak, as necessary.

Scrum is often part of Agile software development. It is named for a rugby formation in which everyone plays a role. Software development Scrum roles include the following:

Product owner. This person serves as the liaison between the development team and its customers. The product owner is responsible for ensuring that expectations for the completed product are communicated and agreed upon.

Scrum Master. The Scrum Master is referred to as the project facilitator. They ensure Scrum best practices are followed. They must be good leaders and project managers, skilled at collaboration, conflict resolution and process improvement.

Development team. Members of the Scrum development team work together to create and test incremental releases of the final product. Developers must know Scrum and Agile development practices.

Industry associations and other organizations provide training and certification for these key roles. Some examples of these include the following:

What is the Scrum process?

The Scrum process encourages practitioners to work with what they have and continually evaluate what is or is not working. Good communication is essential and is carried out through meetings, called "events."

Scrum events include the following:

What are Scrum artifacts?

An artifact is something of historical interest that warrants being reexamined. In Scrum product development, artifacts are used to see what has been done and what is still in the queue.

It is useful to look at Scrum artifacts in Sprint Planning Meetings. Scrum artifacts include the following:

Benefits of Scrum methodology

The core benefits of Scrum include the following:

Scrum and Agile relationship explained

Agile is a development and project planning method. It has an overarching philosophy, or framework, that informs the methodologies under it, as explained in the Agile Manifesto. Scrum is one of several Agile methodologies.

Scrum can be thought of as a practical way to implement Agile. Like Scrum, Agile contains a set of values and principles. Development teams incorporate Scrum into their Agile strategy to add a layer of specificity.

One of the principles of Agile development is having team members regularly discuss how to be more effective and then adjust their behavior accordingly. Scrum incorporates a formal process to help teams do this. Daily meetings enable teams to reflect on work to do in the next 24 hours and change their approach based on obstacles expected or encountered.

Another principle of Agile is recognizing that the best work emerges from self-directed teams. Scrum Masters play a role in making this happen. They give teams what they need to do their work, and the freedom to set their own course. They then act as a servant leader, coaching teams to solve problems, reach goals and resolve conflicts.

The history of Scrum

The basis for the Scrum framework was introduced in 1986 in a Harvard Business Review article, "The New New Product Development Game," by Hirotaka Takeuchi and Ikujiro Nonaka. The authors described two approaches to managing product development. Some teams are like runners in a relay race, passing the baton along as they worked in a straight line. Other teams are like rugby players participating in a single game and passing things back and forth, as necessary.

Takeuchi and Nonaka concluded that the relay-race approach, as used in NASA's Phased Program Planning system, was outdated. The rugby approach would give companies the tools they need to compete in a multinational business world, they said.

Jeff Sutherland, John Scumniotales and Jeff McKenna then tried Scrum software development at Easel Corp., a software company, in 1993. In 1995, Ken Schwaber and Sutherland, working with others -- including McKenna and Scumniotales -- presented a paper, entitled "SCRUM Development Process." The result was a sea change that made developers question the effectiveness of the classic Waterfall software development model.

According to the Digital.ai's "15th State of Agile Report," Scrum is the most popular Agile methodology today. The survey of the global development community found that 66% of respondents said it was their chosen methodology and 15% said they used a Scrum derivative.

An updated version of the "Scrum Guide" by Sutherland and Schwaber was released in November 2020. The guide includes the official definition of Scrum.

Scrum pillars and values

The three pillars of Scrum are adaptation, inspection and transparency.

  1. Adaptation. The team consistently revises its approach to problems and takes on new ones as they arise.
  2. Inspection. The team consistently reflects on and evaluates its performance.
  3. Transparency. The team works in an open environment, where all members have insight into each other's process and are aware of the challenges others face.

Scrum's five core values support the pillars. They are the following:

  1. Commitment. The team is self-directed, and everyone is dedicated to doing the work that has been agreed upon.
  2. Courage. The team operates as one entity and succeeds or fails together. Members do the right thing and take on tough problems.
  3. Focus. Distractions are limited, and the team concentrates on the work that must be done today.
  4. Openness. The team spends time sharing where it has succeeded and what must be improved.
  5. Respect. Team members have different strengths, and each member's strengths are respected. No one is blamed when figuring out how to fix what is not working.

Scaling Scrum to multiple teams

Scrum and similar Agile methods are designed for one team. When IT organizations try to scale these frameworks across multiple teams, problems can occur. These methods don't provide guidance on how to work across teams at the end of a sprint, for example.

Scaled Agile Framework (SAFe) provides a set of principles, processes and best practices to address this problem. Comparing various SAFe methodologies can provide insight to help deal with Agile frameworks at an enterprise scale.

28 Oct 2021

All Rights Reserved, Copyright 2006 - 2024, TechTarget | Read our Privacy Statement