Let’s talk about where we’ve been, historically, as an industry, when it comes to outsourced software development and offshore software development. In 1980’s and early 1990’s, in the US and in Europe, you had large consulting companies such as Andersen (remember them? I guess they were glad to have ditched the Andersen name in favor of Accenture) who would give you a multi-million dollar bid on your project. You would hand them an RFP that defined your system requirements as you best understood them (or they would help you define the requirements by letting you use their systems analysts) and based on these requirements, the consultants would estimate the work effort involved, price it, and develop your system for you. I don’t think people used the word “outsourcing” to describe this, but that’s what it was. Back in the 1980’s, and into the 1990’s, Andersen Consulting was famous for putting all of their young consultants—programmers–into “boot camp” and teaching them their methodology for doing software development (if you were around in the 1990’s you’ll get a smile from this article, talking about Andersen circa 1992). As I understand it, Andersen’s methodology (called Method-1) was essentially a waterfall-based process.