My coworker Jane shared an interesting article on how to manage conflict in virtual teams that got me thinking about some of the challenges I've seen with virtual and distributed teams. The article points out that successful virtual teams tend to have online discussion boards in an shared virtual workspace, which is probably quite true, but it implies that such tools are the key to avoid or manage conflict.
Communication is the answer to avoiding or managing conflict, and an online discussion board is just one way for team members to communicate. It's been said that software development is a cooperative game, so when team members are not collocated, cooperation is more difficult. I encourage teams to use the richest synchronous communication tools possible because it helps to ensure shared understanding. It's quite easy to tell Team Member A to pick up the phone and call Team Member B who is hundreds of miles away instead of sending an email, but it won't work if Team Member A cannot make long distance calls from his desk and he does not have cell phone reception because he sits in the basement of the building.
If you have a virtual or distributed team, make sure its setup for success by having the right communication tools available. Conflict will happen in any team, and the ability to communicate openly person to person is the only way to resolve it. Effective communication requires relationships, and relationships are built on regular communication.