The Scrum Methodology is based on the Rugby term for individual groups collaborating together to form a powerful whole. Scrum in project management is an agile management process to coordinate teams of approximately six or seven people who can be located anywhere in the world. The Scrum Methodology brings a cohesiveness into what otherwise would be many disparate groups. Initially, the Scrum Methodology was intended for the management of software development projects. Its use has now been extended to running software maintenance teams, or as a program management approach.
The scrums (teams) are made up of the Product Owner, the Scrum Master and the team members. The Product Owner is responsible for representing the interest of the client for whom the product is being made. The Scrum Master is the liaison between the team and the Product Owner. The team itself is comprised of a cross-functional mix of personnel, which can include software engineers, programmers, Q/A specialists and the like. While the Scrum Master is responsible for facilitating the team, the team has total control over how they will perform their work.
The first step in the Scrum process starts with the Product Backlog, which is a prioritized list of software requirements for the product. While anyone can add items to the Product Backlog, the Product Owner has the final say on the Product Backlog.
The next step in process is the Sprint, a 15-30 day period during which the team creates an increment of potential priorities. Each team chooses from the list of priorities and decides on their Sprint Backlog. The Sprint Backlog is a list of tasks that the team believes they can finish during the Sprint. During the Sprint, tasks are broken down into specific chunks of time. Each day, the time remaining on each task is updated. When the time remaining on the Sprint reaches zero, the team will provide a demonstration of the software to all involved.
Scrum Daily Meetings
During the course of the Scrum, a daily meeting will take place to update everyone on each team’s progress. A summary will be given of accomplishments since the last meeting, future plans and reasons why something was not accomplished. This allows the Scrum Master to see where each team is and possibly offer help, if required.
These daily meetings should be a fixed amount of time, usually 15 to 20 minutes maximum. An agenda made prior to the meeting and distributed to all parties will help keep the meetings on track and within time constraints. To ensure that there are no delays, Scrum meetings should be held at the same time and use the same method of communication. If the teams are international, a compromise time should be made. This way no one feels that they always have to go out of their way to accommodate everyone else.
During the meeting, each team member answers three questions:
- What have you done since yesterday?
- What are you planning to do by tomorrow?
- Do you have any problems preventing you from accomplishing your goal?
To show how much time is left on a particular task, a Burndown Chart is used. This helps determine the amount of time still needed to complete a project. While the goal is to consistently decrease this number, the estimates will toggle up and down as new work is added or completed. The Burndown Chart can also assist in Release Planning. A release date can be estimated based on time information from the Burndown chart.
There are many advantages to using the Scrum Methodology:
- Communication can improve across all the teams.
- It provides for an open forum, where everyone knows who is responsible for which item.
- Scrum can increase team efficiency by as much as 20 percent.
- Problems are more transparent.
Disadvantages of Scrum
While a whole project can be intimidating, using the Scrum Methodology helps break it into smaller, manageable parts. Above all, Scrum gives the project stakeholder, who is paying for the product, the advantage of seeing the progress being made every day. They are able to build a relationship with the people involved and they get constant feedback from the Scrum Team.
A few drawbacks to the Scrum Methodology are:
- Decision-making is entirely in the hands of the teams.
- There has to be constant, hands-on management.
While Scrum is not perfect, it is definitely a way to maximize efficiency, improve communication between teams and provide for an open approach to tackling a project.
Figure Two is courtesy of https://www.mountaingoatsoftware.com/sprint_backlog.