by Tetiana Sukmanik | June 20, 2019 6:47 am
This article was updated in January 2021.
“To err is normal, but uncertainty is not welcome,” write Tom DeMarco and Timothy Lister in their book Waltzing with Bears: Managing Risk on Software Projects. This expression perfectly describes risk management in software projects. But what are these risks, and why do you need to face them? Find real examples of risks in software testing[1] and tips on their management in this article.
Risk is a combination of the probability and consequences of unfavorable events. This definition is also relevant for software projects but with more focus on their specifics. The main causes of software testing risks are:
When we choose which risks to consider, we base our choice on the type of risks, their importance for the project, and the priority of their prevention. The process of risk detection must be included in each stage of product development in order to think over the previously identified risks and find new ones. In their book, Tom DeMarco and Timothy Lister identify three stages of risk detection:
Let’s have a deeper look at each of the stages of risk identification.
Brainstorm. At this stage, various techniques are used to define the main cause of the risks’ origin.
Script building. It is the process of making a detailed scenario[2] on how this or that issue can happen, under what circumstances, by following which steps, etc.
Root cause analysis. At this stage, we need to analyze the difficulties faced earlier and their reasons to prevent them in future work.
Table 1. Risks examples according to their category
The main secret of risk management is that you shouldn’t make up ways to avoid risks but learn how to control them. This process includes a series of steps that become a part of a project. To manage software risks in quality engineering, try the following steps:
4. Identify potential risks as initial project assumptions. Develop a risk management scheme.
5. During the project estimation, conduct a positive assessment, without including the detected risks.
The list of possible project risks is presented in a test plan. This document is developed and agreed upon before the start of the project, and the part on risks mitigation looks like this:
Table 2. Risks description in a Test Plan
Table 3. Risks management in a Test Plan
The most important thing to remember is that risks are an integral part of any project. You should not try to deny or ignore them. It is important to detect them in time and minimize their appearance in the project. To do this, you need to accept the project risks, analyze all possible causes of their occurrence (even the most unlikely ones), sort them by priority and track them while working on the project.
For a QA Lead[4]: Risks can be associated with the development process as well as the testing or quality assurance process. It is important to notice and eliminate them in time. While working on any project, you should carefully track risks through the entire testing process, focusing on the progress of both developers and testers and specifying not only the percentage of work done but also how long it will take to complete.
For a QA Engineer: The process of tracking risks is important not only for a project lead but also for a tester. In case of unforeseen situations, blockers in work, or any problems, it is necessary to contact the project lead in order to eliminate the issue in time.[5]
[6]
Source URL: https://blog.qatestlab.com/2019/06/20/software-testing-risks/
Copyright ©2024 QATestLab Blog unless otherwise noted.