For those who do not speak French, you may recognize this now idiomatic phrase as the oft uttered, “If you want something done right, do it yourself.”
Étienne’s words are a proclamation of self-reliance commensurate with the attitude of the French Revolutionary period during which he earned his acclaim; however, they are quite obviously not a hard and fast rule among businesses today. In today’s world, many companies that want “something done right” – including the development of software – look overseas for other companies to do it right for them.
Historically, outsourcing projects have been viewed as a difficult and even tenuous proposition. Variances in how work is conducted and language differences (like the one eluded to above) are seen as things that need to be overcome in order to make outsourcing work...and often the reason for making it work is simply that it costs less to do it overseas.
There are those who question whether it truly does cost less having it done overseas if these problems must be overcome or at least worked around. Others, however, perform their due diligence, not only before deciding to outsource, but also during and after the project has been done.
The decision of whether or not to outsource comes down to one question, "Can another company do it more efficiently than your own?" Curt Finch, CEO of payroll automation company Journyx, offers some advice on the Executive Street blog about how to make the decision of whether or not to outsource software development. He makes it sound very simple:
Answer four questions:
1. How much?
2. How long?
3. How risky?
4. How strategic?
The questions of “how much” and “how long” are rather straight-forward and objective – either the potential outsourcer can do it cheaper and quicker or they can’t. Even “how risky” under Finch’s definition – that being how solid the company is and how it is viewed by previous customers – comes down to figures (Finch points to stock price) and real, albeit anecdotal data.
Unlike the first three questions, however, “How strategic?” is a far more subjective question to answer. By Finch’s admission, this question raises more questions:
“What will your IT shop learn from building this application in-house? Is this knowledge coherent with your company’s core business strategy? Will the education your team gains from this exercise lead to improved capability for your company’s business, or is it detracting from more appropriate knowledge?”
He admits these are hard questions to answer…or are they?
Most people believe that outsourcing is akin to off-loading and if that is the plan of the company shopping the project for outsourcing then the chances are pretty good the project will turn out pretty bad. Taking a hands-off approach to managing an offshore outsourcing project – by relying on SLAs, for example – and expecting a high-quality output is not only unrealistic, it’s also unfair. Rather, close management — or, even better, increased visibility into the project using application software structural analysis — is critical to achieve the desired result.
To achieve the necessary visibility into the project and in so doing also achieve the strategic value sought in outsourcing the project, a company should consider implementing a platform of automated analysis and measurement to perform strategic structural analysis at each stage of the build.
The next-best thing to hands-on management, structural analysis provides the visibility critical to catching code imperfections in preproduction phase, before the application is deployed and causes costly and inconvenient outages or compromises security. With this hands-on approach to outsourcing, companies can realistically expect performance equal to what they can produce in-house.
That kind of visibility makes the most difficult of the outsourcing questions much easier to answer because the development of software is neither out of sight, nor out of mind, but rather it is simply software done right!