Scrum is a methodology that allows team members to address complex adaptive problems, while effectively and creatively delivering products of the highest possible value.
The methodology creators, Ken Schwaber and Jeff Sutherland, define Scrum as lightweight, simple to understand but difficult to master framework. What is so special about it that IT giants, such as Microsoft, Adobe, and HP, are practicing it? What is Scrum methodology, and what is Agile Scrum? Let’s get this sorted out.
1986 — Management experts Hirotaka Takeuchi and Ikujiro Nonaka published a paper “The New New Product Development Game,” where they used the word ‘Scrum’ to stress the importance of team collaboration for project success.
1995 — Jeff Sutherland and Ken Schwaber presented the methodology to the Object-Oriented Programming, Systems, Languages & Applications (OOPSLA) conference in Austin, Texas. They then published a paper called “SCRUM Software Development Process.”
2001 — Sutherland, Schwaber, and 15 other software development leaders created the Manifesto for Agile Software Development.
2001 — The Agile Alliance was founded, and Schwaber became its first chairman.
2002 — Schwaber, Mike Cohn, and Esther Derby founded The Scrum Alliance.
2006 — Sutherland created Scrum, Inc.
2009 — Schwaber left the Scrum Alliance to open Scrum.org, which offers the Professional Scrum Series.
What is Scrum in Agile?
You might have noticed that the term Scrum is teaming up with Agile. In fact, Scrum is a sub-group of Agile, in other words, a part of agile software development.
Agile is a set of values and principles that describe a team’s day-to-day interactions and activities.
Scrum is a specific methodology that follows the values and principles of Agile and also includes its own definitions and specifications, especially regarding certain software development practices.
The Scrum framework emphasizes teamwork and iterative progress towards a well-defined goal. The name originates from rugby, where Scrum is a method of restarting a game that involves players packing closely together with their heads down and attempting to gain possession of the ball. Likewise, team members adhering to the Scrum methodology, have a specific role but work towards a common goal.
The framework is a part of Agile software development and involves three actors: Product Owner, Scrum Master, and Development Team.
The Product Owner sets a clear direction telling the Development Team what is important to deliver. The Product Owner should understand the customer’s requirements and have a clear vision of the value the scrum team is delivering to the customer. Another role of the Product Owner is to balance the needs of other stakeholders in the organization.
The most important Product Owner’s responsibility is to put together all the inputs and prioritize the work. The PO is the only one who should do it because conflicting priorities and unclear directions from other people may reduce the effectiveness of the Development Team.
The Scrum Master‘s role is to glue everything together. It means, they help the Product Owner define value and the Development Team to deliver the value. The Scrum Master collaborates with the Product Owner in sprint planning and reviews ensuring that clear directions are set. They also serve the development team in the daily scrum meetings by ensuring that work is in progress. The Scrum Master’s major focuses:
- Ensuring that the Scrum team works in a transparent way, for example, by creating story maps and updating confluence pages with retrospective ideas.
- Coaching the Scrum team on breaking down work, describing clear outcomes, and reviewing those outcomes.
- Encouraging the Development Team to self-organize their work and try new practices.
- Reminding everyone in the team of 5 Scrum values: courage, focus, commitment, respect, and openness.
The Development Team doesn’t always consist of engineers. It may also include designers and writers, all the people who actually make the product. The Development Team’s responsibilities include:
- Delivering the work through the sprint in time.
- Ensuring transparency during each sprint. The team meets daily at the daily scrum to discuss each one’s work and highlight issues and blockers. The Scrum Master might facilitate the daily scrum, but usually, it is the responsibility of the Development Team to organize and run this meeting.
Scrum framework encompasses 6 successive steps: product backlog, sprint planning, sprints, testing and product demonstration, review, and next sprint planning.
- Product backlog. The Product Owner makes a list of work to be done according to priority. It’s necessary to determine what is a must-have item and must be done in the first place and which tasks are less critical.
- Sprint planning. With the product backlog on hand, the team starts with the highest priority items and determines how to achieve this objective. Collaboration with the product owner and stakeholder is crucial.
- Sprints. A sprint is a short period of time required to achieve certain objectives, usually from two to four weeks. To make sure the work is in progress, the Development Team and have daily Scrum meetings. If there are changes in scope, they are clarified to the team by the Product Owner. The Scrum Master should be working on one project at a time and focus on improving the team’s effectiveness.
- Testing and product demonstration. The result of every sprint is a product demonstration. The product should work, so full-cycle testing is very important. There are different ways to minimize its costs, for example, decrease the overall amount of user stories. When the work is ready to be delivered to the customer (stakeholder), the sprint is completed.
- Review. The whole team look back on the sprint, see what worked and what didn’t, and make changes in future sprints.
- Next sprint planning. When the ways of sprint improvement are defined, the team can concentrate on the next sprint planning and start all over again.
- Improved Product Quality. The key here is continuous checking in with your customers and stakeholders for evolving requirements during sprint reviews. Thus the Development Team will be able to change directions, if needed, much earlier and much faster than in a waterfall project.
- Faster ROI. Scrum methodology allows the team to deliver a satisfactory product in a shorter time frame.
- Reduced Risk. This benefit comes from more control over the development process. Everyone in the project knows what they are doing and when it should be done. Daily communications leave less space for unknowns.
- Customer satisfaction. Scrum intends to deliver real value in as quickly as two weeks or four weeks. The customer interacts with the product after every sprint, provides feedback, and feels more in control of the process.
On a final note
According to the 12th annual State of Agile report, 70% of software teams use the Scrum framework. Small wonder. The Scrum methodology has proven to address complexity in work making software development teams more efficient and reducing time to market.