Agile software development
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.

>
EXPERT RESPONSE

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:


Sound Off! -   Be the first to post a message to Sound Off!


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


RELATED CONTENT
Software Project Management
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
Varying SDLC methodologies among development teams
Software metrics and the SDLC
Using Six Sigma for software project management
How to mentor new project managers
When software projects run over
Project management problems: Team leader not sharing information

Software Process Models and Methodologies
Agile software development: Proving the benefits
How long should an iteration be?
Is iterative development a new process?

Agile software development
Approaches to defining requirements within Agile teams
Automated software builds save time, money for Portico
Using iterations to help balance priority and risk
Agile development: Not just for 'agilists' anymore
Jazz opening: IBM invites developers to collaborate on software
Agile Software Development: The Cooperative Game, 2nd Edition -- Chapter 3, Communicating, Cooperating Teams
Agile development and Grails a dynamic duo
Case study: Agile development moves at Rackspace
Agile tools for Agile development
Software development trends in 2008: Outsourcing, 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



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

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

TechTarget Corporate Web Site  |  Media Kits  |  Reprints  |  Site Map




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