Almost any Agile development book will tell you the advantages of co-located teams and face-to-face communication....
However, with the advances in technology and tools, distributed Agile teams are growing in numbers, and, in fact, have advantages as well. In part one of this two-part article, we looked at several areas in which Agile’s strong emphasis on face-to-face teaming may actually be hurting organizations. Modern day tools allow for more flexibility and mobility, and organizations that don’t take advantage of these may be limiting their employee base. In part-two we look at communication between team members and find that sometimes a distributed team can result in stronger project documentation.
Documentation provides a paper trail of shared understanding
There’s no argument that face-to-face communication is best for reading body language, but we certainly know that there are many cases in which we have different interpretations of a conversation. With documentation there is a paper trail that often provides what is necessary to make sure everyone is on the same page. If a misunderstanding of a requirement is made, the team can go back to the document for understanding rather than referring to a conversation in which there may be debate about exactly what was said.
Agile expert Lisa Crispin says, “One of my teammates has started taking notes at meetings with some magical system where the pen records audio, and the notebook keeps track of where in the recording each note was taken. She puts the notes and the recordings on the wiki (I think it even translates her handwriting to text). It’s great for our remote team member, and for going back to remember what was said.”
A picture is worth a thousand words
There are also times when not everyone’s native language is the same, when it is easier to understand one another with the written word or with drawings. Documentation allows us to capture important details that may be forgotten or misunderstood if we only have a conversation.
And with today’s technologies, many tools allow us alternative ways of reaching shared understanding, using graphical interfaces, diagrams, pictures, tests or mind maps. Sometimes the tools may even have the capability for these representations to convert to working applications.
This isn’t to say our modern-day communication tools should entirely replace conversations; however, used in conjunction with conversations, tools may provide a more accurate representation of a shared understanding.
Documentation can be shared
Finally, documentation can be shared with anyone. If you rely on face-to-face communication, the only way to share the information is to pass it along, and like a game of ‘gossip,’ each version is going to get a little different.
Having a common document that the whole team can work from, regardless of where they are located, will prevent the misunderstandings that can occur when your primary form of communication is face-to-face.
Multiple sources of information
Another issue with co-located teams is that often the conversations that can happen around the white board do not get transferred into a tool that everyone has access to. Agile teams often talk about the transparency that is experienced by having a big visible board that people see as they walk by.
However, only those people who walk by that big visible board will see it. By having all the important data in one place that every team member can access, regardless of where they are physically located, we are not limiting our information to only those in the room. And if the latest data is only on a white board, rather than in a common tool which is accessed by all, there will be more than one source of data, which can lead to confusion.
Crispin says, “Our remote teammate can’t always see the big visible chart while we’re drawing it, though usually we take photos and send right away. But we have found ways to record these things on the wiki. It takes a LOT of discipline to make sure remote team members are in the loop. We find it worthwhile.”
The importance of the conversation
Though certainly there can be benefits in many of the new ways of communicating, Agile’s emphasis on having the conversation is certainly valid and important. Crispin says, “I feel the ability to get a shared understanding of a feature or user story by having a conversation with all developers and stakeholders present (in person or by videoconference) is important. I also want to record the details, but the conversation and ability to ask questions and propose ideas is essential.”
Janet Gregory, co-author with Crispin of the book “Agile Testing: A Practical Guide for Testers and Agile Teams,” responds with an enthusiastic, “Yes, yes, yes!”
Gregory warns, “Documentation is only as good as the people who write it, and those that read and comment back on its validity.” This is a good reminder that documentation should not be a substitute from having the up-front conversations needed with the appropriate stakeholders.
Certainly face-to-face communication and co-located teams have advantages, too. There is no doubt it is easier to communicate and build strong relationships with face-to-face teaming. However, organizational leaders need to be aware of some of the pitfalls from focusing so heavily on face-to-face communication, and they need to ensure they are staying current in a world which is becoming increasingly mobile. Keeping documentation up-to-date requires discipline. Distributed teams need to work harder at communicating effectively. The key is to use effective communication and collaboration appropriate to your situation and team and to have the ability to do so, without physical boundaries.
Follow us on Twitter at @SoftwareTestTT and let us know what you thought of this article.