Application directions of artificial intelligence in software development technologies
DOI:
https://doi.org/10.20535/2411-1031.2024.12.2.315741Keywords:
artificial intelligence, software development technologies, software engineering, IT project management, artificial intelligence application modelAbstract
The article presents the results of a systematic analysis of the current state of application of artificial intelligence (AI) in software engineering (SW) based on the analysis of publications, assessment of AI capabilities, experience in its application, and conducted experiments. The conceptual foundations of the research were formed, which determine: perception of AI as a tool, not an individual of work; the main directions of its application are engineering and management; the subject of AI application is the processing of artifacts (synthesis and analysis) and obtaining consultations; the need to assess the quality of AI-derived products and analyze the risks of its use is emphasized. Directions of application of AI in management: agreement processes (development of product concept and contract), organizational processes (project group formation and selection of technologies) and project management (planning, risk management, control and analysis of project implementation) Directions of application of AI in engineering: requirements management, design, construction, testing and documenting. To systematize the analysis of AI application directions, a conceptual model was developed, which includes: the direction, subject, and mode of application of AI. The mode of application of AI: the format of the prompt (problem statement and set of input data), the required product and its type (finished product, prototype, template, solution options, information support), the role of AI (executor, co-author, consultant), form of AI interaction (external service, integration via API, integrated system or local autonomous system). A structure of derivative models was formed for the analysis of the application of AI in specific directions with an overview of the capabilities of the most effective AI tools. As conclusions, it was determined that in management, the most rational model of using AI is to receive consultations and prototypes of documentation when contacting external AI services, in engineering – creating prototypes of project solutions and documentation based on external services, using integrated AI systems for design and testing in co-authorship mode. The risks of using AI include the possibility of obtaining insufficiently detailed documentation, complex and confusing software artifacts, and errors in the software code. To reduce risks and increase the effectiveness of AI application, it is determined that constant quality control of its products and training based on corporate requirements and standards is required.
References
J. Sauvola, S. Tarkoma, M. Klemettinen, J. Riekki, and D. Doermann, “Future of software development with generative AI”, Autom Softw Eng, vol.31, no.1, 2024. doi: https://doi.org/10.1007/s10515-024-00426-z.
M. Barenkamp, J. Rebstadt, and O. Thomas, “Applications of AI in classical software engineering”, AI Perspect, vol.2, no.1, 2020. doi: https://doi.org/10.1186/s42467-020-00005-4.
S. Kumar, “Artificial Intelligence in Software Engineering: A Systematic Exploration of AI-Driven Development”, IJIRSET, vol.13, no.6, 2024. doi: https://doi.org/10.15680/ijirset.2024.1306220.
M. Tufano, A. Agarwal, J. Jang, R.Z. Moghaddam, and N. Sundaresan, “Automated AI-Driven Development”, Arxiv, 2024. [Online]. Available: https://arxiv.org/abs/2403.08299. Accessed on: 15 Nov. 2024. doi: https://doi.org/10.48550/arXiv.2403.08299.
R. Ramler, M. Moser, L. Fischer, M. Nissl, and R. Heinzl, “Industrial Experience Report on AI-Assisted Coding in Professional Software Development”, in Proc. LLM4Code'24, NY, USA, 2024. doi: https://doi.org/10.1145/3643795.3648377.
Q. Zhang et al., “A survey on large language models for software engineering”, ArXiv, 2023. [Online]. Available: https://arxiv.org/abs/2312.15223. Accessed on: 15 Nov. 2024. doi: https://doi.org/10.48550/arXiv.2312.15223.
B. Yetiştiren, I. Özsoy, M. Ayerdem, and E. Tüzün, “Evaluating the Code Quality of AI-Assisted Code Generation Tools: An Empirical Study on GitHub Copilot, Amazon CodeWhisperer, and ChatGPT”, ArXiv, 2023. [Online]. Available: https://arxiv.org/abs/2304.10778. Accessed on: 15 Nov. 2024. doi: https://doi.org/10.48550/arXiv.2304.10778.
A.R. Sadik, A. Ceravola, F. Joublin, and J. Patra, “Analysis of ChatGPT on Source Code”, ArXiv, 2023. [Online]. Available: https://arxiv.org/abs/2306.00597. Accessed on: 15 Nov. 2024. doi: https://doi.org/10.48550/arXiv.2306.00597.
J. White, S. Hays, Q. Fu, J. Spencer-Smith, and D.C. Schmidt, “ChatGPT prompt patterns for improving code quality, refactoring, requirements elicitation, and software design”, ArXiv, 2023. [Online]. Available: https://arxiv.org/abs/2303.07839. Accessed on: 15 Nov. 2024. doi: https://doi.org/10.48550/arXiv.2303.07839.
B. Alessio, “A Comparative Study of Code Generation using ChatGPT 3.5 across 10 Programming Languages”, ArXiv, 2023. [Online]. Available: https://arxiv.org/abs/2308.04477. Accessed on: 15 Nov. 2024. doi: https://doi.org/10.48550/arXiv.2308.04477.
M. Wei et al., “LMs: Understanding Code Syntax and Semantics for Code Analysis”, ArXiv, 2023. [Online]. Available: https://arxiv.org/abs/2305.12138. Accessed on: 15 Nov. 2024. doi: https://doi.org/10.48550/arXiv.2305.12138.
X. Li, H. Zheng, J. Chen, Y. Zong, and L. Yu, “User Interaction Interface Design and Innovation Based on Artificial Intelligence Technology”, JTPES, vol. 4, no. 03, pp. 1–8, Mar. 2024. doi: https://doi.org/10.53469/jtpes.2024.04(03).01.
J.H. Klemmer et al., “Using AI Assistants in Software Development: A Qualitative Study on Security Practices and Concerns”, ArXiv, 2024. [Online]. Available: https://arxiv.org/abs/2405.06371. Accessed on: 15 Nov. 2024.
SSU ISO/IEC/IEEE 12207:2018 Systems and software engineering. Software life cycle processes (ISO/IEC/IEEE 12207:2017, IDT).
SSU ISO/IEC 25010:2016 Systems and software engineering. Requirements for the quality of systems and software tools and its evaluation (SQuaRE). Models of system and software quality (ISO/IEC 25010:2011, IDT).
Downloads
Published
How to Cite
Issue
Section
License
Copyright (c) 2024 Collection "Information Technology and Security"
This work is licensed under a Creative Commons Attribution 4.0 International License.
The authors that are published in this collection, agree to the following terms:
- The authors reserve the right to authorship of their work and pass the collection right of first publication this work is licensed under the Creative Commons Attribution License, which allows others to freely distribute the published work with the obligatory reference to the authors of the original work and the first publication of the work in this collection.
- The authors have the right to conclude an agreement on exclusive distribution of the work in the form in which it was published this anthology (for example, to place the work in a digital repository institution or to publish in the structure of the monograph), provided that references to the first publication of the work in this collection.
- Policy of the journal allows and encourages the placement of authors on the Internet (for example, in storage facilities or on personal web sites) the manuscript of the work, prior to the submission of the manuscript to the editor, and during its editorial processing, as it contributes to productive scientific discussion and positive effect on the efficiency and dynamics of citations of published work (see The Effect of Open Access).