Codementor Events

Bugs in Software Testing – What, Where and How

Published Aug 06, 2019
Bugs in Software Testing – What, Where and How

It is impossible to build a web application which is 100% bug-free. You can minimize the error, flaw, failure or fault in a computer program or system that causes it to produce an incorrect or unexpected result. This article will provide you in-depth knowledge regarding the bugs in software testing.

Introduction to Bugs in Software Testing

In the present world, with technology making bigger strides in every walk of like, software development needs to be precise, quick and deliver with optimum quality. A thing that is deal-breaker in the software world is a “bug” in the software being released.

A “Bug” is a most unwelcomed word in the software development process. A bug indicates a fault, error or failure in the software/system being built that produces unexpected results. A bug identified needs to be tracked and fixed to ensure optimum quality in the software/system being developed.

The journey of any error in the code to being recognized as a Bug is explained below

fig-1-528x96.png

Bugs and its Source

A bug is actually an error which would have been introduced in the due course of the software development life cycle. The most common sources of Bugs are detailed below

  • Ambiguous Requirements – Unclear requirement is a source of Bugs being introduced. This can be avoided by having strong Static Testing techniques, Reviews, Walkthroughs, etc.
  • Programming Errors – Incorrect coding standards is a source which can be minimized with proper code review and unit testing
  • Unachievable Deadlines – Stringent timelines often lead to bugs which can be avoided if proper planning is done to ensure timelines are driven based on the estimates

Every bug not only breaks the functionality it occurs in but also has probabilities of causing a ripple effect in other areas of the application. This ripple effect needs to be evaluated when fixing any bug. Lack of foresight in anticipating such issues can cause serious problems and an increase in bug count.

Bugs in Software Testing and Its Impact

The impact of the Bug is measured based on Severity and Priority. Impact to business is measured in terms of Severity, whereas impact to business execution is measure in terms of Priority.

The table below is a standard definition used across the software industry for the Severities.

Capture.PNG

Priority determines the impact of business execution, and subsequently, how quickly the defect needs to be fixed to ensure the project plan is on track.

The table below is a standard definition used across the software industry for the Priorities

Capture.PNG

Bug Lifecycle

Every reported bug follows a lifecycle till closure. A bug life cycle illustrates the journey of a bug from the time it is created to the time it is fixed and closed. A generic bug lifecycle is explained below:

Bug-Life-Cycle-235x300.png

The description for each status in the lifecycle mentioned above are mentioned below

Capture.PNG

Bugs in Software Testing and Cost to Fix

There is no set cost one can ascribe to a software bug. However, the cost of a bug goes up based on how far down the Software Development Life Cycle the bug is found. Any bug found in production the code needs to go back to the beginning of the SDLC where the development cycle can restart.

The figure below illustrates the cost of fixing a bug depending on the SDLC phase it is identified:

SDLC-Bugs-in-Software-Testing-528x198.png

With this, we have come to the end of our Bug in Software Testing article. I hope you understood what are bugs, its source, and impact.

Got a question for us? Please mention it in the comments section of “Bugs in Software Testing” and we will get back to you.

Discover and read more posts from Sayantini
get started