Saturday 29 July 2017

Root cause analysis


Let’s start with the “WHY?” questions, (The list is not limited). You can start from the outer phase and move towards the inner phase of SDLC.
How should I handle root cause analysis in software testing

It's important to take finding the root cause of a defect seriously in an Agile team using continuous improvement. Expert Amy Reichert explains how she narrows it down.
What is Root Cause Analysis?

Introduction:


RCA (Root cause analysis) is a mechanism of analyzing the defects, to identify its cause. We brainstorm, read and dig the defect to identify whether the defect was due to “testing miss”, “development miss” or was a “requirement or designs miss”.

Doing the RCA accurately helps to prevent defects in the later releases or phases. If we find, that a defect was due to design miss, we can review the design documents and can take appropriate measures. Similarly if we find that a defect was due to testing miss, we can review our test cases or metrics, and update it accordingly.

RCA should not be limited only to the testing defects. We can do RCA on production defects as well. Based on the decision of RCA, we can enhance our test bed and include those production tickets as regression test cases to ensure that the defect or similar kinds of defects are not repeated.

How Root Cause Analysis is Done?

There are many factors which provokes the defects to occur


  • Unclear / missing / incorrect requirements
  • Incorrect design
  • Incorrect coding
  • Insufficient testing
  • Environment issues ( Hardware, software or configurations)


These factors should always be kept in mind while kicking off the RCA process.

There is no defined process of doing RCA. It basically starts and proceeds with brainstorming on the defect. The only question which we ask to ourselves while doing RCA is “WHY?”and “WHAT?” We can dig into each phase of the life cycle to track, where the defect actually persists.

Key Benefits of Root Cause Analysis in Software Testing


  • Analysis of near-misses
  • Reinforcement of quality control
  • Continuous improvement
  • Early identification of risks
  • Enhanced Project management
  • Improvement in Performance Management



Failure Mode and Effects Analysis (FMEA)

This method derives the idea of Risk Analysis approach to identify points or areas where a system could fail.


  • Impact Analysis


This is yet another useful method which provides the facility to analyze the positive & negative impact of the change on different areas of the system or application which can be affected.


  • Kaizen or Continuous Improvement


Kaizen or CI provides significance to those in the organization who are able to identify the places for improvement. Based on the applied small changes or solutions, one can make the system better.


  • Identification of Defect Injected / Detected phase


The Defect Injected Phase (the phase in which the defect was injected) and the Defect Detected Phased (the phase in which the defect was identified) are two important aspects to be identified for any ideal tester. Identification of the found defect and the rectified defect is known as Defect Age.

No comments: