Warning: Synchronous communication tools can slow you down
Posted by Andy Singleton on Thu, Dec 27, 2007 @ 11:45 AM
A customer writes: "I'd need to understand how we'd effectively communicate our requirements without meeting in person. I use GoToMeeting a lot, but I'm not familiar with other techniques that allow more interactive meetings that are effective substitutes for 'being there.' In my experience, the use of "interactive", or synchronous tools is not related to the success of a project, and may even be damaging. You will get good results if you learn to effectively use asynchronous communication media like ticketing systems.
Synchronous communication is means that the person you are communicating with responds immediately, or "synchronously". Synchronous media include meetings and in-person discussion, whiteboarding and screen sharing, telephone and skype calls, IM, and chat.
The alternative is asynchronous communication, where you post a message that someone can respond to later. Common asynchronous communication media includes email, voicemail, forum postings, tickets, mockups, code commits, and daily or continuous staging builds.
The most effective communication is synchronous communication (meeting and talking) between people who work in the same office. This works better than any of the asynchronous channels. However, if you aren't in that situation, then synchronous communication quickly loses its effectiveness for software teams. Let's consider the issues that erode the effectiveness of synchronous channels:
* Frequency. More frequent communication is better. It's hard to bring people together for a call or meeting, and it doesn't happen very often.
* Time commitment. Team members lose valuable working time when they sit in meetings. It takes less time to go through a stack of messages with equivalent information. You may or may not consider it a good thing, but modern workers have learned to process messages quickly.
* Sharing. If you share information with your entire team, people can adapt and contribute more easily. A phone call or two-way synchronous communication is not shared.
* Precision. More precise communication is better. Written tickets need to be precise. Mockups and prototypes that are actually committed and reviewed are precise and accurate descriptions of a system. Synchronous conversations are often not precise.
There is one other statistical problem with synchronous communication. Telephones are the most common synchronous channel, and phone time indicates problems. I'm not saying that phone calls cause the problems, but they are correlated with bad things. When I look at a project that does long and frequent phone calls, that project is almost always in trouble.
The oddest feature of the synchronous communication world is the insignificance of whiteboarding, screen sharing, and other multimedia techniques for "web meetings". Tools for web meetings have been around since the beginning of the Internet. They seem like a great idea, and they have gotten pretty good, but people rarely use them. I live on the internet, and I estimate that less than 1 in 200 of my online communications involves a synchronous multimedia tool. I think the major problem is that it is hard to arrange a meeting. Perhaps these tools will become more popular if we implement them as persistent, drop-in-any-time rooms. Or, maybe they just aren't important.
What IS important is having channels for asynchronous communication that are frequent, precise, and accessible.