skip to main content
10.1145/3377929.3390050acmconferencesArticle/Chapter ViewAbstractPublication PagesgeccoConference Proceedingsconference-collections
poster

On the prediction of continuous integration build failures using search-based software engineering

Published: 08 July 2020 Publication History

Abstract

Continuous Integration (CI) aims at supporting developers in integrating code changes quickly through automated building. However, in such context, the build process is typically time and resource-consuming. As a response, the use of machine learning (ML) techniques has been proposed to cut the expenses of CI build time by predicting its outcome. Nevertheless, the existing ML-based solutions are challenged by problems related mainly to the imbalanced distribution of successful and failed builds. To deal with this issue, we introduce a novel approach based on Multi-Objective Genetic Programming (MOGP) to build a prediction model. Our approach aims at finding the best prediction rules based on two conflicting objective functions to deal with both minority and majority classes. We evaluated our approach on a benchmark of 15,383 builds. The results reveal that our technique outperforms state-of-the-art approaches by providing a better balance between both failed and passed builds.

References

[1]
M. Beller, G. Gousios, and A. Zaidman. 2017. TravisTorrent: Synthesizing Travis CI and GitHub for Full-Stack Research on Continuous Integration. In EEE/ACM International Conference on Mining Software Repositories. 447--450.
[2]
Kalyanmoy Deb, Amrit Pratap, Sameer Agarwal, and TAMT Meyarivan. 2002. A fast and elitist multiobjective genetic algorithm: NSGA-II. IEEE transactions on evolutionary computation 6, 2, 182--197.
[3]
Martin Fowler. 2006. Continuous Integration. https://www.martinfowler.com/articles/continuousIntegration.html,. (2006). Accessed: 2020-01-01.
[4]
Foyzul Hassan and Xiaoyin Wang. 2017. Change-aware build prediction model for stall avoidance in continuous integration. In ACM/IEEE International Symposium on Empirical Software Engineering and Measurement. 157--162.
[5]
M. Kessentini and A. Ouni. 2017. Detecting android smells using multi-objective genetic programming. In IEEE/ACM 4th International Conference on Mobile Software Engineering and Systems (MOBILESoft). IEEE, 122--132.
[6]
Y. Luo, Y. Zhao, W. Ma, and L. Chen. 2017. What are the Factors Impacting Build Breakage?. In Web Information Systems and Applications Conference. 139--142.
[7]
Ruchika Malhotra. 2015. A systematic review of machine learning techniques for software fault prediction. Applied Soft Computing 27 (2015), 504--518.
[8]
Ruchika Malhotra and Megha Khanna. 2017. An exploratory study for software change prediction in object-oriented systems using hybridized techniques. Automated Software Engineering 24, 3 (2017), 673--717.
[9]
Ansong Ni and Ming Li. 2017. Cost-effective build outcome prediction using cascaded classifiers. In Int. Conference on Mining Software Repositories. 455--458.
[10]
Ali Ouni, Raula Gaikovina Kula, Marouane Kessentini, and Katsuro Inoue. 2015. Web service antipatterns detection using genetic programming. In Proceedings of the 2015 Annual Conference on Genetic and Evolutionary Computation. 1351--1358.
[11]
Ali Ouni, Marouane Kessentini, Katsuro Inoue, and Mel O Cinnéide. 2017. Search-based web service antipatterns detection. IEEE Transactions on Services Computing 10, 4 (2017), 603--617.
[12]
Ali Ouni, Marouane Kessentini, Houari Sahraoui, and Mounir Boukadoum. 2013. Maintainability defects detection and correction: a multi-objective approach. Automated Software Engineering 20, 1 (2013), 47--79.
[13]
Mark Santolucito, Jialu Zhang, Ennan Zhai, and Ruzica Piskac. 2018. Statically Verifying Continuous Integration Configurations. Technical Report (2018).
[14]
Jing Xia and Yanhui Li. 2017. Could we predict the result of a continuous integration build? An empirical study. In 2017 IEEE International Conference on Software Quality, Reliability and Security Companion (QRS-C). IEEE, 311--315.
[15]
Jing Xia, Yanhui Li, and Chuanqi Wang. 2017. An Empirical Study on the Cross-Project Predictability of Continuous Integration Outcomes. In 2017 14th Web Information Systems and Applications Conference (WISA). IEEE, 234--239.
[16]
Zheng Xie and Ming Li. 2018. Cutting the Software Building Efforts in Continuous Integration by Semi-Supervised Online AUC Optimization. In IJCAI. 2875--2881.

Cited By

View all
  • (2023)Accelerating Continuous Integration with Parallel Batch TestingProceedings of the 31st ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering10.1145/3611643.3616255(55-67)Online publication date: 30-Nov-2023
  • (2023)Continuous build outcome prediction: an experimental evaluation and acceptance modellingApplied Intelligence10.1007/s10489-023-04523-653:8(8673-8692)Online publication date: 18-Apr-2023
  • (2022)Detecting Continuous Integration Skip Commits Using Multi-Objective Evolutionary SearchIEEE Transactions on Software Engineering10.1109/TSE.2021.312916548:12(4873-4891)Online publication date: 1-Dec-2022
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
GECCO '20: Proceedings of the 2020 Genetic and Evolutionary Computation Conference Companion
July 2020
1982 pages
ISBN:9781450371278
DOI:10.1145/3377929
Permission to make digital or hard copies of part or all of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for third-party components of this work must be honored. For all other uses, contact the Owner/Author.

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 08 July 2020

Check for updates

Author Tags

  1. build prediction
  2. continuous integration
  3. machine learning
  4. multi-objective optimization
  5. search-based software engineering

Qualifiers

  • Poster

Conference

GECCO '20
Sponsor:

Acceptance Rates

Overall Acceptance Rate 1,669 of 4,410 submissions, 38%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)26
  • Downloads (Last 6 weeks)2
Reflects downloads up to 28 Feb 2025

Other Metrics

Citations

Cited By

View all
  • (2023)Accelerating Continuous Integration with Parallel Batch TestingProceedings of the 31st ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering10.1145/3611643.3616255(55-67)Online publication date: 30-Nov-2023
  • (2023)Continuous build outcome prediction: an experimental evaluation and acceptance modellingApplied Intelligence10.1007/s10489-023-04523-653:8(8673-8692)Online publication date: 18-Apr-2023
  • (2022)Detecting Continuous Integration Skip Commits Using Multi-Objective Evolutionary SearchIEEE Transactions on Software Engineering10.1109/TSE.2021.312916548:12(4873-4891)Online publication date: 1-Dec-2022
  • (2021)BF-detector: an automated tool for CI build failure detectionProceedings of the 29th ACM Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software Engineering10.1145/3468264.3473115(1530-1534)Online publication date: 20-Aug-2021

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media