Most Companies look at Software Quality through one of the following 2 lenses
- A Technology Executive may look at software quality so as to determine whether the software is in a quality state to be released or not?
- A COO may look at Software Quality from the angle of customer churn. What percentage of customer churn was caused due to poor software quality?
Both of the above views are indeed critical. However one angle that typically does not get attention is the organizational impact of software quality. As shown in the diagram poor quality can have a reverberating impact across the whole organization.
The diagram highlights :
- Poor Quality in production causes the the whole company to be interrupt driven. As and when the customers experience poor quality the whole organization experiences the pain. You lose control of your schedule. You are on the customers bug discovery schedule. This is the main reason for schedule slips of currently ongoing projects. People lose focus on the task at hand and are thrust into a production patches or production crisis resolution.
- Poor Quality effects each and every department. The diagram shows how Customer Support, Sales, Quality Engineering, Engineering, Operations, Product Management are all effected. Each one of these departments is interrupted from their current focus.
- Poor quality leads to an order of magnitude more work for the organization. If an issue could have been found/resolved within the Quality/Engineering Teams at most this would have been a 2 or 3 step process encompassing 1-2 groups. However once the issue is exposed to the customer this becomes a 13 step process (at best – assuming that every one of the 13 steps goes without a hitch) encompassing the whole organization.
My Recommendation (2 Critical Metrics):
- Number of patches required after release. Each time a patch is released the whole organization goes through hoops as is highlighted in the diagram. If this is not brought down to Zero (or close to it) you will be falling behind on your next release. You will be in a vicious cycle. Start to measure this and bring it down. This is one of my most important metrics when measuring the job that quality does.
- Opportunity cost per Patch. What is the man week cost of a patch on average for the organization? This will give an idea of the scale of the problem. Bring this down with automation.
By measuring the above metrics you can start to plan better by taking into account your historical patch cycle times and patch frequencies. Secondly this can help in highlighting to non technology executives the importance of quality across the organization.