What is Scrum methodology?

Tech Lead

The Scrum methodology is a framework of the agile set of methodologies for project management. It is mainly used for software development projects with the objective of providing a new software update every 2-4 weeks.

It is one of the approaches that influenced the Agile Manifesto, which articulates a set of values and principles to guide decisions on how to develop high-quality software more quickly.

Where and when to use Scrum methodology

Scrum is widely used by software development teams. In fact, it is the most popular agile methodology. According to this report, about agile development in companies, about 70% of development teams use Scrum or a hybrid.

Scrum began in the software industry and has since spread to universities, military sectors, the automotive industry, and others.

Even if the advantages of the Scrum methodology are well known (agility, quick feedback, better communication, flexibility, etc.), sometimes we can face the uncertainty of using this framework or following a traditional path for development.

The following 7 aspects can be considered to determine when it is convenient to use Scrum in your project.

  • When the requirements are not clearly defined
  • When the probability of changes during development is high
  • When the need arises to test the solution
  • When the Product Owner is available
  • When the team has self-management skills
  • When the contract is given in hours
  • When customer culture is open to innovation and rapid change

Scrum fits in several types of projects with different purposes, but especially if it fits in one or more of the features mentioned above, it is a strong indication that you should use the Scrum methodology to manage the project.

What are the Scrum principles?

Scrum is defined by a group of principles (or values) that should be understood as simple guidelines to work together with the team. They are:

  • Courage – especially when it comes to solving difficult problems
  • Focus
  • Commitment to team objectives
  • Respect to team members
  • Receptivity to work and to any challenge that may arise

By incorporating Scrum’s values, a team assumes the shared responsibility for the success or possible failure of the project. And unless each member of the Scrum team adheres to these values, the team will not have the necessary basis to be successful.

The main roles within the Scrum methodology

There are three essential roles for scrum success. The Product Owner, Scrum Master, and the development team. And because the scrum teams are multifunctional, the development team includes testers, designers, UX specialists, and operations engineers, in addition to the developers. Let’s talk about each role.

Scrum Master

Even if you have never worked with Scrum, it is very likely that you have heard of the term Scrum Master. The Scrum Master is the team advisor, he or she must help the team members with the planning and execution of tasks.

The scrum master is the person in the team responsible for managing the process and only the process. He is not involved in decision making but acts as a guide to guide the team during the scrum process.

Scrum Master protects the team from external distractions, such as customer feedback or other projects, allowing team members to focus during the sprint and on the selected goal.

While Scrum Master focuses on helping the team produce the best results, the Product Owner works to direct the team to the right goal.

Project Owner

The project owner or Product Owner is usually one of the main stakeholders in the project. Part of his or her responsibilities is to have a vision of what he or she wants to build and to convey that vision to the team. This is the key to successfully starting any agile software development project. The project owner does this in part through the product backlog, which is a list of features considered a priority for the product.

The Project Owner is responsible for prioritizing the backlog during project development, to ensure that the result, at the end of each iteration (Sprint), is closer than he expects at the end of the project.

The Project Owner is usually a leading user of the system or someone in marketing, product management, or anyone with a solid understanding of users, the market, the competition, and future trends for the domain or type of system being developed.

This, of course, varies depending on whether the team is developing software for commercial use, for internal use, hardware, or some other type of product. Ideally, the person in the role of Product Owner should have a vision of the final product that should be built. So that the team can then work with a clear vision of what should be built.

Scrum Team

The third and last role in the management of the Scrum is the Scrum team itself. Although individuals who are part of the team may have traditional titles such as software engineer, programmer, designer, tester, or architect, the Scrum methodology establishes that each person must contribute in every possible way to complete the work of each sprint.

By becoming a member of a Scrum team, those who in the past fulfilled specific roles tend to keep some of these aspects, but to them, new responsibilities can be added.

A typical Scrum team is composed of three to nine people. And instead of climbing and forming a giant team, Scrum prefers to have “teams within teams”. This way, it is easier to manage the team to complete the sprint successfully.

What is a Sprint

A sprint is a short period of time when the team works to complete a certain amount of work. Sprints are the core of Scrum methodology and agile methodologies.

Choosing the right items to work on during the sprint is a collaborative effort between the Product Owner, Scrum Master, and the development team. The Product Owner defines the goal that the sprint should achieve.

Like all scrum events, Sprint also has a maximum duration. Normally, a Sprint has a duration of one month or less. The duration of each sprint is decided during one of the meetings for the beginning of the project.

Scrum meetings

The scrum methodology defines five types of meetings held at regular intervals:

  • Sprint Planning
  • Daily Standup
  • Sprint Review
  • Sprint Retrospective
  • Refinement of the product portfolio

Sprint Planning

A meeting that is not only part of the Scrum methodology, but of most other agile methodologies. It is held by the Development team, Scrum Master, and Product Owner. It always happens at the beginning of a new Sprint, with the purpose of establishing a work list, with the correct priority for each task, and also to align and motivate the team for success during the sprint.

The Project Owner will be talking about the backlog with the development team, presenting the amount of effort that will be involved. The team then decides how much of the backlog work can be completed in this iteration. Following the best practices of Sprint planning, the duration of this sprint planning can be maintained within 4-6 hours.

Daily Stand-up

An essential synchronization meeting in both Scrum and Kanban methodologies. It is an agile ceremony held for the development team facilitated by Scrum Master. The owner of the product and the interested parties may attend this meeting to answer the questions raised by the development team.

This meeting takes place every day preferably in the same place and is usually held in the morning. The goal of the Stand-up is to keep everyone updated on the general progress of the project.

Each team member is asked to answer 3 questions:

  • What did you do yesterday?
  • What will you do today?
  • Are there any impediments to your tasks?

The daily stand-up should be considered an informal meeting and should not last more than 15 minutes.

Sprint Review

As described in the Scrum Guide, the Sprint Review is performed at the end of each Sprint to evaluate the updates made in the software and adapt the Product Backlog, if necessary.

This is also an informal meeting, aimed at obtaining feedback and establishing collaboration. And since a project may have one or several sprints, the number of revisions will also vary.

During the sprint review, the team and stakeholders evaluate what was done at Sprint. Based on this evaluation and any changes in the Product Backlog during Sprint, participants contribute ideas for the next implementations to optimize the value of the final product.

This meeting should not take many more than four hours during a month of Sprint. For shorter Sprints, the meeting is usually shorter. The Scrum Master must ensure that the event occurs and that the participants understand its purpose.

Sprint Retrospect

The sprint retrospective is an opportunity for the Scrum team to evaluate itself and create an improvement plan to be put into practice during the next Sprint.

The sprint retrospective is usually the last thing to be done in a sprint. Many teams hold this meeting immediately after the sprint review. The entire team, including both the Scrum Master and the Product Owner, must participate.

This session is basically a meeting of “lessons learned” to identify potential pitfalls, past mistakes, and seek new ways to avoid those mistakes.

In other words, this meeting serves to discover what activities and “things” the team is doing well, what activities should be continued, and what can be done to improve.

This is a maximum three hour meeting during a month of Sprints.

Bottom line

The Scrum methodology is an agile process most used for product development, especially software development. Scrum is a project management framework, applicable to any project with aggressive deadlines, complex requirements, and a certain degree of exclusivity. In the Scrum methodology, projects advance through a series of iterations called sprints. Each sprint is usually two to four weeks long, conducted by Scrum Master.

Before, during, and after each sprint, meetings are held with everyone involved in the project including the Project Owner, Scrum Master, and the development team to establish new activities, priorities, and goals.

Write in the comments on how you used the Scrum methodology in some of your projects.

Leave a Reply

Your email address will not be published. Required fields are marked *

0 Comments