Costs of Software Quality

Whenever in an organisation a project is proposed for building some new Software or making improvement to already existing software then a Software Development Life Cycle is followed which involves 8 steps => Planning, Identifying/Documenting Requirements, Designing, Building, Documenting Source Code, Testing, Deploying, Maintaining.
As this process of Developing Software involves so many steps and so many programmers/developers there may arise some issues with final Software Product. Issues like not scalable, less efficient are quite common. But before shipping any software to client/user appropriate Quality checking should be done.
Quality checking essentially means running certain tests to check if Software is performing up to standards which are required by client or users. Doing this additional Software testing adds up some cost to overall budget of Software Development Project. That’s why organisations kind of resist to do extensive Software Quality Testing, but for some type of software its really crucial to extensively test it before deploying. For example – Software used in Aeroplanes need to be tested extensively as Cost of software failure may lead to loss of Human Lives.

Software Quality Level

Software Quality Costs

  1. Prevention Costs
  2. Appraisal Costs
  3. Internal Failure Costs
  4. External Failure Costs
  5. Reputation loss due to low Software Quality

Prevention Costs – Cost incurred to company for preventing its Software quality from degrading. This involves extensively testing Software Source Code before finalising it for deploying, training employees to better identify errors in Software Source Code.
Appraisal Costs – Cost of testing Software while it’s in Development.
Internal Failure Costs – Costs to get rid of errors found in Software internally, like to solve certain software issues hiring some external consultancy costs.
External Failure Costs – Costs occurred to company due to failure of software in Deployment. Like a company made a Software Product handed it over to its client and then in Deployment some major failure occur, this may lead client to cancel/retrieving future Software Projects with company. This kind of situation can cause a large financial loss to company.
Reputation loss due to low Software Quality – If a company have delivered low quality Software to its client which don’t fulfill client requirement then it may lead to Reputation loss of company in Software Development Industry.

Categories of Software Quality Costs

Main CategorySub CategoryDefinitionCosts Involved
Prevention CostQuality basis definitionEffort to define quality
Setting quality goals
Quality Trade-off analysis
Definition of release criteria for acceptance testing and related quality standards
Project and process-oriented interventionsEffort to prevent poor product quality or improve process qualityProcess improvement
Updating procedures
Metric Collection
Metric Analysis
Internal/External Audits
Training of Employees
Appraisal or Cost EvaluationDiscovery of condition of productDiscovery of level of non-conformanceTesting
Walk-through
Inspection
Desk-Check
Quality Assurance
Ensuring achievement of qualityQuality ControlSoftware Proposal Review
Cost of AnomaliesInternal AnomaliesProblem detected before delivery to customerRecoding
Retesting
Review Documentation
External AnomaliesProblem Detected after delivery to customerWarranty Support
Complaints Resolution
Sales Reduction
Reputation Damage

As there are a number of costs involved in ensuring Software Quality which adds on top of Project Budget. Then why would companies invest in Software Quality? Companies invest in software quality to ensure their long-term success and building a trustworthy relationship amongst users or clients.

Gagan

Hi, there I'm founder of ComputerScienceHub(Started this to bring useful Computer Science information just at one place). Personally I've been doing JavaScript, Python development since 2015(Been long) - Worked upon couple of Web Development Projects, Did some Data Science stuff using Python. Nowadays primarily I work as Freelance JavaScript Developer(Web Developer) and on side-by-side managing team of Computer Science specialists at ComputerScienceHub.io

Leave a Reply

Your email address will not be published. Required fields are marked *

Recent Posts