My first answer is to take one step back and do not offshore. If you must off-shore… The best ways to reduce risks include this fundamental:
Have a contract that requires you to pay only for deliverables that are received on-time and have the necessary function and quality. (Do not pay in advance, do not pay for people’s time, pay only for useful delivered products.) In this way, you will not pay for a product that arrives too late nor for a product that is not fit for purpose.
Such a contract necessitates some simple, clear terms to define:
- what is required or how requirements will be defined;
- quality requirements or how quality standards will be derived;
- a timetable for delivery or how delivery times will be derived.
The flexibility included in the above (a-c) reflects the fact that for many projects the detailed requirements are unknown at the start of the project.
Another approach is actually a contract where you DO pay for people’s time but this where you as the client company have a daily interaction with the team carrying out the work. (Think Scrum.) Here, you have a hand in choosing the team and work with the team to define the approach to work, prioritizing the work, defining standards for the products’ creation and quality measurement, and so on. Ideally, at least one person from the client company works within the development team to ensure that the team works according to the requirements of the client, facilitates key communications between development team and client representatives, and provides an access point for quick answers to the great variety of questions that can be answered quickly by someone on hand.
With Scrum, the client and contractor groups agree reviewed priorities and set fresh goals for work to be completed at frequent intervals, from as shorter as a weekly work period to delivery to as much as one-month (no longer).
With Scrum, it is ensured that only the most useful products are tackled at any one time, and delivery is timed to satisfy a promise for the cyclic delivery date (e.g. fortnightly). The combination of client review of goals and priorities, short cycles of work, mutually agreed standards for quality for “completed” products, etc. enable a situation for a contract for work paid according to the time spent on the project – in the context of satisfying the client that the flow of products is satisfying quick enough. Close working between client and development parties helps create trust such that the best a client can hope for is a skilled, dedicated team doing their best.
Consultant Project Manager and Business Analyst.
- .NET Development
- Banking & Finance
- Communities & Social networks
- Custom App Development
- Development process
- Digital Marketing
- Drupal Development
- E-commerce & Retail