My personal experience is that outsourcing success or failure is highly dependent upon writing of the original software spec. The second most common failure is that clients run out of money as they did not realize how much it would take from the start. Vendors are at fault too as they tend to "do what it takes" to get the job but don't carry that attitude to complete it.
Buying software if you are not a coder, makes you very dependent on trust and thus makes your hiring decision very important.
I always start with some simple project.
Barry Rickert http://www.studiobuzz.biz http://www.thecreativebuyer.com