DevBots can co-design APIs (2312.05733v1)
Abstract: DevBots are automated tools that perform various tasks in order to support software development. They are a growing trend and have been used in repositories to automate repetitive tasks, as code generators, and as collaborators in eliciting requirements and defining architectures. In this study, we analyzed 24 articles to investigate the state of the art of using DevBots in software development, trying to understand their characteristics, identify use cases, learn the relationship between DevBots and conversational software development, and discuss how prompt engineering can enable collaboration between human developers and bots. Additionally, we identified a gap to address by applying prompt engineering to collaborative API design between human designers and DevBots and proposed an experiment to assess what approach, between using Retrieval Augmented Generation or not, is more suitable. Our conclusion is that DevBots can collaborate with human API designers, but the two approaches have advantages and disadvantages.
- Bothawk: An approach for bots detection in open source software projects. arXiv preprint arXiv:2307.13386, 2023.
- Evaluating a bot detection model on git commit messages. arXiv preprint arXiv:2103.11779, 2021a.
- Can a chatbot support exploratory software testing? preliminary results. arXiv preprint arXiv:2307.05807, 2023.
- Bots and their uses in software development: A systematic mapping study. In 2022 10th International Conference in Software Engineering Research and Innovation (CONISOFT), pages 140–149, Oct 2022. doi: 10.1109/CONISOFT55708.2022.00027.
- Intelligent software engineering: The significance of artificial intelligence techniques in enhancing software development lifecycle processes. In Ajith Abraham, Niketa Gandhi, Thomas Hanne, Tzung-Pei Hong, Tatiane Nogueira Rios, and Weiping Ding, editors, Intelligent Systems Design and Applications, pages 67–82, Cham, 2022. Springer International Publishing. ISBN 978-3-030-96308-8.
- Bdgoa: A bot detection approach for github oauth apps. Intelligent and Converged Networks, 2023. doi: 10.23919/ICN.2023.0006. URL https://www.sciopen.com/article/10.23919/ICN.2023.0006.
- Glaucia Melo. Designing adaptive developer-chatbot interactions: Context integration, experimental studies, and levels of automation. In Proceedings of the 45th International Conference on Software Engineering: Companion Proceedings, ICSE ’23, page 235–239. IEEE Press, 2023. ISBN 9798350322637. doi: 10.1109/ICSE-Companion58688.2023.00064. URL https://doi.org/10.1109/ICSE-Companion58688.2023.00064.
- Towards human-bot collaborative software architecting with chatgpt. In Proceedings of the 27th International Conference on Evaluation and Assessment in Software Engineering, EASE ’23, page 279–285, New York, NY, USA, 2023. Association for Computing Machinery. ISBN 9798400700446. doi: 10.1145/3593434.3593468.
- A ground-truth dataset and classification model for detecting bots in github issue and pr comments. Journal of Systems and Software, 175:110911, 2021b.
- Detecting and characterizing bots that commit code. In Proceedings of the 17th International Conference on Mining Software Repositories, MSR ’20, page 209–219, New York, NY, USA, 2020. Association for Computing Machinery. ISBN 9781450375177. doi: 10.1145/3379597.3387478. URL https://doi.org/10.1145/3379597.3387478.
- An empirical study of bots in software development: Characteristics and challenges from a practitioner’s perspective. In Proceedings of the 28th ACM Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software Engineering, ESEC/FSE 2020, page 445–455, New York, NY, USA, 2020a. Association for Computing Machinery. ISBN 9781450370431. doi: 10.1145/3368089.3409680. URL https://doi.org/10.1145/3368089.3409680.
- Teaming humans with virtual assistants to detect and mitigate vulnerabilities. In Kohei Arai, editor, Intelligent Computing, pages 565–576, Cham, 2023. Springer Nature Switzerland. ISBN 978-3-031-37717-4.
- Revolutionary transformations in twentieth century: making AI-assisted software development, pages 1–18. De Gruyter, Berlin, Boston, 2022. ISBN 9783110709247. doi: doi:10.1515/9783110709247-001. URL https://doi.org/10.1515/9783110709247-001.
- Systematic literature reviews in software engineering - a systematic literature review. Inf. Softw. Technol., 51(1):7–15, jan 2009. ISSN 0950-5849. doi: 10.1016/j.infsof.2008.09.009. URL https://doi.org/10.1016/j.infsof.2008.09.009.
- Language models are few-shot learners, 2020.
- Sabina-Cristiana Necula. Artificial intelligence impact on the labour force–searching for the analytical skills of the future software engineers. arXiv preprint arXiv:2302.13229, 2023.
- A preliminary study of bots usage in open source community. In Proceedings of the 13th Asia-Pacific Symposium on Internetware, Internetware ’22, page 175–180, New York, NY, USA, 2022. Association for Computing Machinery. ISBN 9781450397803. doi: 10.1145/3545258.3545284. URL https://doi.org/10.1145/3545258.3545284.
- Bots don’t mind waiting, do they? comparing the interaction with automatically and manually created pull requests. In 2021 IEEE/ACM Third International Workshop on Bots in Software Engineering (BotSE), pages 6–10. IEEE, 2021.
- Software bots in software engineering: Benefits and challenges. In Proceedings of the 19th International Conference on Mining Software Repositories, MSR ’22, page 724–725, New York, NY, USA, 2022. Association for Computing Machinery. ISBN 9781450393034. doi: 10.1145/3524842.3528533. URL https://doi.org/10.1145/3524842.3528533.
- Conversational devbots for secure programming: An empirical study on skf chatbot. In Proceedings of the 26th International Conference on Evaluation and Assessment in Software Engineering, EASE ’22, page 276–281, New York, NY, USA, 2022. Association for Computing Machinery. ISBN 9781450396134. doi: 10.1145/3530019.3535307. URL https://doi.org/10.1145/3530019.3535307.
- Software assistants in software engineering: A systematic mapping study. Software: Practice and Experience, 53(3):856–892, 2023. doi: https://doi.org/10.1002/spe.3170. URL https://onlinelibrary.wiley.com/doi/abs/10.1002/spe.3170.
- Impact of generative ai on the software development lifecycle (sdlc). International Journal of Creative Research Thoughts, 11(8), 2023. URL https://ssrn.com/abstract=4536700.
- Challenges and guidelines on designing test cases for test bots. In Proceedings of the IEEE/ACM 42nd International Conference on Software Engineering Workshops, ICSEW’20, page 41–45, New York, NY, USA, 2020b. Association for Computing Machinery. ISBN 9781450379632. doi: 10.1145/3387940.3391535. URL https://doi.org/10.1145/3387940.3391535.
- Six-tier architecture for ai-generated software development: A large language models approach. 2023.
- Dependency management bots in open-source systems—prevalence and adoption. PeerJ Computer Science, 8, 2022. doi: 10.7717/PEERJ-CS.849. URL https://www.scopus.com/inward/record.uri?eid=2-s2.0-85128266032&doi=10.7717%2fPEERJ-CS.849&partnerID=40&md5=83062faf179c490146738deb92692235. Cited by: 2; All Open Access, Gold Open Access, Green Open Access.
- Chip-chat: Challenges and opportunities in conversational hardware design. CoRR, abs/2305.13243, 2023. doi: 10.48550/arXiv.2305.13243. URL https://doi.org/10.48550/arXiv.2305.13243.
- AI-Augmented Usability Evaluation Framework for Software Requirements Specification. 6 2022. doi: 10.36227/techrxiv.20097701.v1.
- Pre-train, prompt, and predict: A systematic survey of prompting methods in natural language processing. ACM Comput. Surv., 55(9), jan 2023. ISSN 0360-0300. doi: 10.1145/3560815. URL https://doi.org/10.1145/3560815.
- Large language models as optimizers, 2023. URL https://doi.org/10.48550/arXiv.2309.03409.
- Benchmarking large language models in retrieval-augmented generation, 2023. URL https://arxiv.org/abs/2309.01431.
- Roy Thomas Fielding. Architectural styles and the design of network-based software architectures. University of California, Irvine, Ann Arbor, USA, 2000.