Defect Types In Software Testing

What is Severity?

A nightmare of any QA engineer is a bug which returns from production. You work hard, you try to check every possible flow, you test it for 8+ hours per day, and after the release the user within a week reports a critical problem. How is it possible? Why it happens and how to fix it? I split possible defects. Aug 22, 2019  A defect is a shortcoming, an imperfection or a flaw in any system, which deviates the actual result from the expected one. Moreover, when the result does not meet the requirements or expectations of the end user, it is termed as a defect, error, or a bug. In software testing, Defect.

Severity is defined as the degree of impact a Defect has on the development or operation of a component application being tested.

Higher effect on the system functionality will lead to the assignment of higher severity to the bug. Quality Assurance engineer usually determines the severity level of defect

What is Priority?

Priority is defined as the order in which a defect should be fixed. Higher the priority the sooner the defect should be resolved.

Defects that leave the software system unusable are given higher priority over defects that cause a small functionality of the software to fail.

Types

Defect Severity and Priority Types

In Software Testing, Defect severity can be categorized into four class

  • Critical: This defect indicates complete shut-down of the process, nothing can proceed further
  • Major: It is a highly severe defect and collapses the system. However, certain parts of the system remain functional
  • Medium: It causes some undesirable behavior, but the system is still functional
  • Low: It won't cause any major break-down of the system

Defect priority can be categorized into three class

  • Low: The Defect is an irritant but repair can be done once the more serious Defect has been fixed
  • Medium: During the normal course of the development activities defect should be resolved. It can wait until a new version is created
  • High: The defect must be resolved as soon as possible as it affects the system severely and cannot be used until it is fixed

Tips for determining the Severity of a Defect

Defect Types In Testing

  • Decide the frequency of occurrence: In some cases, if the occurrence of a minor-defect is frequent in the code, it can be more severe. So from a user's perspective, it is more serious even though it is a minor defect.
  • Isolate the defect: Isolating the defect can help to find out its severity of the impact.

Priority vs Severity: Key Difference

Priority
Severity
  • Defect Priority has defined the order in which the developer should resolve a defect
  • Defect Severity is defined as the degree of impact that a defect has on the operation of the product
  • Priority is categorized into three types
    • Low
    • Medium
    • High
    • Critical
    • Major
    • Moderate
    • Minor
    • Cosmetic
  • Priority is associated with scheduling
  • Severity is associated with functionality or standards
  • Priority indicates how soon the bug should be fixed
  • Severity indicates the seriousness of the defect on the product functionality
  • Priority of defects is decided in consultation with the manager/client
  • QA engineer determines the severity level of the defect
  • Priority is driven by business value
  • Severity is driven by functionality
  • Its value is subjective and can change over a period of time depending on the change in the project situation
  • Its value is objective and less likely to change
  • High priority and low severity status indicates, defect have to be fixed on immediate bases but does not affect the application
  • High severity and low priority status indicates defect have to be fixed but not on immediate bases
  • Priority status is based on customer requirements
  • Severity status is based on the technical aspect of the product
  • During UAT the development team fix defects based on priority
  • During SIT, the development team will fix defects based on the severity and then priority

Example of Defect Severity and Priority

Defect Types In Software Testing Near Me

Types

Let see an example of low severity and high priority and vice versa

  • A very low severity with a high priority: A logo error for any shipment website, can be of low severity as it not going to affect the functionality of the website but can be of high priority as you don't want any further shipment to proceed with the wrong logo.
  • A very high severity with a low priority: Likewise, for flight operating website, a defect in reservation functionality may be of high severity but can be a low priority as it can be scheduled to release in a next cycle.

Defect Triage

Defect triage is a process that tries to do the re-balancing of the process where the test team faces the problem of limited availability of resources. So, when there are large number of the defect and limited testers to verify them, defect triage helps to try to get as many defects resolved based on defect parameters like severity and priority.

Defect Types In Software Testing

How to determine Defect Triage:

Most systems use priority as the main criteria to assess the defect. However, a good triage process considers the severity as well.

The triage process includes the following steps

  • Reviewing all the defects including rejected defects by the team
  • Initial assessment of the defects is based on its content and respective priority and severity settings
  • Prioritizing the defect based on the inputs
  • Assign the defect to correct release by product manager
  • Re-directs the defect to the correct owner/team for further action

Guidelines that every tester should consider before selecting a severity

Defect Types In Software Testing Center

Severity parameter is assessed by the tester whereas the priority parameter is assessed by the product manager or by the triage team. For prioritizing the defect, it is imperative for a tester to choose the right severity to avoid confusion with the development team.

  • Understand the concept of priority and severity well
  • Always assign the severity level based on the issue type as this will affect its priority
  • Understand how a particular scenario or Test Case would affect the end-user
  • Need to consider how much time it would take to fix the defect based on its complexity and time to verify the defect

Types Of Software Defects

Conclusion:

Software Defects Categories

  • In Software Engineering, Assigning wrong severity to defect can delay the STLC process and can have some drastic implication on the overall performance of the team. So, the responsible person needs to be precise and accurate on its call for assigning defect.