The successful management of an outsourcing relationship often times seems like a daunting task to new users of offshore services. From my perspective it is actually not that complicated and there are quite a few things the user can do to succeed.
The points I am mentioning below are meant to be general guidelines and are by no means an all encompassing approach to manage your outsourcing relationship.
Below are some of my personal favorites which should provide the newcomer to outsourcing some good pointers. It is a general list meant to be for the newcomer to outsourcing.
#1
When In Doubt Repeat Yourself, Make Yourself Clear and Explain, Explain, Explain!
Might seem obvious but it pays to really explain what you want to get done. Be as descriptive as possible and try to have your vision bolstered by diagrams, flow charts and organization charts where and when needed. I also urge you to use collaborative tools designed for the management of software development.
#2
Treat Your Outsourcing Team As An Employee Or Partner...Not A Vendor
Might seem obvious but for some people it is not as easy. Treat your offshore staff as employees or partners in your venture. Stay in constant communication, (at least once a day), ask what is new and ask for progress reports. Also..make it a point o use video conferencing to have face to face time with the main people in your team (Project Manager or Lead Developer)....over time this will greatly reduce communication barriers.
#3
Have clear goals and milestones goals
Don't fall into the trap of continuing development thinking that the final product will be just fine. Make it a point to have clear milestones and performance goals established. Track the progress the team is reporting in the daily reports versus the timeline in the milestones. (sprints). If there are delays get to the bottom of it. Making your team feel accountable will go a long way to ensure that you finish on time and budget.
#4
Be Realistic in your expectations
There is nothing worse in an outsourcing relationship than unrealistic expectations. In particular when the relationship is new it is important to set goals which can be met (assuming that the team does its job). Going back to # 2; unrealistic expectations can be very demotivating to you and your team. You owe it to yourself and your new team to offer a fair chance to succeed. Unrealistic expectations are an easy way to make sure that you feel your outsourcing venture it is a failure.
#5
Pick a good outsourcing partner
I put this purposely last. The fact of the matter is that all of the above is irrelevant if you happen to end up with a body shop which is simply incapable working in a cooperative environment. These vendors will have the lowest price (which makes them attractive) but you will end up in a situation where quality of the work and a strong client orientated collaborative approach is not a goal.
I would like to mention that a good BPO partner will have a structure in place which takes some of the responsibility mentioned in points 1, 2 and 3 away from you and automates the suggested processes. This will greatly help the process.