Software Out-Sourcing

“A home-building company generally does not operate its own tree farm from which to harvest trees for lumber.”

      — Grady Booch

Software offers the ultimate flexibility, so it is possible for the developer to express any kind of abstraction. But it also forces the developer to craft virtually all the building blocks upon which the higher level abstractions stand. While the construction industry has uniform building codes and standards for the quality of raw materials, few such standards exist in the software industry. As a result, software development is a labor-intensive process.

“Faster, better, and cheaper” is the perennial slogan of computing. The shortage of technology skills drives many outsourcing contracts today. Outsourcing is now a common phenomenon in software industry. The complexity of applications-technology-management mix in information systems demands that careful attention be given to the issues of what to outsource, to whom to outsource, and how to manage the outsourcing relationship. Modern business depends on having the right information, at the right place, at the right time. Outsourcing should enhance the potential, and not compromise it.