The Scrum framework is ideally suited for organisations carrying out project development using small teams. A typical Scrum team consists of a product owner, a scrum master, and up to seven to eight cross-functional development team members. It is easy to implement Scrum in a project when the team size does not exceed ten or twelve members, at the most. However, at times, organisations have to develop larger projects and require additional developers to complete the project in time. In such cases, the team size would naturally have to increase to include additional team members.
Now, according to the Scrum process, each event in the framework is time boxed and should not exceed the duration specifically allotted for it. For example, if the team consists of eight members, and the daily scrum meeting is to extend for a maximum of fifteen minutes, each team member would get approximately two minutes to provide the daily feedback. This duration is sufficient, as the main objective of a stand up is to briefly discuss what the team did yesterday, what it proposes to do today, and whether the team faced any problems the previous working day. Each team member can summarise these three questions in the time allotted to him or her.
Now, if we take up a scenario in which a large team is participating in the stand up, say eighteen developers in all, it would mean that each team member now has less than a minute to give the feedback. It would be very difficult to avail a proper understanding about what the entire team did the previous day since the team members have been unable to report their complete status owing to a restriction in the daily stand up time. Feedback plays a very important part in the inspect and adapt principles which are so very important in Scrum. When the feedback system is hampered, sufficient inputs are not obtained from the process flow, and Scrum may start losing its effectiveness in supporting the self-correction activities.
So, how can organisations develop big projects requiring large development teams using Scrum? Scrum of Scrum provides a viable alternative of using Scrum to develop projects requiring large teams.
Introduction to Scrum Of Scrums
It is not feasible, and not practical, for a big number of team members to work together and collaborate using traditional Scrum. If a large team were to use Scrum, the team would require a large hall to conduct the daily scrum and each member would have seconds and not minutes to provide the feedback. If manual Scrum methods are followed, the team would also require a Scrum board the size of a small theatre screen to pin the story cards, and even if it were so done, each team member might require a stool or a small ladder to climb up and read the current sprint status during the daily sprints. The review and retrospective events would not be able to gather feedback from so many members. The inspect and adapt principles would be compromised upon since the volume of feedback would be too large for the team to handle and a special process might have to set up to analyse and summarise the feedback received from each team member. This would take a lot of time, and the efforts put in would end up being counterproductive.
Scrum has to be scaled up to include larger teams if big projects are to be developed. In Scrum of scrums, the entire Scrum team is divided into smaller groups, with each group consisting of between five to ten members. Each group functions as an independent Scrum team. Moreover, each team selects one person – usually the Scrum master – who represents the team. The representatives from each of the teams participate in the Scrum events on behalf of his or her particular team. Just as the Scrum process supports the review and retrospective events, a special “parent” process supports the same events, however with certain subtle differences.
The Scrum of scrum process proceeds normally as per the traditional Scrum process. However, the team representatives in lieu of the development team members attend the events. The representatives report the statuses, completion levels of the sprint, impediments faced by the team members, and next steps to be planned, and to be taken by their respective Scrum teams. Technical problems and issues are resolved through collaboration and joint efforts of all involved teams. The individual teams might have to negotiate with respect to the responsibilities accepted or given, and ascertaining the authority levels. The Scrum of scrum may maintain a unique product backlog of its own to track the group teams’ activity.
The Scrum of scrums is also known as a "meta Scrum"