A Recipe For Outsourcing Your Software Development

urcing your software development can save you timesoftware product. But there is no specification. In this
and money if you know what you need. Too often UScase Accelerance is acting as a virtual CTO,
companies attempt to outsource without a goodresponsible for the design, and development of the
understanding of what their software should do, andclient's software.
this is the biggest cause of outsourcing failure. It isThe client is essentially saying, "Design the software
unreasonable to expect your outsourcing team tofor me, and I'll tell you if it matches what I am thinking."
have a menu of software, pre-prepared, so you canThis can work because the cost of outsourcing is so
just select the items you want.low that rework and multiple design iterations are
Ever go to a restaurant with a picky eater? They tellaffordable.
the waiter in excruciating detail how they want theirThis type of arrangement only works when paying on
food prepared. And heaven forbid that the fooda Time and Materials basis. There is no way to offer
arrives different from what was requested! Back tofixed pricing because the end product is not defined.
the kitchen it goes to be "fixed" to make the pickyOf course, not having a specification may not stop you
eater happy.from asking for a fixed price bid! In this case, you can
Sometimes US companies hire an outsourced partneroutsource the creation of a specification that defines
as if they were going to a restaurant. They select theyour software for a fixed price. Then the resulting
cuisine based on the flavor of the technology theycomplete design specification is used to create a
require. Chinese .NET or Indian Java? How aboutsecond fixed price bid for writing your software.
some Russian C++? Unfortunately there is rarely aAnother factor comes into play when you pay a fixed
menu for the exact items you might like to order fromprice amount for a software design specification. You
an outsourced team.usually have to pay at least half up front. This is to
Are you approaching outsourcing your software likeprotect the outsourcing company from delivering a
you are walking into a restaurant? Are you expectingspecification for creating the software and then not
the outsourcing team to advise you, like an attentivegetting paid.
waiter, on the way your software should look, beBecause software design often occurs at the
prepared and presented to your customers?beginning of a relationship, both parties seek to
Instead, bring your own recipe when you start workminimize their risk. You minimize your risk by selecting
with an outsourcing team. Unlike your diningan outsourcing team with a proven track record and
experiences, you cannot ask for the daily special. Yougreat references. The outsourcing team reduces their
have to provide a specific description of what yourisk by getting partial (sometimes full) payment before
would like to have, and how it should be prepared.starting.
Without such a recipe, your outsourced softwareThere are multiple deliverables that should be produced
development efforts can be starved for success.during the design phase of creating your software,
Poorly specified software is often the result whenwhether you do it yourself, or outsource the design:
"subject matter experts" are involved. Subject matter* Marketing Requirements
experts, or SMEs, know a lot about a particular* Storyboard Demo
subject, like IC design, business process workflow,* Functional Specification
inventory management, etc., but very little about* Multiple Release Milestone Schedule
designing software. SMEs can struggle to get their* Detailed Task Schedule for First Release
ideas encoded in the software. They need to work* Detailed Design Specification (optional)
with someone that knows the best way to design andUnfortunately, software development has not
develop software.progressed to the point where ready-made modules
Sometimes, there is a fear of getting bogged down inare available to order and combined to create your
the details. Since some software executives are greatsoftware. There is not yet a menu of choices available
with people, they feel much more comfortable hiring ato anyone that is hungry for new software. Instead,
person to handle the details. They know how toyou must provide your own recipe for what you need.
manage a person here, better than they can manageThe good news is low cost outsourced software
an offshore team of programmers in a remotedesign and development resources are now available
offshore location.to create your custom software to meet your exact
One Accelerance client is in this situation. The CEOspecifications.
wants to outsource the development of a new