Criticality (severity) is the importance of the impact of a particular defect on the development or operation of a component or system.
The criticality of the error is determined by the tester, who found a bug, but before that he must answer the following questions:
- How will this error affect the testing process?
- How will this error affect the customer?
- How does this error affect the system?
- How does this error affect the timing of testing?
- Does this error block other tests?
- Etc.
Each company can define its own scale for the degree of criticality (severity), but there are several levels that are used by almost all teams:
- Blocker / show-stopper (blocking) - software or a specific component is not suitable for use / testing (complete failure, system crash, etc.) and there is no workaround.
Examples: the system crashes when the user presses the start button; the system does not start after damage to the installer; shutdown software caused by hardware failures. - Critical - the main functionality does not work as it should, there is a workaround that may affect the integrity of the tests.
Example: software can randomly crash using various functionalities; The software produces inconsistent results, the basic requirements can not be confirmed. - Major (important) - the defeat of minor functionality, there is no effect on other components, and there is a fast and effective bypass.
Example: A user cannot use certain functionality directly, but can use it by using access to it from different modules. - Minor (minor, minor) - a minor impact on a particular place, there is no need to create a workaround, the integrity of the software is not affected.
Examples: spelling errors, improvements, change request