The ability to make the right prioritization
When you think about the term “Prioritization” you understand that it’s something you do on a daily basis, as humans we make prioritization too many different aspects in our daily life (I know you have 1M examples running in your head right now…), the testing world is not different we make prioritization for many aspects in our daily work while working on different project.
After the short description described above, you probably ask yourself the following questions:
- What so special in prioritization?
- Why I chose this characteristics to be a criterion for a specialist tester?
- Why prioritization is so important in the testing world?
The answer for such questions depends on the basic understanding that QA is all about reducing the “Risks”. Let me explain, in the testing world we have few basic rules that relevant for all testing process no matter what is tested software, among those rules we can find the one that talks about the testing coverage that cannot reach to 100%(in other words this basic rule stating that you cannot cover all the tests you want within a testing cycle) therefore you must make a good prioritization that responsible to cover the important test cases that will be executed and the once that will be excluded from the execution because the prioritization level of them marked with low-level, now think about the importance you have as a tester when you need to decide which test cases will not be executed and may cause defects on client environments, the responsibility is Hugh and that’s the place when a specialist tester will make the difference, the specialist tester will know how to prioritize the tests based on deep understanding of the product in a way that the total risk at the end will set too minimum.
Benefits you gain from prioritization:
- Reduce the risk for the version.
- Reduce the pressure.
- The importance tests executed early.
- All the importance tests are executed within the testing cycle.
Recommendations for efficient prioritization process:
Each bullet in this list is a layer in the way to make an efficient process of prioritization, you must take then in mind before you start the prioritization process:
- Understand in the product (Architecture, design, integrations…).
- Know your clients and what their needs (how the software answer the problem).
- Understand the project timelines (prioritization come from the narrow timelines you always have in a testing process).
- Understand the project scale.
- Understand the available resources you have on this project.
- Understand the main targets of the project.
- Write all tests, don’t exclude tests with lower/medium priority.