Thursday 4 January 2018

Measuring Bug Cost in Software Development

The pace at which, the world turns over today demands a culture of change and innovation on a day-to-day basis. Innovation is the key to catch up, teamed with the ability to quickly respond to emerging threats. The time in which we need to respond however continues to decrease. From an information technology perspective, this suggests that we need to be able to make software changes more rapidly with quality than ever before. However, many programs devote more than 50 percent of the schedule to testing!
Not only does testing account for an increasingly large percentage of the time, it also utilizes a large proportion of the cost of any new software development. A recent study by Statista showed that percentage of IT spends from 2012 to 2019 has been increasing and quality assurance and testing will account for 26 percent of an organization’s budget! Both these numbers are way too high and restrictive for delivering a winning go-to-market time and winning a cost advantage.

Image: Proportion of budget allocated to quality assurance and testing as a percentage of IT spend from 2012 to 2019.

Let’s first identify, how this figure adds up? What is the cost of a bug? 

As per a study conducted by the Systems Sciences Institute at IBM,
The cost to fix an error found after product release was four to five times as much as one uncovered during design, and up to 100 times more than one identified in the maintenance phase.

So basically the bug cost is directly proportional to how far down the SDLC (Software Development Life Cycle) the bug is found.  The later you find, the more costlier it is! Moreover it gives rise to the ripple effect . One change to accommodate the code fix can in turn jeopardize other equations in the code.
So not only is the bug going to cost more to fix as it moves through a second round of SDLC, but a different code change could be delayed, which adds cost to that code change as well.
To cite an example, cost of a bug found in the initial phase of requirements gathering could be $10. If the product owner doesn’t find that bug until the QA testing phase, then the cost could be $150. If it’s not found until production, the cost could be $1000!
Given that testing is the key cost driver for software projects, and that it’s cost goes up with application size, it is pertinent for software companies to ensure that it is done well. While there are many different ways to adopt effective testing strategies,this blog focuses on how to use a project management tool to measure the cost of bugs and take corrective actions.

Using  Project Management tool to evaluate the Bug cost

Perhaps the most obvious place to find data that points to your team’s performance is your Project Management Tool. This is where tasks are defined and assigned, bugs are entered and commented on, and time is associated with estimates and real work. Essentially your Project management tool is a store house of a wealth of information that can help reduce costs.
An intelligent Project Management Tool can further help reduce testing costs and increase testing efficiencies while contributing to enhanced systems and software quality in terms of faster, broader, and more efficient defect detection.
Moreover many contemporary project management tools like PineStem offer measurement of what is produced, along with the measurement of the impact of the changes that are made to improve delivery.
Tools like PineStem are able to answer pressing questions like “Did this change improve the process?” and “Are we delivering better now?”

How is this done?

To cite an example, our Project Management Tool PineStem, has a very sophisticated performance-monitoring and tracking system which is used to manage tasks. Using PineStem a project manager can easily calculate the following numbers for a developer:
Total number of,
  • tasks he/she worked on
  • budgeted hours
  • hours spent by the employee
  • bugs assigned to the employee (assuming only one developer works on a given task)
Using these details the project manager can easily calculate the bugs per hour value.  From this value,  other numbers can be derived including cost per hour of the developer fixing it, and finally total cost of the bugs.
These data points offer a wealth of data for you to take corrective actions, adjust your processes, improve quality, measure teams and handle appraisals. Based on reports generated, you can evaluate individual employee’s performance and number of bugs created by the employee. This helps in taking corrective actions to ensure that it is not repeated in future projects
Thus recording and retrieving data from a Project Management Tool can help you with vital information that can be used to improve performance.
If you’d like to know more details on how to evaluate performance and how to calculate some key quality metrics, do write to us today at sales@pinestem.com.
To know more about PineStem visit https://pinestem.com/ You can also take a free trial for unlimited time.
References
  1. http://blog.celerity.com/the-true-cost-of-a-software-bug
  2. https://www.statista.com/statistics/500641/worldwide-qa-budget-allocation-as-percent-it-spend/

No comments:

Post a Comment

Voice of the Customer (VOC) – Dynamics 365 CRM

Tags:   Dynamics 365   Dynamics CRM   feedback   survey   VOC   Voice of customer Introduction To Voice of the Customer For any bus...