February 1, 2012: There are many factors before outsourcing a project. Here we will discuss five important points to be considered before outsourcing a project in agile mode.
1) It is important to be clear on the objective behind outsourcing a project. Please check if reason falls into the following 3 options:
a) You are already into outsourcing and have in place a good relationship with the outsourcing service provider. You are already successful with agile mode internally and that you to try to replicate the same with outsourced projects.
b) You want to entrust a new project with a third party service provider because you lack the bandwidth to work it out internally. You believe that outsourcing will help you tide over the issue of lack of bandwidth and agile mode will help in bringing out the requirements.
c) You work out all your projects in an agile manner and now want to reduce cost by outsourcing. So you want to utilize agile mode in outsourced projects too.
In the case of (a), the chances of success is high because you have established a good relation with the service provider. In order to make the agile mode successful, trust and good communication with the service provider is very essential.
In the case of (c), the cost reduction as you expect may not happen, as building trust and communication with the service provider takes time. In initial phase this will be an overhead.
In the case of (b), the chance of failure is very high as you are not in a position to explain the requirements and clear the doubts of the service providers.
2) The outsourcing partner: this becomes important only if you do not have a service provider as partner. Without establishing a relationship with the service provider the agile mode will not work.
You will have to work in close contact with the service provider for a while to establish a relation so that cost reduction becomes possible. Since agile projects require effective communication, establishing a relation becomes important. This is time consuming and you cannot expect huge savings if partnership is not established.
3) The commercial model that should be adopted.
There are mainly three models available and you can select the one which is suitable or a combination of any of these.
a) Time and material (T&M) contract
In this type of contract payment is made based on the expertise and experience of employees who work on the project and is paid for the time they devote for the project.
b) Fixed Price contract
Here payment is made on the basis of a fixed price which depends on the project. But the problem is that it is against the idea of agility. Agility involves change and so if this model is selected, additional payments will have to be made to compensate for the changes.
c) Third one is based on quantity of work done, which is measured using some method. The measurement can be done using story point or function point based on the requirement.
4) The term of payment
Since the agility mode is used, it will involve many numbers of iterations. So payment can be made at the end of each iteration or at the end of a specific period as decided.
5) The measurement of progress
You need to be clear on the progress of the project and the end result. You have to be clear on how to test the delivery, the standards to be adopted, measuring the performance under real life conditions, the testing of usability and the level of documentation required.
You have to make sure that you and your service provider are on the same page in the understanding of agile mode to ensure success of the project.