Distribute the team? Distribute the pain!
We’re seeing an increasing number of clients with distributed Agile development teams. Although this runs somewhat counter to simplistic views of Agile development practices, which focus on co-located teams, it is a much more realistic reflection of actual global development practices. Global, agile teams are here to stay. As a result, we need to extend and adapt existing agile principles and practices, and, at times, create some new ones.
For a long time now, myself and the other consultants here at Enthiosys have been telling our clients that if they distribute the team, they have have to distribute the pain. By “pain”, I mean all of those aspects of Agile that are relatively painless in single, co-located teams that become can become quite painful when the teams are geographically distributed. Fortunately, by distributing the pain, you’ll find that global, distributed Agile development is much less painful.
Here are three areas of pain for your consideration.
Distribute the pain of the daily stand-up. Suppose, for example, that your development team has development centers in Silicon Valley, Israel, and India. Making one team get up early, or one team stay up late, iteration after iteration, is not going to result in a sustainable pace. Instead, create a plan to distribute the pain associated with the timing of the daily standup. And please, don’t assume you know which time a given team is going to prefer. Talk openly about the time of the daily standup and pick a set of times that work for the given teams.
Distribute the pain of release planning. While good distributed Agile teams can create solid iteration plans without being face-to-face, it is really challenging (read: nearly impossible!) to do good release planning without being face-to-face. The problem is that it is often too easy for Product Managers to always want to do release planning in their “home” location. This is a poor choice, and we recommend that release planning be eventually conducted in each of the major development centers. And yes, the increase in travel costs to bring the entire team together for release planning is well worth the investment you’re making in effective communication.
Distribute the pain of infrastructure. Every software development project has a unique set of “infrastructure” that is required to make agile work. This infrastructure, which ranges from your test automation framework to your source code management practices, requires some number of dedicated resources to tend and manage the same. We recommend finding ways to share the pain of managing and continuous improving this infrastructure as a shared task across all of the teams associated with the development effort.
And yeah, I practice what I preach! I’m a Board member of the Agile Alliance, global, non-profit organization devoted to promoting Agile practices. I’m proud to say that the Board has members from around the world and that we’re working hard to improve our representation of Agile practices around the world. Historically, we’ve scheduled roughly one face-to-face Board meeting each quarter. Because the meetings tend to be held on a Fri/Sat, all of the Board members experience some discomfort, as we have to be away from our families on a weekend. International board members, of course, experience quite a bit more pain. Our next Board meeting is scheduled for Jan 16/17, 2009, in Paris, France, the home city of Board Member Laurent Bossavit. Am I thrilled to be spending nearly another week and certainly another weekend away from my family? Of course not. But they understand that I’ve made a commitment to the Board, and that I’m also committed to sharing the pain, because the benefits of a face-to-face Board meeting are so great that they overcome the pain of the travel.
Global, distributed, Agile development is here to stay. Since the chances are good that you’re going to be working in one sometime in your career, get ready to share the pain, so that you can share the rewards.

November 6th, 2008 at 06 Nov 2008
[...] Distribute the team? Distribute the pain! [Enthiosys] [...]
November 18th, 2008 at 18 Nov 2008
[...] Distribute the team? Distribute the pain! [...]