Evaluating Automatic Fault Localization Using Markov Processes

被引:4
作者
Henderson, Tim A. D. [1 ]
Kucuk, Yigit [2 ]
Podgurski, Andy [2 ]
机构
[1] Google Inc, Mountain View, CA 94043 USA
[2] Case Western Reserve Univ, Dept Comp & Data Sci, Cleveland, OH 44106 USA
来源
2019 19TH IEEE INTERNATIONAL WORKING CONFERENCE ON SOURCE CODE ANALYSIS AND MANIPULATION (SCAM) | 2019年
关键词
statistical fault localization; coverage-based fault localization; suspicious-behavior-based fault localization; evaluation of fault localization techniques; Markov model; hitting-time rank score;
D O I
10.1109/SCAM.2019.00021
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Statistical fault localization (SFL) techniques are commonly compared and evaluated using a measure known as "Rank Score" and its associated evaluation process. In the latter process each SFL technique under comparison is used to produce a list of program locations, ranked by their suspiciousness scores. Each technique then receives a Rank Score for each faulty program it is applied to, which is equal to the rank of the first faulty location in the corresponding list. The SFL technique whose average Rank Score is lowest is judged the best overall, based on the assumption that a programmer will examine each location in rank order until a fault is found. However, this assumption oversimplifies how an SFL technique would be used in practice. Programmers are likely to regard suspiciousness ranks as just one source of information among several that are relevant to locating faults. This paper provides a new evaluation approach using first-order Markov models of debugging processes, which can incorporate multiple additional kinds of information, e.g., about code locality, dependences, or even intuition. Our approach, HTRank, scores SFL techniques based on the expected number of steps a programmer would take through the Markov model before reaching a faulty location. Unlike previous evaluation methods, HTRank can compare techniques even when they produce fault localization reports differing in structure or information granularity. To illustrate the approach, we present a case study comparing two existing fault localization techniques that produce results varying in form and granularity.
引用
收藏
页码:115 / 126
页数:12
相关论文
共 53 条
  • [1] Abreu R, 2006, 12TH PACIFIC RIM INTERNATIONAL SYMPOSIUM ON DEPENDABLE COMPUTING, PROCEEDINGS, P39
  • [2] A practical evaluation of spectrum-based fault localization
    Abreu, Rui
    Zoeteweij, Peter
    Golsteijn, Rob
    van Gemund, Arjan J. C.
    [J]. JOURNAL OF SYSTEMS AND SOFTWARE, 2009, 82 (11) : 1780 - 1792
  • [3] Aggarwal C., 2014, FREQUENT PATTERN MIN, DOI DOI 10.1007/978-3-319-07821-2
  • [4] Aggarwal C. C., 2014, Frequent pattern mining algorithms: A survey, P19, DOI 10.1007/978-3-319-07821-2_2
  • [5] Agrawal H, 1995, SIXTH INTERNATIONAL SYMPOSIUM ON SOFTWARE RELIABILITY ENGINEERING, PROCEEDINGS, P143, DOI 10.1109/ISSRE.1995.497652
  • [6] Agrawal R., 1993, SIGMOD Record, V22, P207, DOI 10.1145/170036.170072
  • [7] Evaluating the Accuracy of Fault Localization Techniques
    Ali, Shaimaa
    Andrews, James H.
    Dhandapani, Tamilselvi
    Wang, Wantao
    [J]. 2009 IEEE/ACM INTERNATIONAL CONFERENCE ON AUTOMATED SOFTWARE ENGINEERING, PROCEEDINGS, 2009, : 76 - 87
  • [8] [Anonymous], P 24 INT C SOFTW ENG
  • [9] [Anonymous], 2014, ACM SIGSOFT Software Engineering Notes, DOI [DOI 10.1145/2659118.2659125, 10.1145/2659118.2659125]
  • [10] Artzi Shay, 2010, P 19 INT S SOFTW TES, P49, DOI DOI 10.1145/1831708.1831715