A survey on software fault localization

W. Eric Wong, Ruizhi Gao, Yihao Li, Rui Abreu, Franz Wotawa

Publikation: Beitrag in einer FachzeitschriftReview eines Fachbereichs (Review article)ForschungBegutachtung

Abstract

Software fault localization, the act of identifying the locations of faults in a program, is widely recognized to be one of the most tedious, time consuming, and expensive - yet equally critical - activities in program debugging. Due to the increasing scale and complexity of software today, manually locating faults when failures occur is rapidly becoming infeasible, and consequently, there is a strong demand for techniques that can guide software developers to the locations of faults in a program with minimal human intervention. This demand in turn has fueled the proposal and development of a broad spectrum of fault localization techniques, each of which aims to streamline the fault localization process and make it more effective by attacking the problem in a unique way. In this article, we catalog and provide a comprehensive overview of such techniques and discuss key issues and concerns that are pertinent to software fault localization as a whole.

Spracheenglisch
Aufsatznummer7390282
Seiten707-740
Seitenumfang34
FachzeitschriftIEEE Transactions on Software Engineering
Jahrgang42
Ausgabennummer8
DOIs
StatusVeröffentlicht - 1 Aug 2016

Fingerprint

Program debugging

Schlagwörter

    ASJC Scopus subject areas

    • Software

    Fields of Expertise

    • Information, Communication & Computing

    Treatment code (Nähere Zuordnung)

    • Review

    Dies zitieren

    A survey on software fault localization. / Wong, W. Eric; Gao, Ruizhi; Li, Yihao; Abreu, Rui; Wotawa, Franz.

    in: IEEE Transactions on Software Engineering, Jahrgang 42, Nr. 8, 7390282, 01.08.2016, S. 707-740.

    Publikation: Beitrag in einer FachzeitschriftReview eines Fachbereichs (Review article)ForschungBegutachtung

    Wong, W. Eric ; Gao, Ruizhi ; Li, Yihao ; Abreu, Rui ; Wotawa, Franz. / A survey on software fault localization. in: IEEE Transactions on Software Engineering. 2016 ; Jahrgang 42, Nr. 8. S. 707-740.
    @article{52eb76f0306b479ba62297b00c6f7517,
    title = "A survey on software fault localization",
    abstract = "Software fault localization, the act of identifying the locations of faults in a program, is widely recognized to be one of the most tedious, time consuming, and expensive - yet equally critical - activities in program debugging. Due to the increasing scale and complexity of software today, manually locating faults when failures occur is rapidly becoming infeasible, and consequently, there is a strong demand for techniques that can guide software developers to the locations of faults in a program with minimal human intervention. This demand in turn has fueled the proposal and development of a broad spectrum of fault localization techniques, each of which aims to streamline the fault localization process and make it more effective by attacking the problem in a unique way. In this article, we catalog and provide a comprehensive overview of such techniques and discuss key issues and concerns that are pertinent to software fault localization as a whole.",
    keywords = "execution trace, program debugging, Software fault localization, software testing, survey, suspicious code",
    author = "Wong, {W. Eric} and Ruizhi Gao and Yihao Li and Rui Abreu and Franz Wotawa",
    year = "2016",
    month = "8",
    day = "1",
    doi = "10.1109/TSE.2016.2521368",
    language = "English",
    volume = "42",
    pages = "707--740",
    journal = "IEEE Transactions on Software Engineering",
    issn = "0098-5589",
    publisher = "Institute of Electrical and Electronics Engineers",
    number = "8",

    }

    TY - JOUR

    T1 - A survey on software fault localization

    AU - Wong, W. Eric

    AU - Gao, Ruizhi

    AU - Li, Yihao

    AU - Abreu, Rui

    AU - Wotawa, Franz

    PY - 2016/8/1

    Y1 - 2016/8/1

    N2 - Software fault localization, the act of identifying the locations of faults in a program, is widely recognized to be one of the most tedious, time consuming, and expensive - yet equally critical - activities in program debugging. Due to the increasing scale and complexity of software today, manually locating faults when failures occur is rapidly becoming infeasible, and consequently, there is a strong demand for techniques that can guide software developers to the locations of faults in a program with minimal human intervention. This demand in turn has fueled the proposal and development of a broad spectrum of fault localization techniques, each of which aims to streamline the fault localization process and make it more effective by attacking the problem in a unique way. In this article, we catalog and provide a comprehensive overview of such techniques and discuss key issues and concerns that are pertinent to software fault localization as a whole.

    AB - Software fault localization, the act of identifying the locations of faults in a program, is widely recognized to be one of the most tedious, time consuming, and expensive - yet equally critical - activities in program debugging. Due to the increasing scale and complexity of software today, manually locating faults when failures occur is rapidly becoming infeasible, and consequently, there is a strong demand for techniques that can guide software developers to the locations of faults in a program with minimal human intervention. This demand in turn has fueled the proposal and development of a broad spectrum of fault localization techniques, each of which aims to streamline the fault localization process and make it more effective by attacking the problem in a unique way. In this article, we catalog and provide a comprehensive overview of such techniques and discuss key issues and concerns that are pertinent to software fault localization as a whole.

    KW - execution trace

    KW - program debugging

    KW - Software fault localization

    KW - software testing

    KW - survey

    KW - suspicious code

    UR - http://www.scopus.com/inward/record.url?scp=84983371446&partnerID=8YFLogxK

    U2 - 10.1109/TSE.2016.2521368

    DO - 10.1109/TSE.2016.2521368

    M3 - Review article

    VL - 42

    SP - 707

    EP - 740

    JO - IEEE Transactions on Software Engineering

    T2 - IEEE Transactions on Software Engineering

    JF - IEEE Transactions on Software Engineering

    SN - 0098-5589

    IS - 8

    M1 - 7390282

    ER -