In our previous blog post, we wrote about Agile, a philosophy for managing projects and teams. In that text, we mentioned Agile methods, one of them being Scrum. Scrum is, undoubtedly, one of the greatest Agile methods. It found its way into developer's hear and we can't get enough of it! Here's why we use it so much.
What is Scrum?
Ah, Scrum, Agile's child. Usually, project management tools and methods determine what needs to be done, when, by whom etc. With Scrum, it is also the case, but in an organized way.
As you know by now, Scrum is a subset of Agile.
Precisely, Scrum is a flexible and simple Agile process framework. This means that it consists of small processes that need to be followed. This Scrum feature directly affects team's productivity.
What does Scrum mean?
It is actually funny - the name was taken from rugby, aka the American football. At the beginning of every rugby game, teams stand across each other and when the ball is thrown in the middle, they have to fight for it and this is called Scrum. That means that all team members work together on getting the ball and achieving the goal.
Why is Scrum so special?
Because it makes a difference with these 3 things:
- there are 3 main roles,
- the project is divided into sprints,
- Scrum cares for team's stakeholders.
When it comes to roles, the three main roles are the product owner, Scrum Master and team members. Product owner stands for the client or the one that orders a product from the team. Scrum Master is the person that manages the team, their communication, productivity, and the most important - takes care that everyone understands the goal of the project and tasks (Scrum Master is not your typical Project Manager). Teams are, most commonly, development teams that work on creating a product. The team usually consists of:
- developers,
- architects,
- analysts,
- QA analysts and testers,
- UX/UI designers.
Sprints are iterations, that last about 1-3 weeks. After each iteration, the team sends a product to the product owner. Caring for stakeholders is one of the most important things in Scrum. Stakeholders, most likely clients, inform the team about the possibility of making improvements in features.
Scrum in steps
Since Agile is so popular in IT, Scrum found its way, as well. In order to conduct Scrum activities in the right way, Scrum Alliance wrote directions. There are several steps of Scrum:
- Creating a product backlog
- Sprint planning
- Scrum daily and Scrum Master doing his job
- Delivering a product
- Sprint review
- Repeat again
Creating a product backlog
Product owner, or the client, that team agreed to work with, has to create a product backlog. Basically, this is a list of features a product should have. This list should describe the product in details.
Sprint planning
After receiving the backlog, the team starts planning working iterations - sprints. In this period, the team should set the timeline in which project should be done.
Scum daily
Now, that sprint has started, sprints are conducted daily. Sprints usually last up to 2-3 weeks. Going through the backlog, features that are on the top of the list have the greatest priority.
The importance of Scrum Master
We made this a separate number on the list because of its importance. Scrum Master should daily manage the team and make sure that everyone is familiar with the project goals and that iteration's goal.
Delivering a product
After those two or three weeks, the iteration is done. This means that team should deliver the (unfinished) product to the client. It is probably not completely done just after one sprint, but the first top things that client required are implemented.
Sprint review
After every sprint, team needs to make an evaluation of that process. Simply going through the iteration as a form of retrospective meeting. What has been done, have there been any mistakes and what are the lessons.
Replay
The team should conduct sprints until the project is completed aka until the product doesn't need more improvements. Replay, all over again.
Scrum benefits
Scrum benefits are actually Agile benefits. Sooo many benefits and here are 4, the most important ones:
- increasing the productivity level,
- better coping with the change,
- more control,
- better estimates.
Productivity raises so much! Everyone knows what their task is, when is the due date and what is the priority.
Coping with the change is so important. Since Scrum is so flexible, if a client makes a few changes, it doesn't represent a problem.
Scrum = success
There is no secret that Scrum makes team members cooperate better while being focused on the goal. The best thing - it brings good for both sides - the client and the team.