Papers
Topics
Authors
Recent
Gemini 2.5 Flash
Gemini 2.5 Flash
129 tokens/sec
GPT-4o
28 tokens/sec
Gemini 2.5 Pro Pro
42 tokens/sec
o3 Pro
4 tokens/sec
GPT-4.1 Pro
38 tokens/sec
DeepSeek R1 via Azure Pro
28 tokens/sec
2000 character limit reached

Chronicles of CI/CD: A Deep Dive into its Usage Over Time (2402.17588v1)

Published 27 Feb 2024 in cs.SE

Abstract: DevOps is a combination of methodologies and tools that improves the software development, build, deployment, and monitoring processes by shortening its lifecycle and improving software quality. Part of this process is CI/CD, which embodies mostly the first parts, right up to the deployment. Despite the many benefits of DevOps and CI/CD, it still presents many challenges promoted by the tremendous proliferation of different tools, languages, and syntaxes, which makes the field quite challenging to learn and keep up to date. Software repositories contain data regarding various software practices, tools, and uses. This data can help gather multiple insights that inform technical and academic decision-making. GitHub is currently the most popular software hosting platform and provides a search API that lets users query its repositories. Our goal with this paper is to gain insights into the technologies developers use for CI/CD by analyzing GitHub repositories. Using a list of the state-of-the-art CI/CD technologies, we use the GitHub search API to find repositories using each of these technologies. We also use the API to extract various insights regarding those repositories. We then organize and analyze the data collected. From our analysis, we provide an overview of the use of CI/CD technologies in our days, but also what happened in the last 12 years. We also show developers use several technologies simultaneously in the same project and that the change between technologies is quite common. From these insights, we find several research paths, from how to support the use of multiple technologies, both in terms of techniques, but also in terms of human-computer interaction, to aiding developers in evolving their CI/CD pipelines, again considering the various dimensions of the problem.

Definition Search Book Streamline Icon: https://streamlinehq.com
References (21)
  1. Anonymous. 2023a. https://anonymous.4open.science/r/DevOps-Repositories-122E
  2. Anonymous. 2023b. https://anonymous.4open.science/r/github-devops-mining-C0D7
  3. Anonymous Author. 2023a. CI/CD repos with tools. https://doi.org/10.6084/m9.figshare.24578740.v2
  4. Anonymous Author. 2023b. CI/CD repositories from GitHub. https://doi.org/10.6084/m9.figshare.24578746.v1
  5. Anonymous Author. 2023c. CI/CD repositories with tool history. https://doi.org/10.6084/m9.figshare.24578752.v1
  6. Puppet by Perforce. 2023. https://www.puppet.com/resources/history-of-devops-reports accessed: 16/11/2023.
  7. A Preliminary Investigation of MLOps Practices in GitHub. In Proceedings of the 16th ACM / IEEE International Symposium on Empirical Software Engineering and Measurement (Helsinki, Finland) (ESEM ’22). Association for Computing Machinery, New York, NY, USA, 283–288. https://doi.org/10.1145/3544902.3546636
  8. The Business Research Company. 2022. Information Technology Global Market Report 2022, By Type, Organization Size, End User Industry. https://www.researchandmarkets.com/reports/5561700/information-technology-global-market-report-2022
  9. On the rise and fall of CI services in GitHub. In 2022 IEEE International Conference on Software Analysis, Evolution and Reengineering (SANER) (Honolulu, HI, USA, 2022-03). IEEE, New York, New York, United States, 662–672. https://doi.org/10.1109/SANER53432.2022.00084
  10. Challenges in Docker Development: A Large-Scale Study Using Stack Overflow. In Proceedings of the 14th ACM / IEEE International Symposium on Empirical Software Engineering and Measurement (ESEM) (Bari, Italy) (ESEM ’20). Association for Computing Machinery, New York, NY, USA, Article 7, 11 pages. https://doi.org/10.1145/3382494.3410693
  11. Learning from, Understanding, and Supporting DevOps Artifacts for Docker. In 2020 IEEE/ACM 42nd International Conference on Software Engineering (ICSE). Association for Computing Machinery, New York, NY, United States, 38–49. https://doi.org/10.1145/3377811.3380406
  12. IEEE. 2023. https://spectrum.ieee.org/the-top-programming-languages-2023 accessed: 17/11/2023.
  13. The DevOps Handbook: How to Create World-Class Agility, Reliability, and Security in Technology Organizations. IT Revolution Press, Portland, Oregon, United States. https://books.google.pt/books?id=ui8hDgAAQBAJ
  14. Assessing the Maturity of DevOps Practices in Software Industry: An Empirical Study of HELENA2 Dataset. In Proceedings of the 26th International Conference on Evaluation and Assessment in Software Engineering (Gothenburg, Sweden) (EASE ’22). Association for Computing Machinery, New York, NY, USA, 428–432. https://doi.org/10.1145/3530019.3531335
  15. GitHub Staff Kyle Daigle. 2023. Octoverse: The State of Open Source and rise of AI in 2023. https://github.blog/2023-11-08-the-state-of-open-source-and-ai/
  16. A First Look at CI/CD Adoptions in Open-Source Android Apps. In Proceedings of the 37th IEEE/ACM International Conference on Automated Software Engineering (Rochester, MI, USA) (ASE ’22). Association for Computing Machinery, New York, NY, USA, Article 201, 6 pages. https://doi.org/10.1145/3551349.3561341
  17. On the usage, co-usage and migration of CI/CD tools: A qualitative analysis. Empirical Software Engineering 28, 2 (2023), 52. https://doi.org/10.1007/s10664-022-10285-5
  18. Case Study. 2023. Cloud native computing foundation. https://www.cncf.io/
  19. An Empirical Study of Build Failures in the Docker Context. In Proceedings of the 17th International Conference on Mining Software Repositories (Seoul, Republic of Korea) (MSR ’20). Association for Computing Machinery, New York, NY, USA, 76–80. https://doi.org/10.1145/3379597.3387483
  20. Tianyin Xu and Darko Marinov. 2018. Mining Container Image Repositories for Software Configuration and Beyond. In Proceedings of the 40th International Conference on Software Engineering: New Ideas and Emerging Results (Gothenburg, Sweden) (ICSE-NIER ’18). Association for Computing Machinery, New York, NY, USA, 49–52. https://doi.org/10.1145/3183399.3183403
  21. Mining Questions Asked about Continuous Software Engineering: A Case Study of Stack Overflow. In Proceedings of the Evaluation and Assessment in Software Engineering (Trondheim, Norway) (EASE ’20). Association for Computing Machinery, New York, NY, USA, 41–50. https://doi.org/10.1145/3383219.3383224

Summary

We haven't generated a summary for this paper yet.

X Twitter Logo Streamline Icon: https://streamlinehq.com