Thinkpiece: Cross the Trough of Disillusionment

Outsourced software development is at a critical stage in its evolution today: the stage some observers call the trough of disillusionment. CIOs and software development managers feel pressure to outsource, because investors and CEOs require it to keep pace with the competition and to deliver greater business value from IT, but as anyone who has tried to make it work knows, it's a complicated job. The results are not always what's promised. In a recent report by Forrester Research, a market research firm, only 28 percent of IT and business executives who had been outsourcing for more than a year said they had realized the savings they had expected.

Why the discrepancy? After all, the hourly rates of software development in India, while increasing, are still very substantially below those for comparable skills in the U.S. market. The biggest cause of disillusionment is that many companies jump into outsourced development without adequate preparation.

Besides ensuring the right kind of match in skills, culture, location and management abilities for your outsourcing needs, developing a successful outsourcing relationship involves developing an integrated communications and management strategy.

For most firms, the management process of outsourced work is restricted to daily status conference calls, where projects are declared to be either on track or not. But as one client executive said to me, "they code while I sleep...the first issue encountered essentially stops work until it gets resolved the next day." Successful outsourcing requires careful attention to creating processes that work in an environment where development resources are physically distant and in a vastly different time zone.

These process changes can, as the Forrester report says, often be "revolutionary, not evolutionary," because the organizational mechanisms they replace are very ingrained. People are used to walking around to manage software projects; they are used to finding the right expert to answer a question through an informal organizational network; they are used to working out critical use-cases and business requirements in hallway conversations.

Three critical areas
Training: Outsourced developers may be distant, but they are a critical part of your team. So ensuring that they understand the business processes that are being automated, and learn the culture of the team they'll be working with, is critical. It isn't enough for any software development team to merely understand the technology they're using. Training can also serve as a venue for the outsourced team to meet their U.S. counterparts, and to learn who the experts within the company are.

Communications infrastructure and process: Defining processes to replace the hallway conversation is critical. Analysts and developers need to be in regular, managed communications around critical business and technology issues. The traditional approach of using project managers, and funneling all this information through a single point of contact, usually results in too narrow a pipe, and too much critical context missed.

It's important instead to build a technology infrastructure to ensure that outsourced and local analysts share the same (current and correct) versions of all documents; can have questions answered promptly and by the right person; and can identify expertise quickly where it's necessary. Such technology infrastructure should focus on a common communications mechanism (such as bulletin boards, or instant messaging) and document management technologies, and use archives and search technologies to ensure history is maintained.

High-visibility management: Transparency of management information is especially critical when client managers can no longer assess independently the body language and tone of communications, due to distance and cultural challenges. A successful outsourced management strategy focuses on risk, asking, "What are my chances of making a milestone date with an acceptable level of quality?" rather than simply "Are we on track?" This requires visibility into resource allocation, quality hot spots, and areas of miscommunication, as opposed to a black-box style of management.

About the Author

Venkates V. Swaminathan is a consultant to companies that outsource software development.