27
The Good and Bad of Agile Offshore Development

Good And Bad Of Agile Offshore Development

Embed Size (px)

Citation preview

The Good and Bad of Agile Offshore Development

Where to go for the presentation

Mike’s blog: http://www.leadingagile.com

Who is Mike Cottmeyer?

• Have been on the VersionOne service team for about 8 months

• Prior to joining VersionOne I was a Senior Project Manager for CheckFree Corporation in Atlanta, GA

• This experience report is about a very large initiative I managed a few years ago

Who is CheckFree?

• CheckFree is the leading provider of online banking and bill payment services to the banking and financial services industry

• We were building services that would enable CheckFree to provision a custom bill payment website for a major customer in less than 90 days

Just how big was that project?

• The largest of these initiatives was planned to take over a year and half

• The project had over 70 people involved from concept to delivery and was estimated at over 10,000 ideal engineering hours and delivered for about 30,000 real hours

What else could we do to make it hard?

• And… we were using an Indian offshore development team for a significant part of the work

Take a moment…• Imagine you are the leader of

a development organization, maybe a senior project manager

• Your senior leader comes to you and says you’ve got to cut costs

• He tells you the company has entered into an agreement with an offshore dev firm

You have to layoff 50% of your staff and those jobs are going to the offshore vendor

The Realization

• You still have 100% of your projects to complete

• Half of your new team is over 8500 miles away and separated by a 9 or 10 hour time zone difference

• Not a great environment to be Agile

My take…• Not a big fan of taking

teams offshore• These projects are very

challenging and delivering the right product requires a huge investment of time and money

• Often don’t realize the cost savings you expect going in

Call to Action

• If you find yourself in this situation, you have to find away to make it work

• Failing to deliver is not an option

• There are too many examples of offshore projects that have failed from poor requirements, lack of management oversight, and failure to communicate

Only go offshore if you have to. If you have to go offshore, you better go Agile.

Our focus for today…

• Contract negotiation

• Working as one team

• Metrics and tooling

The Agile contract

• Build Agile processes into the agreement

The Agile contract

• Only specify what can be specified– Tooling– Core competencies– Key personnel/retention– Forecasting– Sprint planning– Service levels

The Agile contract

• Maintain room for trust and collaboration

Working as One Team

• Teamwork– Mix onshore and

offshore people– Rotate the offshore

team members between on shore and offshore

Working as One Team

• Collaboration– Tools– Overlapping

work days

Working as One Team

• Invest in people– Training – Mentoring

Metrics and Tooling

• Use a tracking tool– Excel and

homegrown

Metrics and Tooling

• Measure everything– Team velocity– Individual

velocity– Project burndown– Major milestones

Metrics and Tooling

• Define Done– Very clear backlog

items– Continuous

integration

Lessons Learned• Offshore required more

doc• Put a greater burden on

the onshore team• Found we had to be

more prescriptive• Yesterday’s weather

didn’t work• Stretch goals and

Turnover

Key Takeaways

• Offshore only if you have to

• Agile can help you be more successful

• Provides an ability to guide the project into an acceptable outcome

• Adapt processes

Be aware of your business drivers

Where to go for the presentation

Mike’s blog: http://www.leadingagile.com

Simplifying Software Delivery