Tuesday, 22 April 2008

On Split Development Teams and Communication

Managing communication between development teams split either geographically or by time-zone can be challenging. So why bother carving teams up? More importantly, how do you ensure effective communication takes place?

If we are only considering the software development process, ideally development teams would always be collocated. However there are often other factors which cause teams to be split. For example the necessity to provide support across time-zones or regions, or the cost of personnel being less in other locations.

So if you have to split your teams how do you ensure affective communication is taking place without having to write reams of documentation and micromanaging tasks? I believe the key is to keep the communication as dynamic and off-the-cuff as possible. Actively encourage verbal communication e.g. via telephone with concise follow up emails confirming technical details. Carbon copy interested parties, but not the whole world. I also believe web-cams can also be useful to encourage communication, and these can add an interpersonal touch which would otherwise leave remote teams feeling like robots carrying out allocated tasks.

Better still is the use of persistent chat software. You can set up a channel per project, and all historic communication is visible and searchable to everyone. Where there is a time-zone difference it is great to come in the next morning and see what has been going on the night before.

I'm told that Parlano makes a great persistent chat product called MindAlign. However they have recently been bought up by Microsoft who are integrating MindAlign into Windows Communication Server. As soon as MindAlign is available again I will trial it on some projects.

Another option is to use the discussion features within your architecture/modeling software. Enterprise Architect offers this type of functionality (which I'm currently trialing), as well as the ability to drag UML objects onto the discussion to offer in-context chat. Another great thing about EA is that the free read-only version still allows people to join in the discussion. EA seriously lacks in a very important area however; real-time alerting does not exist, the only way to know a new message has been posted is to refresh the discussion window.

0 comments: