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 条
  • [11] A Hierarchical Variability Model for Software Product Lines
    Gurov, Dilian
    Ostvold, Bjarte M.
    Schaefer, Ina
    [J]. LEVERAGING APPLICATIONS OF FORMAL METHODS, VERIFICATION, AND VALIDATION, 2012, 336 : 181 - +
  • [12] Design variability verification in Software Product Lines
    Narwane, Ganesh Khandu
    Millo, Jean-Vivien
    Krishna, Shankara Narayanan
    Ramesh, S.
    [J]. SADHANA-ACADEMY PROCEEDINGS IN ENGINEERING SCIENCES, 2019, 44 (01):
  • [13] Security requirements variability for software product lines
    Mellado, Daniel
    Fernandez-Medina, Eduardo
    Piattini, Mario
    [J]. ARES 2008: PROCEEDINGS OF THE THIRD INTERNATIONAL CONFERENCE ON AVAILABILITY, SECURITY AND RELIABILITY, 2008, : 1413 - +
  • [14] A metamodeling approach to tracing variability between requirements and architecture in software product lines
    Moon, Mikyeong
    Chae, Heung Seok
    Nam, Taewoo
    Yeom, Keunhyuk
    [J]. 2007 CIT: 7TH IEEE INTERNATIONAL CONFERENCE ON COMPUTER AND INFORMATION TECHNOLOGY, PROCEEDINGS, 2007, : 927 - 933
  • [15] Approach for Variability Management of Legal Rights in Human Resources Software Product Lines
    Derras, M.
    Deruelle, L.
    Douin, J-M
    Levy, N.
    Losavio, F.
    Mahamane, R. Oumarou
    Reiner, V
    [J]. ICSOFT: PROCEEDINGS OF THE 14TH INTERNATIONAL CONFERENCE ON SOFTWARE TECHNOLOGIES, 2019, : 514 - 521
  • [16] Managing variability for software product lines: Working with variability mechanisms
    Clements, Paul C.
    [J]. SPLC 2006: 10th International Software Product Line Conference, Proceedings, 2006, : 207 - 208
  • [17] An Approach to Efficient Product Configuration in Software Product Lines
    Lin, Yuqing
    Ye, Huilin
    Tang, Jianmin
    [J]. SOFTWARE PRODUCT LINES: GOING BEYOND, 2010, 6287 : 435 - 439
  • [18] Representing and Configuring Security Variability in Software Product Lines
    Myllarniemi, Varvana
    Raatikainen, Mikko
    Mannisto, Tomi
    [J]. QOSA'15 PROCEEDINGS OF THE 11TH INTERNATIONAL ACM SIGSOFT CONFERENCE ON QUALITY OF SOFTWARE ARCHITECTURES, 2015, : 1 - 10
  • [19] Consistency Checking Rules of Variability in Software product Lines
    Kim, Jeong Ah
    Kim, SeHoon
    [J]. 2013 EIGHTH INTERNATIONAL CONFERENCE ON BROADBAND, WIRELESS COMPUTING, COMMUNICATION AND APPLICATIONS (BWCCA 2013), 2013, : 595 - 597
  • [20] Voice of Evidence Managing Variability in Software Product Lines
    Babar, Muhammad Ali
    Chen, Lianping
    Shull, Forrest
    [J]. IEEE SOFTWARE, 2010, 27 (03) : 89 - +