Home Page > Publications > Key Metrics For Measuring Success When Outsourcing Software Development

Key Metrics For Measuring Success When Outsourcing Software Development

Key Metrics For Measuring Success When Outsourcing Software Development
Many mid-market CIO's are afraid of outsourcing software development because they feel a lack of control over the development process. Bill can no longer walk over to Linda and see progress in the same room, so there is an inherent feeling that there is no need to measure their progress. Whether managing programming in-house or outsourcing development, it is of paramount importance to have the right metrics in place to evaluate and ensure successful delivery.

The measurement and analysis of metrics should follow these key steps:
1. Identify and define the key metrics with in-house team or outsourcer
2. Specify targets and thresholds, data collection techniques, and reporting and feedback mechanisms
3. Implement the collection, storage, analysis and reporting of the data
4. Provide objective results that can be used in making informed decisions.

Once your organisation and outsourcer have established key metrics for measuring progress/success then ensure the information gets grouped into the general information areas. The 7 most commonly used for software development are:
1. Schedule and progress
2. Resource and cost
3. Product size & stability
4. Product quality
5. Process performance
6. Technology effectiveness
7. Customer satisfaction

Typical data collection cycles can vary from daily, weekly, monthly... it really depends on the metric. What is important is that the techniques are consistent, everyone follows the same operational definitions, and all parties agree on how to respond & remediate poor metrics. The more often you gather a metric the more transparency and control you can assert on the project, so try to encourage daily metrics when possible.

As commented by Steve Mezak on Sourcingmag.com "Your service provider team should commit to a schedule for completing the programming work. As part of this commitment, they must also agree to the definition of work units and the productivity level they believe they can achieve. Their commitment requires them to work independently and without specific instructions for daily work activities. This is much more effective and frees up your time too. You typically measure the throughput of your outsourced team as a whole. A team is typically a combination of junior and senior members. Junior engineers will need guidance and mentoring from the senior engineers. This is normal and should be expected and encouraged. But it should also be measured over time. A senior engineer can be expected to spend from 5% to 25% of his or her time with junior engineers, depending on the complexity of the project and prior experience of the junior engineer. You can use metrics as the basis for a service level agreement (SLA) struck with your service provider. But remember: the purpose of an SLA is to help guide your software development to success and to detect and correct problems as they arise. It's not to support micro management, set up a blame game or create an adversarial relationship with the vendor's team".

Today many organisations are not achieving a great deal of value from their IT outsourcing arrangements and one of the culprits is the lack of effective metrics across software development projects. The reason why BPO projects have enjoyed tremendous success is the complete transparency on metrics, i.e accounts receivable and outbound sales calls made is fairly simple to measure. Software development projects are a bit more creative but there is no reason why your organisation should not be able to effectively measure progress by leveraging above mentioned metrics.  

Quick Contact Form
Company Name
Contact Name *
Telephone Number *
Email Address *