Friday, January 27, 2012

Severity Vs Priority

Severity and Priority are two completely different concepts when it comes to managing Software defects.
•    Bug severity indicates how much effect a bug is doing on the application.
•    Bug priority indicates how important or how quickly it is to fix that bug.

Severity defines the impact that a given defect has on the system.
They are classified in following sections
  1. Blocker
    Application crashes or fails to initialize. Database connectivity issue where system is unable to fetch data or fetches wrong data.
  2. Critical
    Important feature in test fails.
  3. Major
    Secondary feature in test is not operating as expected.
  4. Normal
    Secondary feature in test has some not so important issues. Minor feature in test is not operating as expected.
  5. Minor
    Secondary feature in test has some UI issues. Minor feature in test has some not so important issues.
  6. Trivial
    Minor feature in test has some UI issues or typos.
  7. Enhancement
    Any modification in the existing product which is not covered in requirements, but the stated modification shall be essential for look and feel or for business.
These days Normal and Trivial are not in much use, most of the bug reporting tool have Blocker, Critical, Major, Minor and Enhancement as severity values in their drop-down for Severity field.

Priority defines the order in which we should resolve a defect.
They are classified in following sections
  1. Priority 1
    -    Should be fixed as soon as possible.
    -    The application hangs or crashes (Blockers, Critical and Show stopper Issues).
    -    Data loss taking place.
    -    Memory Leakages are identified.
    -    Implementation is opposite to the requirement specified.
  2. Priority 2
    -    Should be considered to fix as soon as possible.
    -    Having important feature some logical issues. (Wrong functionality implemented).
    -    Performance Issues.
    -    Major Cosmetic Issues
    -    Important Typo errors to be fixed
  3. Priority 3
    -    Should be considered to fix.
    -    Having secondary or other feature some logical issues. (Wrong functionality implemented).
    -    Minor Cosmetic Issues
  4. Priority 4
    -    Should be considering to be fixed before build is released to clients.
    -    Minor Cosmetic Issues.
    -    Other Typo Errors.
  5. Priority 5
    -    Enhancement and Suggestion.
Some bug reporting tool as High, Medium and Low as their Priority values in their drop-down for Priority values.

Following are the examples where different combination of Severity and Priority can be clubbed.
  • High severity, High priority
    If we need to print some data on paper or display some data on screen, and you observed that the data is not printed. For example a Mobile number which is a mandatory field is to be entered in an application and it is to be printed, but it is not printed even though user has entered data. The scenario stated is of High Severity and High Priority. 
  • High severity, Low priority
    If we need to print some data on paper or display some data on screen, and you observed that the data is printed but not in order in which we expected. For example an address is to be printed as Building name, followed by Flat No but in actual implementation the order is not as per requirement. The scenario stated is of High Severity but with Low Priority. 
  • Low severity, High priority
    If we need to print some data on paper or display some data on screen, and you observed that the data is printed but it gets trimmed at the end. For example a Mobile number which is a mandatory field is to be entered in an application and it is to be printed, but it is not printed completed. For example user enters 10 digits and in actual implementation only 8 – 9 digits are printed even though there is more space which permits more digit to be printed. The scenario stated is of Low Severity and High Priority. 
  • Low severity, Low priority
    If we need to print some data on paper or display some data on screen, and you observed that the data is printed but some punctuation are missing as we expected. For example an address is to be printed as Building name followed by comma and Flat No but in actual implementation the comma is missing. The scenario stated is of Low Severity but with Low Priority.

Note: There are different process and methodologies followed in various organizations. The above content is as per my experience in industry so far.
Please feel free to write comments if you like my post or else if your opinion is different or you may like to add any more points in them.

12 comments:

  1. I surfed a lot to get information on Severity Vs Priority, but didn't find any useful information. But your post has explained it in very friendly manner. Thanks Chirag

    ReplyDelete
    Replies
    1. You feed back is critical for me. It helps me to improve my self.
      Thank You!

      Delete
    2. Thanks for the nice article. In my opinion, the testers assign severity when they discover an issue, and usually use the default priority.

      Later in the development cycle, the priority is modified to reflect the order in which the team wants to address the bugs.

      And late in the cycle, during Triage, the priority may be further modified, to help separate the must-fix bugs from the rest.

      Delete
  2. Try adding another example. The one you have added is interesting, but you could definitely add a more commanly used software as an example i.e. Using Google as an example, and gmail as the application.

    ReplyDelete
  3. Hi,Will u please help me with how to do "SECURITY TESING" for web applications ?

    ReplyDelete
  4. Really helpful indeed....thnks

    ReplyDelete
  5. Really helpful article. Thanks a ton for this.

    ReplyDelete
  6. Really helpful article..Thanks a lot for the simple yet sophisticated examples.

    ReplyDelete
  7. nicely explained, good job !!!!

    ReplyDelete
  8. This comment has been removed by the author.

    ReplyDelete
  9. Thanks for sharing useful, I would like to share one of the best Independent Software Testing Company! Indium software is Established in 1999, its Offshore & In-Housing Software testing services provider company. Indium has its registered office in California, Georgia and also has multiple offshore delivery centers in India.
    Services like Mobile application testing services, Game software testing services, Software Testing services, QA services, Software verification and validation, Offshore Software testing, QA Validation services, Test consulting services, automated software testing, quality assurance software testing, web based application testing .

    ReplyDelete