The fourth metric of outsourcing success – product quality
by Ayush Gayaprasad Vijaykumar – Software Improvement Group
Anyone who has worked at one of the outsourcing/offshoring companies knows that they try to make client satisfaction and success a primary consideration. They concentrate on this through three dimensions of delivery: time - using metrics to improve the timeliness of tasks, services or projects; budget – using metrics for cost reduction of tasks, services, projects or programs; and project/process/organizational quality – using metrics for tests, defects resolution times, quick ramp up of resources, continuous improvement etc.
Everything is measured and improved, except for what lies at the core of everything – the software itself and the associated fourth metric, product quality.
I contend that not understanding this fourth metric creates a thorn of dissatisfaction with outsourcing/offshoring quality in otherwise fruitful and beneficial relationships. I also contend that this need not be so.
Supplier and clients often argue that testing is a measure of product quality. But testing, resolution of large number of bugs within time and budget, and their reduction over time does not necessarily mean that the product quality is good.
Product quality is really only good when you can ensure that software meets the business needs of reliability, scalability and economics in the long run. Product quality is good when the right technology is used, the right architecture is designed, and there is control on the software implementation to guarantee high maintainability, low costs and low risks of operations.
Most organizations, however, do not know how to be certain about product quality. Three steps that can offer control over software products and realize some certainty regarding quality include:
1. Demand Product Quality – Product quality is not demanded and therefore not provided.
Most tenders require a certain level of security assurance and organizational quality (CMMi-level-5 or ISO 9001 etc.) but are silent when it comes to expectations of product quality. Suppliers often contend that they are already highly focussed on quality, when they set up their re-usable quality targets. But does it help?
Look around! Check how many supplier roles you see onsite. You will usually find numerous managers and team leads, but hardly any cross-technology experts, architects or experienced developers. In fairness, suppliers cannot go ‘onsite heavy’ if they still want to meet client’s strategic goals of optimizing costs or simply leverage their competitive advantage.
So you see new engagement models emerging: managed services based on KPI’s, risk/reward partnerships and outcome based pricing.
These models are assured through project, process or organizational control measures. But will these new models assure that the system will be easily modifiable, compatible and portable? No, the benefit of these models is only that they assure redress in the worst scenario. So the next question that arises is how to demand product quality in the normal course of design, development or maintenance of the product.
2. Measure product quality: Know what product quality is, and use product quality metrics to measure, analyse and improve.
ISO standard 9126, and its follower ISO 25010, provide a detailed guideline on product quality. (We have leveraged it extensively through a reliable and repeatable quality model that can be used directly through source code and fact based measurements.)
Static code analysers can be leveraged directly by development teams but are often not productive as their focus is only on technical metrics rather than a contextual perspective. It is unhelpful, for example, to spend time removing duplicate code or measuring number of lines of code when the real problem is system modularity.
We therefore contend that product quality measurement can only be helpful when aligned with product goals - not same as project goals.
3. Evaluate vendor performance on product quality: IT suppliers will thank you for this transparency.
IT suppliers want to develop good software but are a victim of their own global scale and size. Help them by making product quality a measure of the key performance indicator (KPI’s). Do outsourcers worry about being assessed on quality as well as the other three metrics? In reality, many relish it. Having independent assessment on the quality of their software, or insights into how they can improve (thereby increasing the likelihood of delighted customers), is, for most, helpful.
So let’s hear it for product quality measurement – the fourth metric of outsourcing success!
Ayush G.V. is a Sr. Management Consultant at SIG, the Software Improvement Group, which is strongly rooted in research and provides fact based consultancy to organizations in the areas of software economics, quality, risks and governance.
Post a CommentCommenting is not available in this weblog entry.
Next entry: Sympathy and security