A Two-Stage Algorithm for Identifying Software Failure Regions

Chengying Mao, Zheng Zhu, Tsong Yueh Chen, Dave Towey, Linlin Wen, Jifu Chen

Research output: Journal PublicationArticlepeer-review

Abstract

Software developers can only obtain a very small amount of information from the individual failure-causing inputs, which makes debugging difficult. Therefore, it is necessary to explore additional failure-causing inputs (failure regions) using the known failure-causing inputs. In order to accurately and efficiently identify the failure region, we propose a novel two-stage search algorithm, TS-FRI. In the initial exploration stage, a round-robin search identifies several boundary failure-causing points, and the failure region's centroid is estimated. During the main search stage, the boundary failure-causing points are identified through iterative division of the input domain with an equally sized partitioning strategy. This results in the boundary points being as dispersed as possible around the failure-region boundary, with the polytope formed by the points approximating the failure region (e.g., a polygon in two dimensions). The proposed algorithm is validated through simulation and empirical analysis: The experimental results show that the TS-FRI accuracy is at least comparable to the best accuracy of the compared three algorithms, and can be ten times better. In addition, TS-FRI only takes a quarter of the computation time and half the failure-validation cost of the other algorithms.

Original languageEnglish
JournalIEEE Transactions on Reliability
DOIs
Publication statusAccepted/In press - 2024

Keywords

  • Accuracy and efficiency
  • failure region identification
  • failure-based testing
  • software failure
  • software testing and debugging

ASJC Scopus subject areas

  • Safety, Risk, Reliability and Quality
  • Electrical and Electronic Engineering

Fingerprint

Dive into the research topics of 'A Two-Stage Algorithm for Identifying Software Failure Regions'. Together they form a unique fingerprint.

Cite this