Home > Ask the Software Quality Experts > Software Process Models and Methodologies Questions & Answers > Agile development across continents
Ask The Software Quality Expert: Questions & Answers
EMAIL THIS

Agile development across continents

Bas de Baar EXPERT RESPONSE FROM: Bas de Baar

Pose a Question
Other Software Quality Categories
Meet all Software Quality Experts
Become an Expert for this site


Digg This!    StumbleUpon Toolbar StumbleUpon    Bookmark with Delicious Del.icio.us   


>
QUESTION POSED ON: 14 March 2007
I need to setup a project with people involved from different locations and no way to arrange meetings in just one site. I'm aware about usefulness of early testing, continuous building, version control and code check to assure software quality from early stages. Plus I would manage the process with XP techniques, probably Scrum. Could you please give me some advice? Thank you.


Digg This!    StumbleUpon Toolbar StumbleUpon    Bookmark with Delicious Del.icio.us   


RELATED CONTENT
Software Project Management
Differentiating between Functional and Nonfunctional Requirements
Where does quality assurance fit in agile development?
Quality standards don't always mean fewer defects
How to present a project to the management
Project management charts: Beyond Gantt
How to switch your team to Agile
How to deal with a difficult team member
Collaboration and communication tools for virtual meetings
Project management: How to compose a project team
How to create accurate project status reports

Software Process Models and Methodologies
Differentiating between Functional and Nonfunctional Requirements
Where does quality assurance fit in agile development?
The role of user stories in agile software development
Agile software development: Proving the benefits
How long should an iteration be?
Is iterative development a new process?

Agile software development
Agile development growing, but problems remain
Agile, IBM tools boost Merge Healthcare's software quality
Agile development reshaping requirements
Agile software development tutorial: How to transition to agile
Agile software development tutorial: Pros and cons of agile
Agile software development tutorial: Agile requirements gathering
Agile software development tutorial: Agile project management, tools
Agile software development tutorial: Agile testing
Reporter's Notebook: Jack Vaughan on agile methodology
Best practices for moving testers from waterfall to agile development

RELATED GLOSSARY TERMS
Terms from Whatis.com − the technology online dictionary
acceptance test  (SearchSoftwareQuality.com)
iteration  (SearchSoftwareQuality.com)
planning board  (SearchSoftwareQuality.com)
planning game  (SearchSoftwareQuality.com)
release  (SearchSoftwareQuality.com)
release plan  (SearchSoftwareQuality.com)
spike  (SearchSoftwareQuality.com)
stand-up  (SearchSoftwareQuality.com)
story  (SearchSoftwareQuality.com)
timebox  (SearchSoftwareQuality.com)

RELATED RESOURCES
2020software.com, trial software downloads for accounting software, ERP software, CRM software and business software systems
Search Bitpipe.com for the latest white papers and business webcasts
Whatis.com, the online computer dictionary


The most effective techniques from the agile development methods consider colocation of teams and team members as the ideal situation. However in reality this ideal is seldom reached, people are scattered all over buildings and continents. It may not be a surprise that the biggest risk associated with geographical separation is poor communication.

You can do several things to reduce this risk, independent of which method you end up using.

Try to subdivide your system in components or subsystems with defined dependencies. Assign every individual component to colocated teams of developers. This reduces the technical dependencies of the teams.

For the times that people have to communicate, Alistair Cockburn has a famous diagram that shows the different methods of communication. You can find a version of it here.

Think about daily conference calls, video conferencing, instant messaging, email and Web-based discussion groups. In case it is needed, it may also be wise to put someone on a plane to have a face to face discussion with another team.

When working together, I also recommend using a Web-based document repository, so everyone is working and looking at the same versions of documents (Google has one for free associated with every account.)

You have the right idea about early testing, continuous building, version control and code checking. Of course, everyone should be able to access the same versions and information, so also in this area a shared repository is needed.

And finally, when assigning your tasks across the teams, let the location of the users be associated with which team gets that part of the system assigned. In other words, make sure the users that provide the input are colocated with the team that handles that part of the software. This is important, as in this way you make the most use of an agile method.

More information:




Search and Browse the Expert Answer Center
Search and browse more than 25,000 question and answer pairs from more than 250 TechTarget industry experts.
Browse our Expert Advice



Software Quality - Software Maintenance, Software Requirements, Software Standards
About Us  |  Contact Us  |  For Advertisers  |  For Business Partners  |  Site Index  |  RSS
SEARCH 
TechTarget provides technology professionals with the information they need to perform their jobs - from developing strategy, to making cost-effective purchase decisions and managing their organizations' technology projects - with its network of technology-specific websites, events and online magazines.

TechTarget Corporate Web Site  |  Media Kits  |  Site Map




All Rights Reserved, Copyright 2006 - 2009, TechTarget | Read our Privacy Policy
  TechTarget - The IT Media ROI Experts