In preparation for Agile 2012 in a few weeks, I’ve decided to talk about collocation. If you watch as many webinars as I do, you’ll notice that many Agilists encourage teams to become collocated – a concept that encourages scrum teams to work together in the same location – because of the many benefits to this concept. 
Agile teams require high bandwidth communication so they can receive rapid feedback. In addition teams should be cross-functional and self managing. This means that each team should be staffed with developers, testers, doc writers, etc. This enables them to complete a user story without having to go outside the team. The idea is to avoid silos and delays.
But my problem with collocation is not about the benefits, but with this idea that we have to all work in the same location to get the benefits. Think of how many companies work in a distributed nature – lots of startups now work distributed. How are these teams able to deliver software so rapidly? Is it realistic to think that while organizations have been moving to a distributed model for the last 15 years, they would suddenly move back to gain benefits of collocation?
I believe you can have your cake and eat it too. Collocation can be more of a mindset as opposed to physical location. Is it beneficial to have everyone in the same office? Yes, of course. Do we have all of the tools we need to pull this off without actually being the same location? Absolutely.
One method is to apply the concept of virtual co-location. This involves staffing the team with every member they need in a cross functional way, but without being in the same location. This avoids the problem of silo-ing functions to whole teams, and encourages distributed members of the organization to communicate more often. There is no reason not to do this – think of all of the communication channels we have now a-days. From FaceTime, to Skype, development teams can stay in communication with each other in real time. Here at AccuRev, we do virtual scrums via video chat, enabling our teams to be crossfunctional and virtually co-located.
You can still break down the virtual cube walls, without having to bring those teams together. Yes, I believe virtual co-location is possible.

