Bug tracking
Track bugs with IBM solutions Subscribe for cloud updates
 Illustration with collage of pictograms of computer monitor, server, clouds, dots
What is bug tracking?

Bug tracking is the process of logging and monitoring bugs or errors during software testing. It is also referred to as defect tracking or issue tracking.

Large systems could have hundreds or thousands of defects. Each needs to be evaluated, monitored and prioritized for debugging. Sometimes, bugs might need to be tracked over a long period.

“Defect tracking is an important process in software engineering, as complex and business-critical systems have hundreds of defects,” says Tutorials Point. “One of the challenging factors is managing, evaluating and prioritizing these defects. The number of defects gets multiplied over a period of time and to effectively manage them, a defect tracking system is used to make the job easier." 1

Achieve workplace flexibility with DaaS

Read how desktop as a service (DaaS) enables enterprises to achieve the same level of performance and security as deploying the applications on premises.

Related content

Register for the guide on hybrid cloud

How bug tracking works

A software bug occurs when an application or program doesn’t work the way that it should function. Most errors are faults or mistakes made by system architects, designers or developers. Testing teams use bug tracking to monitor and report on errors that occur as an application is developed and tested.

“A major component of a bug tracking system is a database that records facts about known bugs,” says Wikipedia. “Facts may include the time a bug was reported, its severity, the erroneous program behavior and details on how to reproduce the bug; as well as the identity of the person who reported it and any programmers who may be fixing it.” 2

During its lifetime, a single defect could go through several stages or states. They include:

  • Active: Investigation is underway
  • Test: Fixed and ready for testing
  • Verified: Retested and verified by quality assurance (QA)
  • Closed: Can be closed after QA retesting or if it is not considered to be a defect
  • Reopened: Not fixed and reactivated 3

Bugs are managed based on priority and severity. Severity levels help to identify the relative impact of a problem on a product release. These classifications could vary in number, but they generally include some form of the following:

  • Catastrophic: Causes total failure of the software or unrecoverable data loss. There is no workaround and the product can’t be released.
  • Impaired functionality: A workaround may exist, but it is unsatisfactory. The software can’t be released.
  • Failure of noncritical systems: A reasonably satisfactory workaround exists. The product may be released if the bug is documented.
  • Minor: There is a workaround or the issue can be ignored. It does not impact a product release.

Usually, states and severity levels are monitored in a bug tracking database. A good tracking platform also ties into larger software development and management systems: the better to assess error status and the potential impact on overall production and timelines.

Why bug tracking is important

It is estimated that software developers make 100 to 150 errors for every thousand lines of code.4 According to a report by the Consortium for IT Software Quality (CISQ): “Even if only a small fraction—say 10 percent—of these errors are serious, then a relatively small application of 20,000 lines of code will have roughly 200 serious coding errors." 5

Software testing is essential for isolating and mitigating errors. A good QA process can uncover hundreds or even thousands of defects, and testing teams need to manage all of them. Integrating bug tracking into the testing workflow improves efficiency by helping testers prioritize, monitor and report on the status of each error.

“Defect tracking helps ensure that bugs found in the system actually get fixed,” says Agile consultant, Yvette Francino. “Tracking tools not only provide a way to ensure follow-through but also provide valuable metrics. Depending on the tool that is used, the team can tie defects to changed code, tests or other data that will allow for traceability or analysis on defect trends. If a certain module is riddled with defects, it may be time to review and rewrite that module." 6

Ideally, testing should be done as soon as possible—when bugs are easier and far less costly to fix. An earlier study by IBM found that defects found post-production or after release can cost 15 times more to fix compared to errors resolved early in development.

Many teams are now using a methodology that is known as continuous testing. In this case, quality testing and feedback are conducted at all stages of development, from design and coding to deployment. Modern technologies like artificial intelligence (AI), too, can aid the testing process by detecting and analyzing bugs early in the lifecycle.

Key features of bug tracking

Quality control is critical for developing robust applications. Software testing change management and bug tracking tools allow teams to uncover defects, measure their scope and impact — and resolve them.

In the Harvard Business Review, Nicholas Bowen outlines a process for managing defects. The first step is to classify and prioritize: “Generally, teams will prioritize two types of bugs: those that cause a system to crash and those that are less severe but could be pervasive....Next, decide your target response time for each level of severity. If the quality management system is new, then the initial focus should be on fixing the most severe bugs within hours or days. As you use your system, you can gather data on two key metrics, incoming bug rates and the productivity of the bug fixers, and adjust your targets as needed.” He says that organizations also need to create a system where defects and the time that is required to resolve them can be reviewed at all levels, from the CEO on down.7

A good bug tracking system can assist this process by providing a single workflow for defect monitoring, reporting and lifecycle traceability. It should further link with other management systems for shared visibility and feedback both within software development and the larger organization. IBM® Rational® ClearQuest®, for example, provides a centralized platform for error tracking and reporting. It integrates with other IBM development and change management systems, and helps improve communication and collaboration among developers, operations and broader teams.

As well, look for testing and tracking systems that use AI to detect errors early in the development process. It can optimize the number and types of tests that teams run, automate the testing process and use AI to analyze past defects and prevent them in the future.

Related solutions
IBM Rational ClearQuest

Change management software that helps improve developer productivity while accommodating the methodologies, processes and tools that best fit the project and team.

Explore Rational ClearQuest
Software testing

Get test results back to development faster. Reduce risk and cost by fixing defects earlier.

View testing
DevOps Insights

Get comprehensive insights from popular continuous integration and continuous delivery tools to increase the speed, quality and control of your applications.

Explore DevOps
Platform engineering services

Platform engineering is What’s Next in DevOps™.Accelerate time to market (TTM) with developer experience.

Explore consulting platform engineering
Resources What is software testing?

Learn about the types, benefits and evolution of software testing.

Software development for developers

IBM Developer provides the tools to help developers build and maintain software components.

The essential guide to continuous testing

Learn how integrated continuous testing accelerates application development.

Take the next step

Are you ready for DevOps? To deliver software and services at the speed the market demands, teams have to iterate and experiment rapidly, deploy new versions frequently, and be driven by feedback and data. The most successful cloud development teams adopt modern DevOps culture and practices, embrace cloud-native architectures and assemble toolchains from best-in-class tools to unleash their productivity.

Explore DevOps solutions Try for free