Noise and Heterogeneity in Historical Build Data: An Empirical Study of Travis CI

Authors: Keheliya Gallaba Christian Macho Martin Pinzger Shane McIntosh

Venue: ASE   2018 33rd IEEE/ACM International Conference on Automated Software Engineering (ASE), pp. 87-97, 2018

Year: 2018

Abstract: Automated builds, which may pass or fail, provide feedback to a development team about changes to the codebase. A passing build indicates that the change compiles cleanly and tests (continue to) pass. A failing (a.k.a., broken) build indicates that there are issues that require attention. Without a closer analysis of the nature of build outcome data, practitioners and researchers are likely to make two critical assumptions: (1) build results are not noisy; however, passing builds may contain failing or skipped jobs that are actively or passively ignored; and (2) builds are equal; however, builds vary in terms of the number of jobs and configurations. To investigate the degree to which these assumptions about build breakage hold, we perform an empirical study of 3.7 million build jobs spanning 1,276 open source projects. We find that: (1) 12% of passing builds have an actively ignored failure; (2) 9% of builds have a misleading or incorrect outcome on average; and (3) at least 44% of the broken builds contain passing jobs, i.e., the breakage is local to a subset of build variants. Like other software archives, build data is noisy and complex. Analysis of build data requires nuance.

BibTeX:

@inproceedings{keheliyagallaba2018nahihbdaesotc,
    author = "Keheliya Gallaba and Christian Macho and Martin Pinzger and Shane McIntosh",
    title = "Noise and Heterogeneity in Historical Build Data: An Empirical Study of Travis CI",
    year = "2018",
    pages = "87-97",
    booktitle = "Proceedings of 2018 33rd IEEE/ACM International Conference on Automated Software Engineering (ASE)"
}

Plain Text:

Keheliya Gallaba, Christian Macho, Martin Pinzger, and Shane McIntosh, "Noise and Heterogeneity in Historical Build Data: An Empirical Study of Travis CI," 2018 33rd IEEE/ACM International Conference on Automated Software Engineering (ASE), pp. 87-97