A Survey of Challenges in Spectrum Based Software Fault
      Localization
    Qusay Idrees Sarhan
                            and Árpád
                    Beszédes
    In software debugging, fault localization is the most
      difficult, expensive, tedious, and timeconsuming task,
      particularly for large-scale software systems. This is due to the
      fact that it requires significant human participation and it is
      difficult to automate its sub-tasks. Therefore, there is a high
      demand for automatic fault localization techniques that can help
      software engineers effectively find the locations of faults with
      minimal human intervention. This has led to the proposal of
      implementing different types of such techniques. However, Spectrum
      Based Fault Localization (SBFL) is considered amongst the most
      prominent techniques in this respect due to its efficiency and
      effectiveness. In SBFL, the probability of each program element
      (e.g., statement, block, or function) being faulty is calculated
      based on executing test cases and then using their results and
      corresponding code coverage information. However, SBFL techniques
      are not yet widely adopted in the industry. The rationale behind
      this is that they pose a number of issues and their performance is
      affected by several influential factors. For example, the
      characteristics of bugs, target programs, test suites, and
      supporting tools make their effectiveness differ dramatically from
      one case to another. There are massive studies on SBFL that cover
      its usage, formulas, performance, etc. So far, no dedicated survey
      points out comprehensively the issues of SBFL. In this paper,
      various SBFL challenges and issues have been identified,
      categorized, and discussed alongside many directions. Also, the
      paper raises awareness of the works being achieved to address the
      identified issues and suggests some potential solutions too.
      
      Keywords:
          Program spectra, spectrum based fault
      localization, software testing, challenges and issues, survey.
    
    Back