views:

216

answers:

7

Situation: A team is currently working in the same office. Due to reasons unknown to the team members, they will have to be split up to work on different offices.

What are the possible obstacles for the project if team members are geographical far from each other?

+9  A: 

Communication. Period.

It's surprising how much slips through the cracks when you can't walk over to someone's desk and ask them what the decision was on item X. Someone needs to be put in charge to ensure everyone is on the same page. Email is not going to work. People don't get CCed, subject lines get all confused and a huge design decision can be affected by the tone of some obscure line.

Set up a central website location where all communication runs through. Phone conversations should include everyone or no one.

Spencer Ruport
Just want to add that 37signal's Backpack works great for my (small) team: http://www.backpackit.com/
Kevin
skype, google docs, better documentation, group IM...good luck
meade
+1. If they have any kind of technical aptitude, there is only one thing that matters when you are working with others and that is how well you communicate.Geographical separation makes that harder, so you will have to spend more time on it.
MadKeithV
+4  A: 

No blackboard :(

AraK
A: 

Bandwidth when exchanging info face to face or being in the same office is several orders of magnitude higher than when using a combination of instant messaging, wiki, issue tracking, phone, skype and screen sharing.

It's also much more difficult just to initiate the exchange of info when in different locations geographically.

Totophil
A: 

A fantastic article about exactly this subject: http://www.gamedev.net/reference/articles/article2663.asp

Justin Alexander
+3  A: 

Apart from the fact that communication is obviously more difficult, there can be a time zone problem.

For example I once worked on a project, where part of the team (on which I heavily depended) was in Novosibirsk(GMT+6) and I was in Moscow(GMT+3). So, when the guys at Novosibirsk came to work, they had to still wait for me for like 3 hours. In the evening, if i needed something terribly important -- whoops, no luck, they are already home and sleeping, have to wait for the next day.

Add to that the fact that we had lunch at different times and we ended up with 3-4 hours a day when we actually can communicate using VoIP or IM.

The company ended up moving those guys to Moscow eventually.

maksymko
A: 

I hate to have to say it, but accountability can be a problem, particularly if the team's manager is also remotely located. I've found this to in general be less of an issue on development projects and more of an issue when looking at IT & support teams, particularly when end users bypass issue tracking and help desk systems.

Richard Dunlap
A: 
  • Questions/Decisions pertinent to the domain when the lead/architect is in a different TZ.
  • Billage loss when someone is held-up on a task/bug because of the above
  • Code breakage when someone in another timezone commits, and nods off ( Yes, it has happened )

Like Spencer said, a central wiki ( we use confluence ) helps a great deal. Integration Servers, Well defined build rules, VCS scripts (+: all play their role

It boils down to communication, though...

Off the top of my head -

  • The developers should have more than 2-3 tasks assigned so the day is not wasted when they can not proceed on one task.
  • The Lead should be able to define tasks with sufficient granularity.
  • Allocate closely Linked tasks ( preferably ) within a particular timezone.
  • Get the architect to post documents with enough detail ( Get the newest member on the team to review the document, along with one senior )
Everyone