More and more companies are going offshore to develop and maintain their software: GE, Bank of America, Target, and American Express, for example, have formed partnerships with Indian firms such as Tata Consultancy Services, Wipro, and Infosys. A recent survey by the Indian National Association of Software and Service Companies found that almost two out of five Fortune 500 companies currently outsource some of their software requirements to India. The reason is simple: this approach saves time and money. Moreover, it is growing steadily more attractive: last year, North American companies alone spent $114 billion on in-house software development, contracting, and purchases—and costs will only go higher as additional basic business processes are conducted over the Internet.
Nonetheless, the benefits of going offshore can be hard to capture. The development of custom software is different from most other business activities, since it requires a detailed understanding of business processes and the way IT supports them. Building an offshore partnership therefore requires much effort and delicate handling by senior managers. What is more, the field of software engineering is relatively new, and procedures for quality control and project management, though developing fast, have yet to evolve fully. Without discipline in...