According to Wikipedia:
In science and engineering, root cause analysis (RCA) is a method of problem solving used for identifying the root causes of faults or problems. It is widely used in IT operations, telecommunications, industrial process control, accident analysis (e.g., in aviation, rail transport, or nuclear plants), medicine (for medical diagnosis), healthcare industry (e.g., for epidemiology), etc.
RCA is applied with the intention to take a corrective action that will prevent similar bugs from occurring in the future. Bugs can be found at different phases of the project.
Requirement Phase:
Analysis of bugs found in this phase often reveals vague or inconsistent requirement specifications for the project. It can also be a result of misunderstanding between developer and client. This can easily be rectified by keeping the documents simple and consistent.
Development Phase:
More bugs can be found in this phase. Reason can be simple human mistakes or again misunderstanding of the specifications. RCA will reveal the actual reasons behind each bug. Rectification can be in the form of:
- Code Reviews
- Unit tests
- Automated Functional tests
Now that the product is developed and testing is ongoing, delivery deadline will be eminent. A bug at this stage can be critical and very costly to fix. Corrective actions can be
- Regression automation
- Exhaustive testing with random stimuli
Overall RCA can be applied not only to bugs but also projects and management practices.
Reference:
(1), https://en.wikipedia.org/wiki/Root_cause_analysis
(2). https://suryas.org/root-cause-analysis-found-a-bug-now-what-966dd0c36f3
(3). http://www.prosolve.co.nz/wp-content/uploads/2018/01/RCFA_process-600x450.jpg
No comments:
Post a Comment