Why do builds fail?-A conceptual replication study

被引:9
|
作者
Barrak, Amine [1 ]
Eghan, Ellis E. [2 ]
Adams, Bram [4 ]
Khomh, Foutse [3 ]
机构
[1] Polytech Montreal, Software Engn, Montreal, PQ, Canada
[2] Polytech Montreal, MCIS Lab, Montreal, PQ, Canada
[3] Polytech Montreal, Montreal, PQ, Canada
[4] Queens Univ, Sch Comp, Kingston, ON, Canada
关键词
Continuous integration; Build failure; Test smells; Code smells; Quantitative analysis; Cross-project prediction; CODE; SMELLS; CLASSIFICATION; TESTS; CI;
D O I
10.1016/j.jss.2021.110939
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Previous studies have investigated a wide range of factors potentially explaining software build breakages, focusing primarily on build-triggering code changes or previous CI outcomes. However, code quality factors such as the presence of code/test smells have not been yet evaluated in the context of CI, even though such factors have been linked to problems of comprehension and technical debt, and hence might introduce bugs and build breakages. This paper performs a conceptual replication study on 27,675 Travis CI builds of 15 GitHub projects, considering the features reported by Rausch et al. and Zolfagharinia et al., as well as those related to code/test smells. Using a multivariate model constructed from nine dimensions of features, results indicate a precision (recall) ranging between 58.3% and 79.0% (52.4% and 69.6%) in balanced project datasets, and between 2.5% and 37.5% (2.5% and 12.4%) in imbalanced project datasets. Models trained on our balanced project datasets were later used to perform cross-project prediction on the imbalanced projects, achieving an average improvement of 9.3% (16.2%) in precision (recall). Statistically, the results confirm that features from the build history, author, code complexity, and code/test smell dimensions are the most important predictors of build failures. (C) 2021 Elsevier Inc. All rights reserved.
引用
收藏
页数:15
相关论文
共 50 条
  • [21] WHY DO PSYCHIATRISTS FAIL WITH ALCOHOLICS
    WOOD, HP
    DUFFY, EL
    DISEASES OF THE NERVOUS SYSTEM, 1965, 26 (05): : 301 - 304
  • [22] Why Do PV Modules Fail?
    Ferrara, Claudio
    Philipp, Daniel
    INTERNATIONAL CONFERENCE ON MATERIALS FOR ADVANCED TECHNOLOGIES 2011, SYMPOSIUM O, 2012, 15 : 379 - 387
  • [23] WHY DO SOME EPIKERATOPLASTIES FAIL
    BINDER, PS
    ZAVALA, EY
    ARCHIVES OF OPHTHALMOLOGY, 1987, 105 (01) : 63 - 69
  • [24] Why do we fail at ERCP?
    Manchikalapati, P
    Varadarajulu, S
    Wilcox, CM
    GASTROINTESTINAL ENDOSCOPY, 2004, 59 (05) : AB194 - AB194
  • [25] Why do network organizations fail?
    Tunisini, Annalisa
    Marchiori, Michela
    JOURNAL OF BUSINESS & INDUSTRIAL MARKETING, 2020, 35 (06) : 1011 - 1021
  • [26] Why Do Pertussis Vaccines Fail?
    Cherry, James D.
    PEDIATRICS, 2012, 129 (05) : 968 - 970
  • [27] Why do Studies on Immunotherapy fail?
    Starostzik, Christine
    Jakob, Thilo
    ALLERGO JOURNAL, 2018, 27 (06) : 14 - 14
  • [28] Why do successful companies fail? A case study of the decline of Dunlop
    McGovern, Tom
    BUSINESS HISTORY, 2007, 49 (06) : 886 - 907
  • [29] Why Do My Blockchain Transactions Fail? A Study of Hyperledger Fabric
    Chacko, Jeeta Ann
    Mayer, Ruben
    Jacobsen, Hans-Arno
    SIGMOD '21: PROCEEDINGS OF THE 2021 INTERNATIONAL CONFERENCE ON MANAGEMENT OF DATA, 2021, : 221 - 234
  • [30] Why do O-Rings fail
    Richter, B.
    Gummi, Fasern, Kunststoffe, 2006, 59 (10): : 632 - 635