Posted by Indusa Admin on March 15, 2017 5:24 am
Quality- doing it right when no one is looking.
Ensuring optimum levels of software quality is a critical aspect of the software development process (together with faster time to market); however, it doesn’t come cheap! The costs incurred in developing error free software, testing it to ensure that errors are minimized, and then making sure it stays that way can be substantial. Prevention, discovery, and timely correction of a defective piece of code is essential in the software development process, and knowing the costs involved is important for allocation of funds as well as the resources that are required to complete the process.
The Need for Quality Cost Analysis
While a major percentage of funds is directed towards ensuring software quality, you may wonder why there is a need to conduct a quality cost analysis. Assessing the cost associated with conforming to the required levels of quality, and the cost of non-conformance is essential to get an idea of how crucial software quality is. Such an analysis gives you good insight into the costs incurred due to the prevention and detection of defects, and the costs that happen due to the manifestation of defects. The sole objective of conducting quality cost analysis is to ensure that the product delivered to customers is reliable and has a positive (and long-term) impact on them, without overshooting costs. This analysis provides a realistic measure of the effort put in to ensure quality, and helps in demonstrating the efficiency of the quality management process.
Calculating the Cost of Quality
Costs spent on preventing, finding and fixing incorrect code constitute about 20-30% of the total cost of software development. As a software developer, one of your primary duties is to reduce the total cost of quality, while ensuring there is no compromise on quality itself. Some of the major quality costs associated with software products range from requirement and usability analysis, prototyping, developing fault-tolerant code, documentation, evaluating the reliability of the product, to training and development of the testing team. Let’s look at the different types of costs and how they add up to make the total cost of quality:
1. Prevention Costs:
It is widely said that prevention is better than a cure; the costs involved in preventing or avoiding defects (quality assurance costs) constitute prevention costs. These include dealing with coding and design errors, faults in user manuals, poor documentation, or inapplicable code.
2. Appraisal Costs:
A massive portion of costs arise from the efforts put in to detect defects, and from measuring and monitoring quality. These include costs associated with design review, code inspection, test automation, pre-release, training, and usability testing.
3. Internal Failure Costs:
While the efforts put in to ensure conformance to required levels of quality are time consuming and costly, what’s even more harrowing is the costs incurred due to quality non-conformance. These typically arise from defects that are identified internally, and the efforts that are put in to correct them. Some examples include fixing bugs, the cost of rework, regression testing, and costs occurring due to late dispatch, among others.
4. External Failure Costs:
Failure costs that emerge after delivering products to customers (that are usually identified by end users) constitute external failure costs. These include costs incurred from analysis of customer complaints, lost sales, refunds and recalls, penalties, lost customer goodwill, warranty and liability costs, among others. External failures can damage the business image and these costs are rather enormous, therefore it’s a good idea to fix problems before delivering corrupted products to customers.
Ensuring Optimum Quality Cost Analysis
“Quality is not an act. It is a habit”. The costs arising as a result of dealing with poor quality software is massive. Delivering poor quality products to customers is not only detrimental for your business (and your brand), it also creates a negative impact in the mind of customers. Although a lot of costs associated with software development are mandatory (and inevitable), paying close attention to some of the unnecessary expenses is crucial to arrive at an optimum quality cost analysis.
Source: The Quality Portal
While it is impossible to aim the entire software development budget to quality-related costs, the costs incurred due to customer complaints and the money spent on reviewing design, inspecting code, identifying and rectifying defects, and the massive expenses in additional marketing efforts should be attributed to the entire software development costs and should be contained as soon (and as efficiently) as possible.
About the Author -Ahesanali Vijapura
Ahesanali Vijapura is a highly professional Senior Project Manager (QA Services) at Indusa. He has vast experience in managing manual and automation test teams, onsite as well as offsite. He is an expert when it comes to software testing in various environments, server/client testing management and integration of multidisciplinary software and hardware systems.
Contributing Writer:Malavika Nityanandam