I recently had an opportunity to co-lead a session for Agile Charleston, a self-organized, local group focused on evangelizing agile software development methodologies and sharing experiences and best practices. We focused on a topic my team knew well—the challenges that distributed agile teams face.
Agile has been a buzzword for years, but today it has become the methodology of choice for developing software. The primary reason companies and teams prefer agile is that the twelve principles behind the Agile Manifesto have proven to be three times more successful than traditional waterfall methodologies, according to The Standish Group.
Beyond the Agile Manifesto’s twelve principles, the framework for agile development empowers the diverse environments of modern business. While some project teams can be collocated, many projects are undertaken by teams who are distributed geographically or organizationally. This article focuses on five challenges faced by these distributed agile development teams.
Challenge: Communication is a challenge in traditional agile environments, but that challenge is made even more difficult among distributed teams. The primary reason is that distributed teams are limited in their communication channels. For example, while collocated teams face each other in a stand-up meeting, distributed teams often face a speakerphone. Given that so much of communication is nonverbal, the distributed teams are disadvantaged by their circumstances.
Solution: One solution is to provide technological bridges for the teams to facilitate communication. According to research by the Human Computer Interaction Institute, the use of a “visualization tool made a significant difference, improving not only individual performance, but also collaboration.”
Knowing that communication is heavily dependent on nonverbal cues, the research shows that providing collaboration software such as Microsoft Lync or Google Hangouts increases collaboration. These tools are cost-effective and relatively easily to deploy across platforms.
Challenge:A critical issue for teams distributed across time zones is having access to each other with regards to core hours and communication tools. Core hours can be tricky—the greater the time differential, the more difficult the effort. Offshore teams that cannot establish overlapping hours will likely have a lower average velocity. By way of example, just the act of taking on additional tasks becomes a one-day event.
Solution: There are no shortcuts here. The only way to make distributed teams work well is to make sure team members are able to attend stand-ups. This often has two components:
- Ensuring teams have the communication tools mentioned earlier
- Establishing core hours
While this becomes difficult for teams in time zones that are ten to twelve hours apart, the ability for team members to communicate is a core agile principle and is not negotiable for success.
Teams can take turns alternating the burden of being the party who has to stay up late or get up early. Alternatively, it can be an individual’s decision, but these issues are best established as non-negotiable practices as a team is selected and forming.
3. Space Layout
Challenge: We traditionally associate space layout with collocated agile teams, but there is a profound impact on distributed teams as well. When team members are in a space that doesn’t easily allow them to connect with remote team members, communication and collaboration are likely to suffer. While technology bridges can foster communication and collaboration, they can only do so if the space they are in allows for it.