OptCD: Optimizing Continuous Development
Developers may mistakenly configure their continuous development (CD) workflow to generate files, such as code coverage reports, that are not used during the CD workflow nor uploaded afterwards. Generating these unused files slows down the CD process and is a waste of time and resources. We present OptCD, a tool that automatically identifies unused files that are generated or modified, but are never used or uploaded. OptCD then uses the identified unused files to find directories where all underlying files are unused. OptCD operates on Mavenbased Java projects that use GitHub Actions as their CD service. OptCD pinpoints the Maven plugins (the process that performs build tasks for Maven) that generated a given directory of unused files by analyzing which plugins were running at the time the files were generated. Finally, OptCD leverages Gemini, a large language model, to generate a fix for the CD configuration file to stop generating the directory of unused files. Compared to our prior work, we (1) streamline and simplify the process to use OptCD (e.g., reducing five nontrivial manual steps to just one automated step) and (2) conduct an extensive evaluation of OptCD on 89 new projects compared to just 22 from our prior work. OptCD finds that 59.6% of the new projects generate at least one directory of unused files, and OptCD's fixes save an average of 9.3% of Maven's runtime in these projects. A video demo of OptCD is available on our website.
Authors
- Wing Lam (ORCID: https://orcid.org/0000-0003-2243-1218)
- August Shi (ORCID: https://orcid.org/0000-0001-8239-3124)
- Talank Baral
- Shanto Rahman (ORCID: https://orcid.org/0000-0002-0599-8215)
- Emirhan Oğul
Institutions
- George Mason University (US)
- Middle East Technical University (TR)
- The University of Texas at Austin (US)
Publication Details
- Published
- 2025-04-27
- DOI
- https://doi.org/10.1109/icse-companion66252.2025.00021
- Primary Topic
- Software Testing and Debugging Techniques
- Type
- article
- Field-Weighted Citation Impact
- 0.00