How to Identify and Manage Software Testing Risks?

How to Identify and Manage Software Testing Risks?
June 20 06:47 2019  

“To err is normal, but uncertainty is not welcome.” – says Tom DeMarco in his book Waltzing with Bears. Can this expression be applied for risk management on software projects? What these risks are like and why you are to face them? Real examples of risks in software testing and tips on their management on QATestLab blog.

Software Testing Risks: What are they?

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 risks are:

  • incorrect scheduling (wrong project assessment, distribution of tasks);
  • inaccurate customer requirements (requirements change during the work on the project);
  • violation of specifications (overload requirements/no exact requirements);
  • low productivity (unexperienced specialists).

Risk detection process. Main steps & examples.

The choice of risks is determined by their type and importance for the project, as well as their priority of 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 the new ones. Tom DeMarco in his book identifies three stages of risk detection:

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 on how can this or that issue happen, by what steps, under which circumstances, etc.

Root cause analysis. During this stage, it is necessary to analyze the difficulties, faced earlier and their reasons to prevent them in future work.

Table 1. Risks examples according to their categoryexamples of risks categories

Software Testing: Risk Management and Mitigation

The main secret in risk management is that you shouldn’t make up how to avoid them but learn how to control them. This process includes a series of steps which become a part of a project. To manage software risks in quality engineering try out the following steps:

  1. Make a list of risks you may face at your project.
  2. Ensure that all major risks of software development are listed.
  3. Conduct training on each of the risks:
    a) number the risks;
    b) identify risk indicators;
    c) assess the impact of risk on the cost and schedule of the project;
    d) assess the risk probability;
    e) identify risk mitigation measures in advance.
  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 before the start of the project, and the part on risks mitigation looks like this:

Table 2. Risks description in a Test Planrisks description examples
Table 3. Risks management in a Test Planrisks management examples

Summary on Software Testing Risks

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 on 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 a project.

For QA Lead: 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. During the work on any project, you should carefully track the entire testing process, focusing on both the progress of developers and testers, specify not only the percentage of work done but also how long it will take to complete.

For 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, problems, it is necessary to contact the project lead in order to eliminate the problem in time.

Learn more from QATestLab

Related Posts:

About Article Author

view more articles
Emma Dallas
Emma Dallas

has 3-year experience in blogging, technical writing, and copywriting.

View More Articles

Related Articles