Daily Scrums in a Distributed World
Agile Project ManagementThe Daily Scrum meeting is a core practice in Scrum, and one of only three schedule-related practices (the others being the Sprint Planning and Retrospective meetings). Scrum emphasizes the need to minimize overhead, since overhead takes time away from development. Team meetings entail significant overhead, since they pull all team members away from productive work. For this reason, we expect team members and others to collaborate as necessary, meeting informally two or three at a time, to resolve questions and issues. However, informal collaborations don’t provide a common awareness of the project status across the team, and increase the likelihood that critical issues may not be handled quickly. For these reasons, Scrum prescribes a Daily Scrum meeting for the whole team, but keeps the meeting short.
The Ideal Daily Scrum
The Scrum Master facilitates the Daily Scrum meeting. His job is to get the team and Product Owner together, and get from each team member three pieces of information:
- What I’ve done since the last Daily Scrum
- What I plan to do before the next Daily Scrum
- What issues I know of that require assistance from someone else to resolve
The purpose is not to resolve issues in the meeting, but to acquaint everyone with the current status of the project, and to call out the need for collaboration to resolve issues. Issue resolution occurs after the meeting, when the people involved get together for the purpose.
An experienced team of six people can easily complete a Daily Scrum meeting in less than fifteen minutes.
Daily Scrum Meetings for Distributed Teams
Daily Scrum meetings are more difficult to arrange when team members are not co-located. Distributed Scrum meetings require teleconference facilities, including phone conference (at a minimum), Web conference, and video conference (if possible).
In the simplest case, a distributed Daily Scrum meeting is identical to the local version, except that the communication occurs over the teleconference system. Unfortunately, two factors can conspire to make Daily Scrums difficult:
- Time-zone differences
- Language differences
Coping with Time-Zone Differences
Time-zone problems are minor if the outlying participants have at least two hours of overlap in their standard work days. For mixed East-Coast / West-Coast teams in the US, for example, the time difference is three hours, and team members have five overlapping work hours in which to schedule meetings.
Trans-oceanic teams have more difficulty. Teams split across two sites separated by more than eight time zones have no overlapping hours, and there is no convenient way to arrange a Daily Scrum meeting. The practical ways to handle this are:
- Pick a time that inconveniences one site (usually, the one with fewest members)
- Have separate Daily Scrums for sites, with Scrum Master recording both
- Replace short Daily Scrums with longer twice-weekly status meetings
The first option is the simplest, and most straightforward. The problem is that it makes life hard for part of the team every day. The second makes life easier for most members, but jeopardizes the common awareness and quick response to issues. The third also makes life easier for most members, and may be unavoidable when the difficulty of getting to the meeting is significant for some members, but it also jeopardizes quick response to issues.
None of the alternatives is attractive, because there is no attractive way to collaborate closely with people who work several thousand miles away. It is better to avoid the problems by having team members co-located, or at least with some common working hours.
Coping with Language Differences
Daily Scrum meetings become impossible if team members share no common language. Consider the case where members in a US “headquarters office” speak English, while those in a “branch office” in China may not all speak English. Even those in the remote office who do speak English often read and write it better than they speak, and may not feel comfortable enough to speak in meetings.
Recommendations for dealing with language differences include
- Have a local facilitator at the remote office who speaks both languages, and guides or interprets as necessary
- Have all team members submit their three pieces of information by writing (e.g., email, Wiki) in advance, for review and discussion at the meeting
Distributed Scrum can work, and distributed Scrum meetings can work, provided that enough care is taken to cope with time-zone and language differences. It is important to weigh the impact on communication and morale against expected benefits before making a decision to set up distributed teams.
About the Author
Kevin Thompson, Ph.D., is a Certified Scrum Practitioner and Project Management Professional. His Scrum in Practice course trains teams, Program Managers, and PMO personnel on the nuts-and-bolts of how to implement Scrum for software development.