I came across a very interesting article yesterday from Cutter Consortium (read it here). The article provided evidence about how offshoring doesn't really save you any money, but it also showed how agile does save you money.
The conclusions were based on 20 years of research across 8000 projects. It compared projects of similar size in terms of lines of code. The average project cost $3.5 million. Offshoring it reduced the cost to $3.2 million. The agile project cost $2.2 million.
From a time perspective, the on shore project took 12.6 months, 9.6 for the offshore, and 7.8 months for the agile project.
From a quality perspective, the onshore project had on average 2702 defects, an astounding 7565 defects for the offshore, and only 1372 for the agile project. So even though the offshore project cost less, you made up for it in fixing defects.
This was a pretty comprehensive study and the conclusions are pretty clear. I have been involved with offshore work, and to me that large physical gap between the user and the developer proved very challenging. Organizations I saw struggled to communicate requirements across the gap. I've always been a strong believer in close interaction between developers and users.
Thank you for pointing me to the report Bob. I agree with you on the interaction. Success rates go up the more communication is enabled between developers and users, and developers on the same team. I've found that offshoring increases the need for communication. the great thing about the Internet is that it helps increase the number of ways you can communicate and share information. Though in-person is always at the top of my list.
ReplyDeleteA few years ago I sat on a panel at the Toronto Product Management Association discussing Offshore vs. Local software development. I think they expected that having 2 panel members from offshore companies, one from a local company and myself, "The Agile Guy", would lead to a heated debate. Strangely enough it didn't - the people from the offshore companies readily admitted that in their model they needed to work even harder to ensure that enough communication took place between them and their clients. In the end, though, I did get the biggest laugh of the night when I said, "Offshoring with a traditional process will ensure that you fail much more cheaply!" :)
ReplyDeleteThat was in 2004. I still believe that using a traditional process with offshore teams is begging for trouble. However, I also believe that we've come a long way with respect to understanding how to extend Agile beyond the one-room team. Don't get me wrong - I push hard for my clients to put their people all in one physical location, because that's by far the most effective way for them to work. If that isn't possible, then there are ways to keep the communication level high enough to maintain that magical quality of agility.
Dave Rooney
The Agile Consortium
Robert - Thanks for the comment. I did some work at the offshore group of a global software/services company. They had great PM practices, but when I talked to the groups in the US and EMEA that were using them, they said communications really impacted effectiveness.
ReplyDeleteDave - We've developed a lot of communications tools since 2004, but I would agree they can't replace face to face interactions.
ReplyDelete