Most agile practitioners have heard about the importance of having your scrum teams in a shared, co-located space. The team collaboration and high-level of communication that co-location provides is a large success factor for agile projects. But what if you live in the real world and your team is geographically distributed. Although it certainly poses unique challenges, you can still provide your team with a collaborative experience by implementing some simple practices.
If you have the bandwidth for it, I highly recommend setting up a high quality webcam conferencing solution to provide a window into each location’s department. This should provide ample face-time with your team members and provide a great venue for impromptu meetings. You can glance over at the “window” and see if team members are chatting. You can chime in or they can call out to you when they see you back at your desk. This window also comes in handy for the next tip, the roll-away scrum board.
Roll-away Scrum Boards
Depending on how many scrum teams you have, you can roll scrum boards within the viewport of your tele-window just before the daily standup for that project. At the end of the daily standup, you can take a screenshot of the scrum board and post it on a team wiki or other web-based tool.
As a big advocate of XP practices, I cannot overstate how important it is to have at least some pair-programming sessions with other team members. Although difficult, it is possible to have a decent pair-programming session with geographically distributed team members. If you’re on a Mac, you can use iChat to share the screen with your partner. Make sure you’ve got some voice communication so you can decide who is driving and when. Two people moving the mouse in all different directions simultaneouly is rather annoying. On Windows, you can use the Windows Remote Assistance, Microsoft SharedView or download a third-party tool.
The most important factor to ensure success of your agile development projects in communication with your team members. When your team is geographically distributed you’ll find challenges in your execution. Make sure to be innovative and use the technology available to you in order to foster high levels of collaboration.