Best practices for working on requirements for distributed teams
What are some best practices for working on requirements if you have a distributed team?
When you register, you'll receive targeted emails designed to keep you informed of the most relevant information on Agile development, application security, testing & QA, software requirements, and more.
Hannah Smalltree, Editorial Director
These days, distributed teams are often the norm rather than the exception. While co location is preferable, especially for an agile approach, we are as likely to work with someone overseas or in another building as we are with someone who works at the next desk or on the next floor. Teams which find a way to be physically in the same place for the first few weeks of their project are able to gain common project context and establish the person-to-person connections which help them work more effectively with each other once they return to their home locations. When it is not cost effective to bring all team members together at the start of a project, the next best alternative is identify a few individuals who take on the responsibility of being a context/rationale resource for those who will not be able to join the in-person start up.
Once team members are back at their home locations, remote conferencing, video conferencing and instant messaging are simple powerful ways to be in one place as a team, even when you are not in one physical location. Whether you work with user stories or use cases or classic requirements, setting aside time to work together provides much more value to the entire than using a hand-off approach to requirements. When someone with an important business role or technical role cannot be physically present when requirements are elicited and analyzed, the next best thing is to have that individual agree to be available to answer questions posed by phone or instant message. Also, it is important to establish norms for how people interact with each other in remote conferencing worksessions, such as having each participant state his/her name before speaking.
Keeping frequent regular daily contact is important for a distributed team. I've worked with and known distributed agile teams who successfully conducted daily scrums with remote conferencing. Short daily standup meetings which follow the scrum agenda are also very helpful for remote teams which are not using an agile approach.
It's also important to be mindful of time differences between team members. If at all possible, try to find core times for meetings which have the smallest impact on all team members. When that is not possible, rotate meeting times so that each location takes its share of normal-work-hour meetings and before-or-after-normal-work-hour meetings.
Dig Deeper
-
People who read this also read...
This was first published in October 2010