Litcius/Paper detail

A Comparative Review of AI Techniques for Automated Code Generation in Software Development: Advancements, Challenges, and Future Directions

Ayman Odeh, Nada Odeh, Abdul Salam Mohammed

2024TEM Journal33 citationsDOIOpen Access PDF

Abstract

Artificial Intelligence (AI), as one of the most important fields of computer science, plays a significant role in the software development life cycle process, especially in the implementation phase, where developers require considerable effort to convert software requirements and design into code. Automated Code Generation (ACG) using AI can help in this phase. Automating the code generation process is becoming increasingly popular as a solution to address various software development challenges and increase productivity. In this work, we provide a comprehensive review and discussion of traditional and AI techniques used for ACG, their challenges, and limitations. By analysing a selection of related studies, we will identify all AI methods and algorithms used for ACG, extracting the evaluation metrics and criteria such as Accuracy, Efficiency, Scalability, Correctness, Generalization, and more. These criteria will be used to perform a comparative result for AI methods used for ACG, exploring their applications, strengths, weaknesses, performance, and future applications.

Topics & Concepts

Computer scienceSoftware engineeringCorrectnessSoftware development processCode generationSoftware developmentProcess (computing)SoftwareArtificial intelligenceCode reviewStatic program analysisData scienceMachine learningProgramming languageComputer securityKey (lock)Software Engineering ResearchSoftware Testing and Debugging TechniquesSoftware Engineering Techniques and Practices