OptRCA: A More Efficient and Accurate Approach for Automated Root Cause Analysis and Explanation
With the development of automated software testing technology, software developers can get a large number of crash test cases in a short period of time. However, analyzing these crash test cases and finding their root cause is a time-consuming and labor-intensive task. Techniques based on reverse execution and backward taint analysis are proposed to locate the root cause, but can’t provide context information or explanation of the underlying fault. To address these two limitations, researchers have proposed an automated root cause analysis technique called AURORA. Although this technique provides powerful root cause analysis capabilities, it also have two obvious shortcomings. First, the results of root cause analysis are not accurate enough. Second, the efficiency of root cause analysis is not high enough. In order to improve these two shortcomings, we propose OptRCA, a more efficient and accurate approach for root cause analysis and explanation. Like AURORA’s fuzzing strategy, OptRCA is also designed based on AFL’s crash mode. The difference between them is mainly reflected in three points. First of all, the goal pursued by OptRCA is different from that of normal fuzzing technology. OptRCA pursues maximum correlation to ensure that as many crash test cases as possible are related to the same root cause. This test case with maximum correlation can greatly improve the accuracy of root cause analysis. Second, OptRCA proposed a more efficient non-crash test case retention strategy, which we named “Hill-Climbing Retention.” Using the hill-climbing retention method, OptRCA can obtain sufficient root cause information while retaining only a few non-crash test cases. Since the number of test cases is greatly reduced, the efficiency of OptRCA’s subsequent root cause analysis process is also greatly improved. In addition, OptRCA also optimizes the analysis formula to obtain more accurate analysis results. In the evaluation experimental results, OptRCA is significantly better than AURORA in terms of accuracy and efficiency. Quantitative analysis shows that OptRCA is 65% more accurate and 61% more efficient than AURORA.
Authors
- Jingquan Ge (ORCID: https://orcid.org/0000-0002-9879-0260)
- Sheikh Mahbub Habib (ORCID: https://orcid.org/0000-0003-1183-4310)
- Yaowen Zheng (ORCID: https://orcid.org/0000-0002-8953-0782)
- Wei Ma (ORCID: https://orcid.org/0000-0002-0044-466X)
- Gabriel Byman (ORCID: https://orcid.org/0009-0008-7639-6722)
- Yuekang Li (ORCID: https://orcid.org/0000-0003-4382-0757)
- Yang Liu (ORCID: https://orcid.org/0000-0001-7300-9215)
- Praveen Kakkolangara
Institutions
- Continental (Germany) (DE)
- Nanyang Technological University (SG)
- Chinese Academy of Sciences (CN)
- UNSW Sydney (AU)
- Institute of Information Engineering (CN)
Publication Details
- Journal
- ACM Transactions on Software Engineering and Methodology
- Published
- 2025-05-23
- DOI
- https://doi.org/10.1145/3736718
- Citations
- 1
- Primary Topic
- Software Testing and Debugging Techniques
- Type
- article
- Field-Weighted Citation Impact
- 2.31