What is Scrum?
During software production, one of the most important issues is efficient operation — meaning meeting client requirements, adhering to time frames, and good organization of team work. IT projects can be complicated. The two most common situations are when the client is not sure what they expect, or expects everything. In both cases, the most important task for the project team is to present the client with business-useful solutions, while also keeping in mind implementation time and costs. Scrum works excellently in precisely this type of IT project.
What does the Scrum Process look like?
We create a team of people with the right skills. Tasks are carried out in a Sprint (iteration), which should last from 1 to a maximum of 4 weeks, although the most common in practice are 2-week Sprints. Each Sprint should bring new value that is noticeable to users.
The Development Team organizes its work for a given sprint. Within a single iteration, we have the following meetings:
- Planning — task allocation,
- Daily Scrum — daily meetings,
- Sprint Review — consultation of the plan with the client or analysis of the working product,
- Sprint Retrospective — analysis of the process, tools used, and introduction of any additional changes.
Roles in Scrum
The Scrum Team consists of 7 to 11 people fulfilling three roles: Product Owner, Scrum Master, and Development Team (a collective role). The scope of their responsibilities is defined as follows:
- Product Owner — a person with business knowledge who is also familiar with the target market for a given product. They are responsible for defining the product, managing the functional scope and priorities of individual tasks reflecting the business value translated into specific functionalities. The Development Team does not carry out any work that was not commissioned by the Product Owner, and the Product Owner is not a programmer. It is also worth being aware that the Product Owner represents the Stakeholders who, in turn, control the budget necessary to carry out every development task — not only in Scrum, but in any other project methodology.
- Scrum Master — a person who thoroughly understands the Scrum methodology. They are primarily responsible for communication within the Team and resolving any crises, as well as ensuring the proper flow of meetings and the comfort of programmers. If process obstacles arise, the Scrum Master removes them. An extremely important function performed by the Scrum Master is also collecting Product Owner approvals for completed tasks. The Scrum Master is aware of the significance and practical usefulness of individual practices used in the methodology.
- Development Team — according to the methodology, the Scrum Development Team is a self-organizing structure, and the competencies of its members ensure the ability to deliver the product without the involvement of outside parties. The team consists of 7 +/-2 people, excluding the number 8. Why is 8 not a good idea? We encourage you to explore this question on your own.
What are the advantages of Scrum?
One of the most important advantages of Scrum is the constant contact between team members. This allows for a quick response to any changes. This makes it much easier to predict the scope of work and its order. Scrum is above all a universal solution. It works wherever team management is necessary — provided it is properly implemented. It gives a great deal of freedom of action. It is not a ready-made solution, but an outline of actions, procedures, and tools with which the best product can be created.
A very important aspect is also minimizing delays during project implementation. Thanks to clearly defined time frames for individual activities and daily monitoring, you can easily control the progress of work.
