According to the 9th Annual State of Agile survey, the majority of organizations (66%) use scrum. And among agile projects, 85% use scrum. As organizations using scrum begin to mature, scaling beyond the pilot scrum team becomes a common challenge.
Scaling agile techniques can mean several things. Expanding the use of agile techniques throughout the organization is one kind of scaling. This is more about helping the rest of the organization see the value of scrum’s approach to exposing progress, inspecting and adapting for continuous improvement and early and frequent delivery of value to the customer.
Scaling also refers to projects that require more than one scrum team working towards a common product release. Coordination, communication and dependency mitigation is what this type of scaling is about.
The same survey reveals that the majority of organizations (66%) use an agile technique known as scrum of scrums to scale agile for multi-team projects. Scrum of scrums may work for some expansions of scrum outside of IT, but we mostly see it used for scaling multi-team projects.
Communication issues are usually the first indicators that coordination between teams needs improvement. Scrum of scrums is a coordination model that is simple and requires very little overhead.
Figure 1: Scrum of scrums model
Scrum of scrums facilitates effective integration, coordination and collaboration among scrum teams using vertical slicing (i.e. separate teams implementing all layers of a vertically sliced set of product features). See Figure 1. Each role of each team has a daily coordination opportunity with people of the same role in associated teams to coordinate priorities and dependencies and identify impediments that affect the broader program team. The scrum of scrums for each role is facilitated by the integration-level person for each role. Thorough integration and release efforts establish a consistent and regular scrum of scrums model. More Information can be found in the “Scrum for Dummies” book written by Mark Layton, Founder and CEO of Platinum Edge.
Scaling challenges are unique to each organization. The more comprehensive a scaling framework, the less likely it will work for every situation. When addressing scaling challenges, common agile practices that deal with scaling should be used only for the challenges faced. Implementing a broad, prescriptive, scaling framework usually adds more complexity and overhead than necessary. That’s why scrum of scrums is the most commonly used technique. It addresses a specific inter-team communication challenge—one that is common for interdependent teams as they start to grow into multi-team programs.
No matter what the scaling need is, remember that scrum is fractal and it should be able to stay pure at any scale. Be sure to inspect issues scrum exposes, then apply a solution supported by agile principles for that specific problem. Inspect and adapt throughout as your product grows and evolves.