Kelly Waters is Web Technology Director for IPC Media, one of the UK's largest publishers of consumer magazines and web sites. Kelly has been in software development for about 25 years and is a well-known narrator of agile development principles and practices, as a result of his popular blog 'Agile Software Development Made Easy!' (www.agile-software-development.com). Kelly is a DZone MVB and is not an employee of DZone and has posted 40 posts at DZone. You can read more from them at their website. View Full User Profile
It is sometimes said that agile software development methods, such as Scrum, are ideal for small projects being delivered by small teams.
Personally I would certainly agree that Scrum is ideal for small, multi-disciplined, co-located teams, working on a common purpose.
However, these days we hear plenty of examples of larger companies using Scrum on a fairly large scale. I seem to recall Yahoo in particular once stated they were using Scrum on a project with 700 developers!
course it is relatively straightforward to scale Scrum up when the
teams are basically a collection of small unrelated teams, each using
Scrum but working on different projects. But what about when you need a
very large team working on a single project, or on closely related projects in a large programme?
One technique for handling this - although I'm sure it's not enough on it's own by the way - is a technique called 'Scrum of Scrums'.
The concept is simple. Each team meets every day and holds their daily Scrum as usual. One or two representatives from each Scrum team attend a higher level Scrum
to coordinate across teams. And on very large teams, one or two
representatives from the higher level Scrum attends an even higher
level Scrum, and so on.
It means some people need to attend two Scrums, but the Scrum of Scrums technique scales up very well and is easy to see how important information can be quickly cascaded all the way up the line on very large projects.
the information that needs to be communicated, and the frequency of
communication, shifts as you go up the line, and the process for a Scrum of Scrums needs to be slightly different from a usual Scrum.