Scrum is an agile framework for complex projects. It was developed in 1970 by Dr. Winston Royce to address deficiencies in software development. Royce was critical of sequential software development that basically worked like an assembly line with pieces of code developed by independent teams in a linear fashion. This approach failed as the software failed to fit together at times since it was developed by different teams at different times with little cooperation.
Another problem was there was no efficient process for any sort of revision. Software development is full of constant revisions due to feedback from customers or users, technical glitches, and market forces. In contrast, Scrum is built around reiteration of the product. The development team continually makes improvements based on feedback until the development team, product manager, and customers are happy with the result. The team then agrees on the next product issue to handle and applies the same process to it.
Roles and Responsibilities of Each Team Member
Scrum assigns workers specific roles to minimize confusion and conflict. The intention is an ego-less environment where the focus is on the product and not office politics. In Scrum, there are only three roles: Scrum master, product owner, and development team member.
The Scrum master’s primary responsibility is to ensure the team adheres to the Scrum framework and its rules. This results in duties such as screening contact between the Scrum team and other work responsibilities to ensure distractions are minimized, handling communications and issues between the product manager and development team, facilitating Scrum events, and managing deadlines.
The product owner is in charge of making the final decision on what the development team will work on and in what order, although he or she may solicit the input of the development team and customers. Additionally, the product owner is the final arbiter in deciding when the iterative process is complete. In some ways, this is similar to a product manager; however, the Scrum master assumes responsibilities related to personnel.
While the product owner and Scrum master roles are filled by an individual, the development team is composed of three to 10 people. The development team works on the actual product, releasing iterations in a rapid and continual fashion until the product issue is fixed. In Scrum, development teams are self-organising and work independently on iterations. The development team is given freedom within the Scrum boundaries to pursue its objectives in the way it desires.
Scrum Development Cycle
The development cycle in Scrum is called a sprint. Sprints are predetermined periods of about a month in which team members commit to a final product release. During a sprint, all of the team’s focus and energy is directed toward the sprint goal. Once the sprint begins, no adjustments are made to the sprint goal. The product owner gives the development team flexibility to achieve the goal in the best way it sees fit. These measures are to prevent a drift in focus, which can happen when goals are constantly revised, wasting time and resources.
In fact, all major decisions in terms of goals, intermediate steps, and deadlines are discussed in an eight-hour long sprint planning meeting. This meeting is organised and conducted by the Scrum master to ensure the development team fully understands the product owner’s requirements. Both sides negotiate to finalize the terms of the sprint goal. Then, the development team meets to determine how to meet these goals within the deadline.
Daily Scrum Meeting
The daily Scrum meeting is a 15-minute daily meeting in which the development team reviews progress made over the past 24 hours and plans the next 24 hours. The meeting is held in the same place and at the same time. The Scrum master makes sure the development team is holding these meetings, although he or she does not attend. This ensures the development team can speak openly.
During the daily meeting, each member discusses what he or she did over the last 24 hours to make progress toward the daily goal, what to do in the next 24 hours, and what obstacles stand in the way. The daily Scrum meeting is an integral part of hitting project goals as it creates urgency and focus from the daily deadlines and accountability.
Benefits of Scrum
The major benefits of Scrum are its focus on delivering results, the continuous loop between feedback from users and new iterations in response, the clarity of purpose for developers, and boosts in productivity. Agile frameworks such as Scrum address some of the issues with knowledge work where it can be difficult to measure a worker’s output and productivity. Scrum creates a short period of high-intensity work where developers are able to focus on one priority all day. This leads to tangible, measurable results.