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 条
  • [41] WHY DO WE SO FREQUENTLY FAIL
    YUDKIN, J
    INTERNATIONAL JOURNAL OF HEALTH EDUCATION, 1968, 11 (01) : 5 - 5
  • [42] Why Do Information Technology Projects Fail?
    Alami, Adam
    INTERNATIONAL CONFERENCE ON ENTERPRISE INFORMATION SYSTEMS/INTERNATIONAL CONFERENCE ON PROJECT MANAGEMENT/INTERNATIONAL CONFERENCE ON HEALTH AND SOCIAL CARE INFORMATION SYSTEMS AND TECHNOLOGIES, CENTERIS/PROJMAN / HCIST 2016, 2016, 100 : 62 - 71
  • [43] WHY DO MOTOR SHAFTS AND BEARINGS FAIL
    BISBEE, GA
    TAPPI JOURNAL, 1994, 77 (09): : 251 - 252
  • [44] WHY DO PLANTS FAIL TO STAY COMPETITIVE
    ROWAN, M
    MODERN MATERIALS HANDLING, 1983, 38 (06) : 45 - 45
  • [45] Why Do Hip Arthroscopy Procedures Fail?
    Bogunovic, Ljiljana
    Gottlieb, Meghan
    Pashos, Gail
    Baca, Geneva
    Clohisy, John C.
    CLINICAL ORTHOPAEDICS AND RELATED RESEARCH, 2013, 471 (08) : 2523 - 2529
  • [46] Why Do We Fail in Public Relations?
    Moffitt, Frederick J.
    EDUCATION, 1949, 69 (10): : 636 - 638
  • [47] PERICARDIAL HETEROGRAFTS - WHY DO THESE VALVES FAIL
    TROWBRIDGE, EA
    LAWFORD, PV
    CROFTS, CE
    ROBERTS, KM
    JOURNAL OF THORACIC AND CARDIOVASCULAR SURGERY, 1988, 95 (04): : 577 - 585
  • [48] Why do investment Euler equations fail?
    Whited, TM
    JOURNAL OF BUSINESS & ECONOMIC STATISTICS, 1998, 16 (04) : 479 - 488
  • [49] WHY DO EUPLOID EMBRYOS FAIL TO IMPLANT?.
    Casper, R. F.
    Smith, R.
    Nayot, D.
    Meriano, J.
    FERTILITY AND STERILITY, 2019, 111 (04) : E37 - E38
  • [50] Why and how do locking plates fail?
    Gueorguiev, Boyko
    Lenz, Mark
    INJURY-INTERNATIONAL JOURNAL OF THE CARE OF THE INJURED, 2018, 49 : S56 - S60