views:

142

answers:

2

I am used to doing development while following agile practices, so short iterations, with very flexible planning, as the design can change based upon comments/suggestions.

But, I recently had interviewed for a job where all their development is done in India, and since I have never done anything like that I wasn't offered the job.

So, I am curious if it is possible to follow agile concepts when the work is outsourced, or would it basically be a hybrid-waterfall design, with lots of UML diagrams and pages of specifications?

UPDATE: My question is about how can agile methodology be followed while the design and customers are in the US. It would be difficult when contracting, as the contract, I guess, would be a price for a deliverable, which means the deliverable requirements are set in stone. If the people in India were employed by the company (MS for example) then Agile can work, as they do their part, commit to source control, it gets built, commented on, and the cycle continues.

+3  A: 

Don't bother following this question. Just get a job somewhere else.

Agile and offshore can work, in theory. In practice, I have yet to hear of a case where it does.

Carl Smotricz
Agreed. While Agile is a powerful methodology and can work around many hurdles, the combination of non-locality, language barriers, and time-zone offset make it difficult to apply effectively.
Michael Petrotta
I am just curious how agile can work. It would seem that something like the waterfall would be required, given the challenges.
James Black
Well, Agile is just a label. You could do your own little XP: Ship the offshore coders user stories instead of detailed specs, let them pair program, hold short meetings via video messaging, have short iterations with well-defined dates but no carved-in-stone milestones... ideally, you'd ship them an expert whose brains they can pick. That would be a goodly part of XP. But I don't see it happening.
Carl Smotricz
It always makes me smile when I see Agile and Offshore in the same sentence. I would like someone to explain me how putting thousand of kilometers between the client and the development team is Agile (not even mentioning language and cultural differences). People are going to kill Agile (if it's not already too late) by using it as a buzzword.
Pascal Thivent
A: 

Its quite likely that the success or failure of the project is not going to be solely due to the methodology used (unless it's something no-one on the team is familiar with).

The underlying Agile principle you probably want to focus on is communication - it's obvious but can't be forgotten.

Martin Fowler has an excellent article on Agile and Off-Shore: http://www.martinfowler.com/articles/agileOffshore.html it's well worth reading.

You're best to look at the project (ignoring the off-shore element) and deciding if agile is a good fit for the project; if it is then you can start worrying about the off-shore element.

Adrian K