A Variability Fault Localization Approach for Software Product Lines

被引:1
|
作者
Trang Thu Nguyen [1 ]
Kien-Tuan Ngo [1 ]
Son Nguyen [1 ]
Hieu Dinh Vo [1 ]
机构
[1] Vietnam Natl Univ, Univ Engn & Technol, Fac Informat Technol, Dept Software Engn, Hanoi 100000, Vietnam
关键词
Computer bugs; Location awareness; Elevators; Software product lines; Codes; Testing; Measurement; Fault localization; variability bugs; feature interaction; software product line; configurable code;
D O I
10.1109/TSE.2021.3113859
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Software fault localization is one of the most expensive, tedious, and time-consuming activities in program debugging. This activity becomes even much more challenging in Software Product Line (SPL) systems due to variability of failures. These unexpected behaviors are induced by variability faults which can only be exposed under some combinations of system features. The interaction among these features causes the failures of the system. Although localizing bugs in single-system engineering has been studied in-depth, variability fault localization in SPL systems still remains mostly unexplored. In this article, we present VarCop, a novel and effective variability fault localization approach. For an SPL system failed by variability bugs, VarCop isolates suspicious code statements by analyzing the overall test results of the sampled products and their source code. The isolated suspicious statements are the statements related to the interaction among the features which are necessary for the visibility of the bugs in the system. In VarCop, the suspiciousness of each isolated statement is assessed based on both the overall test results of the products containing the statement as well as the detailed results of the test cases executed by the statement in these products. On a large public dataset of buggy SPL systems, our empirical evaluation shows that VarCop significantly improves two state-of-the-art techniques by 33% and 50% in ranking the incorrect statements in the systems containing a single bug each. In about two-thirds of the cases, VarCop correctly ranks the buggy statements at the top-3 positions in the ranked lists. For the cases containing multiple bugs, VarCop outperforms the state-of-the-art approaches 2 times and 10 times in the proportion of bugs localized at the top-1 positions. Especially, in 22% and 65% of the buggy versions, VarCop correctly ranks at least one bug in a system at the top-1 and top-5 positions.
引用
收藏
页码:4100 / 4118
页数:19
相关论文
共 50 条
  • [1] Spectrum-based fault localization in software product lines
    Arrieta, Aitor
    Segura, Sergio
    Markiegi, Urtzi
    Sagardui, Goiuria
    Etxeberria, Leire
    [J]. INFORMATION AND SOFTWARE TECHNOLOGY, 2018, 100 : 18 - 31
  • [2] Detecting false-passing products and mitigating their impact on variability fault localization in software product lines
    Nguyen, Thu-Trang
    Ngo, Kien-Tuan
    Nguyen, Son
    Vo, Hieu Dinh
    [J]. INFORMATION AND SOFTWARE TECHNOLOGY, 2023, 153
  • [3] Approach to modelling feature variability and dependencies in software product lines
    Ye, H
    Liu, H
    [J]. IEE PROCEEDINGS-SOFTWARE, 2005, 152 (03): : 101 - 109
  • [4] Extended Abstract of "Spectrum-Based Fault Localization in Software Product Lines"
    Arrieta, Aitor
    Segura, Sergio
    Markiegi, Urtzi
    Sagardui, Goiuria
    Etxeberria, Leire
    [J]. SPLC'19: PROCEEDINGS OF THE 23RD INTERNATIONAL SYSTEMS AND SOFTWARE PRODUCT LINE CONFERENCE, VOL A, 2020, : 13 - 13
  • [5] Variability issues in software product lines
    Bosch, J
    Florijn, G
    Greefhorst, D
    Kuusela, J
    Obbink, JH
    Pohl, K
    [J]. SOFTWARE PRODUCT-FAMILY ENGINEERING, 2002, 2290 : 13 - 21
  • [6] Optimization of variability in software product lines
    Loesch, Felix
    Ploedereder, Erhard
    [J]. SPLC 2007: 11TH INTERNATIONAL SOFTWARE PRODUCT LINE CONFERENCE, PROCEEDINGS, 2007, : 151 - +
  • [7] On the notion of variability in software product lines
    van Gurp, J
    Bosch, J
    Svahnberg, M
    [J]. WORKING IEEE/IFIP CONFERENCE ON SOFTWARE ARCHITECTURE, PROCEEDINGS, 2001, : 45 - 54
  • [8] Software fault tree analysis for product lines
    Dehlinger, J
    Lutz, RR
    [J]. EIGHTH IEEE INTERNATIONAL SYMPOSIUM ON HIGH ASSURANCE SYSTEMS ENGINEERING, PROCEEDINGS, 2004, : 12 - 21
  • [9] Design variability verification in Software Product Lines
    Ganesh Khandu Narwane
    Jean-Vivien Millo
    Shankara Narayanan Krishna
    S Ramesh
    [J]. Sādhanā, 2019, 44
  • [10] Expression and usage of the variability in the software product lines
    Salicki, S
    Farcet, N
    [J]. SOFTWARE PRODUCT-FAMILY ENGINEERING, 2002, 2290 : 304 - 318