Agile and Offshoring – the twain shall meet
There is enough evidence that Agile works … in most cases much better than waterfall.
Even when you are working in an enterprise scale, distributed, multi-vendor and strong regulatory environment – agile works better than any other method.
Here are some survey and research finding
Here is a review of the survey result by Scott Ambler.
- The gap between “Agile + Iterative” and “Traditional + Ad-hoc” has been increasing
- Iterative approach has consistently performed as good as Agile
Latest research suggests that iterative approach with trial and error is the best way to navigate through our environment which has become exceedingly complex.
- The Unselfish Gene
- Adapt: Why Success Always Starts With Failure
- The Origin of Wealth: Evolution, Complexity, and the Radical Remaking Of Economics
But … the problem of reconciling the manifesto with distributed enterprise scale environment remains. To reconcile it we need to first resolve…
What is the essence of Agile?
- Essence of agile – 2 dimension
- Yardstick of evaluation – 2 positive and 1 negative questions to ask
Well … to scale, there may be a need to dilute some of the principles but still retaining the essence of Agile.
- Interaction and Collaboration
- Measure of Progress
- Responding to Change
- Forming Self-Organizing Team
Lot of thoughts has gone in to make Agile scalable. A cross-section of such thoughts are highlighted here.
- Dimensions of scaling and the need to integrate with other enterprise processes
- Different options of splitting the teams
- Harmonizing the tool and process dimension with agile practices
- Making distributed teams effective through communities of practice
- Managing the product backlog at multiple levels
- Managing workflow between multiple teams using Kanban
The other challenge in an enterprise is to move from traditional development method – here are some pointers to the challenges that need to be solved.
- Funding: how is project sanctioned?
- Interaction: do stakeholders trust each other?
- Defect: what is a defect?
- Success: how is it measured?
Agile and EA is probably as different as Mars and Venus – can an enterprise follow both?
- Why should this be a challenge?
- Co-existence would be impossible
- There will be difficulties but it can be done
Does it make sense to have an Agile maturity model – like the SEI-CMMi model? There is no agreement among expert.
- Why Agile – start from the business goal?
- How to scale Agile – from one small team to whole enterprise?
- How to be Agile – what processes to focus on?
Finally … what happens when more than one organization are involved?
How to make Agile Offshoring work?
Should the customer take the complete responsibility to setup the process or should it allow the vendor to lead?
- Working with People – Setting up an Agile Offshore Team
- What is wrong with this approach?
- Working with an Organization – Building a Partnership
What are the challenges faced by the vendor organization to implement Agile?
- From the perspective of the business head of the of the organization handling the off-shoring
- From the perspective of the project manager
- From the perspective of the architect / designer
- From the perspective of the process owner
- Why do you want to do the project in an Agile mode?
- Do you want to outsource just this project or are you looking for a partner?
- What type of commercial model you should look at?
- What payment term should you have?
- Are you sure the vendor understands your definition of “done”?
- Is your understanding of Agile same as your clients understanding of Agile?
- On what basis are you going to get paid?
- How will the iterations be accepted? How will the project close?
- Will your communication infrastructure measure up to client expectation?
- How transparent do you have to be about your team composition and organization?
Though, Agile manifesto says “Collaboration over Contract Negotiation” there is no escaping a contract when 2 organizations are involved.
Best Practices in Contracting for Agile
- Is it possible to have Fixed-Price, Fixed-Scope (FPFS) agile contract?
- What are the options available for Variable-Price, Variable-Scope contracts?
- Can you have a completely transparent payment model?
- How do you protect against things going bad?