AI-assisted software development

Last updated

AI-assisted software development is the use of artificial intelligence (AI) to augment software development. It uses large language models (LLMs), natural language processing, intelligent agents and other AI technologies to assist software developers. It helps in a range of tasks of the software development life cycle, from initial code generation to subsequent debugging, testing and documentation. [1] Agentic coding denotes the use of more autonomous AI agents for software development. [2]

Contents

Technologies

Code generation

LLMs that have been trained on source code repositories are able to generate functional code from natural language prompts. Such models have knowledge of programming syntax, common design patterns and best practices in a variety of programming languages. [3]

Intelligent code completion

AI agents using pre-trained and fine-tuned LLMs can predict and suggest code completions based on context, going beyond simple keyword matching to infer the developer's intent and picture the broader structure of the developing codebase. An analysis has shown that such use of LLMs significantly enhances code completion performance across several programming languages and contexts, and the resulting capability of predicting relevant code snippets based on context and partial input boosts developer productivity substantially. [4]

Testing, debugging, code review and analysis

AI is used to automatically generate test cases, identify potential bugs, and suggest fixes. LLMs trained on historical bug data can enable prediction of likely failure points in generated code. Similarly, AI agents are used to perform static code analysis, identify security vulnerabilities, suggest performance improvements and ensure adherence to coding standards and best practices. [1]

Beyond detection, researchers have explored using LLMs for automated program repair, where models propose candidate patches for buggy code. Off-the-shelf LLMs have been reported to repair some security-relevant defects in a zero-shot setting (i.e., without task-specific fine-tuning), including issues categorized by the Common Weakness Enumeration (CWE), [5] being comparable to contemporary, non-AI bug fixing tools. These approaches build on LLMs’ code-generation capability and the resulting patches still require validation through software testing, static program analysis, and human code review. [5] [6]

Challenges

The incorporation of AI tools has introduced new ethical dilemmas and intellectual property challenges. The ownership of AI-generated code is unclear: who is responsible for the generated end-product? Also unclear are the ethical responsibilities of generated code. [7] Changes in the role of software engineers are inevitable. [8] [9]

Governance and oversight

The outputs from AI-assisted software development require to be validated through a combination of automated testing, static analysis tools and human review, creating a governance layer that acts as a safeguard ensuring quality and accountability. [10]

Industry perspectives

Technology sector leaders have highlighted the transformative potential of AI-assisted software development. In an 'Unlocking AI Potential' session of 'Advancing AI 2025' hosted by AMD Developer Central, Andrew Ng and Lisa Su emphasized the strategic and operational implications of integrating AI tools into development workflows. Ng noted that AI systems are increasingly capable of "helping programmers focus on higher-level problem solving", while Su framed the shift as "an opportunity to redefine performance and productivity across industries." [11]

Vibe coding

In computer programming, vibe coding is a software development practice assisted by artificial intelligence (AI) and based on chatbots (programs that simulate conversation). The software developer describes a project or task in a prompt to a large language model (LLM), which generates source code automatically. Vibe coding typically involves accepting AI-generated code without closely reviewing its internal structure, instead relying on results and follow-up prompts to guide changes. [12] [13]

The term was listed in March 2025 by Merriam-Webster as a "slang & trending" expression. [14] It was named the Collins English Dictionary Word of the Year for 2025. [15] [16]

Advocates of vibe coding say that it allows even amateur programmers to produce software without the extensive training and skills required for software engineering. [17] [18] Critics point out a lack of accountability, maintainability, and the increased risk of introducing security vulnerabilities in the resulting software. [12] [18]

See also

References

  1. 1 2 "Transforming software with generative AI". MIT Technology Review Insights. 17 October 2024. Archived from the original on 5 July 2025. Retrieved 5 July 2025.
  2. "What is agentic coding? How it works and use cases". Google Cloud. Retrieved 2026-02-23.
  3. Soral, Sulabh (6 November 2024). "The future of coding is here: How AI is reshaping software development". Anthropic. Archived from the original on 6 July 2025. Retrieved 6 July 2025.
  4. Husein, Rasha Ahmad; Aburajouh, Hala; Catal, Cagatay (12 June 2025). "Large language models for code completion: A systematic literature review". Computer Standards & Interfaces. 92 (C) 103917. doi:10.1016/j.csi.2024.103917 via ACM Digital Library.
  5. 1 2 Pearce, Hammond; Tan, Benjamin; Ahmad, Baleegh; Karri, Ramesh; Dolan-Gavitt, Brendan (2022-08-15). "Examining Zero-Shot Vulnerability Repair with Large Language Models". arXiv: 2112.02125 [cs.CR].
  6. Chen, Mark; Tworek, Jerry; Jun, Heewoo; Yuan, Qiming; Pinto, Henrique Ponde de Oliveira; Kaplan, Jared; Edwards, Harri; Burda, Yuri; Joseph, Nicholas (2021-07-14). "Evaluating Large Language Models Trained on Code". arXiv: 2107.03374 [cs.LG].
  7. Sauvola, Jaakko; Tarkoma, Sasu; Klemettinen, Mika; Riekki, Jukka; Doermann, David (11 March 2024). "Future of software development with generative AI". Automated Software Engineering. 31 (26) 26. doi: 10.1007/s10515-024-00426-z via Springer Nature Link.
  8. Dryka, Marcin; Pluszczewska, Bianka (9 May 2025). "Is There a Future for Software Engineers? The Impact of AI [2025]". Brainhub. Retrieved 5 July 2025.
  9. Walsh, Philip; Gupta, Gunjan; Poitevin, Helen; Mann, Keith; Micko, Dave; Bhat, Manjunath (30 August 2024). "AI Will Not Replace Software Engineers (and May, in Fact, Require More)". Gartner Research. Retrieved 5 July 2025.
  10. "AI-assisted software engineering: Rewriting the build versus buy playbook". Deloitte. 14 May 2025. Archived from the original on 29 October 2025. Retrieved 30 August 2025.
  11. Andrew Ng, Lisa Su (2025-07-01). Unlocking AI Potential: Insights from Dr. Andrew Ng & Dr. Lisa Su (YouTube video). AMD Developer Central. Archived from the original on 2025-07-04. Retrieved 2025-07-09.
  12. 1 2 Edwards, Benj (5 March 2025). "Will the future of software development run on vibes?". Ars Technica . Archived from the original on 6 March 2025. Retrieved 3 June 2025. The technique, enabled by large language models (LLMs) from companies like OpenAI and Anthropic, has attracted attention for potentially lowering the barrier to entry for software creation. But questions remain about whether the approach can reliably produce code suitable for real-world applications, even as tools like Cursor Composer, GitHub Copilot, and Replit Agent make the process increasingly accessible to non-programmers.
  13. "What is 'vibe code'? Former Tesla AI director Andrej Karpathy defines a new era in AI-driven development". The Times of India . 2 March 2025. Archived from the original on 4 March 2025. Retrieved 3 June 2025. Karpathy's "vibe coding" is a recognition of how sophisticated AI systems have evolved. In describing on X (formerly Twitter), he added that LLMs, like the Cursor Composer with Sonnet, are advancing to a degree that nearly eliminates the use of traditional coding mechanisms. Describing his own experience, Karpathy explained how he converses with AI tools almost in a passive manner—merely talking to them and having the AI handle the rest. This method eliminates manually typing code as well as keeping track of all the minute information in the program.
  14. "vibe coding". Slang & Trending. Merriam-Webster. 8 March 2025. Retrieved 2 June 2025. Vibe coding (also written as vibecoding) (Vibecode/Vibecoder) is a recently-coined term for the practice of writing code, making web pages, or creating apps, by just telling an AI program what you want, and letting it create the product for you. In vibe coding the coder does not need to understand how or why the code works, and often will have to accept that a certain number of bugs and glitches will be present. The verb form of the word is vibe code.
  15. Garnsworthy, Jenny (6 November 2025). "Collins dictionary crowns AI buzz term Word of the Year". The Independent . Retrieved 6 November 2025.
  16. "'Vibe coding' named word of the year by Collins Dictionary". BBC News . 6 November 2025. Retrieved 6 November 2025.
  17. Lanz, Jose Antonio (23 March 2025). "Vibe Coding: How Devs and Laymen Alike Are Using AI to Create Apps and Games". Decrypt.co.
  18. 1 2 Chowdhury, Hasan; Mann, Jyoti (13 February 2025). "Silicon Valley's next act: bringing 'vibe coding' to the world". Business Insider . Archived from the original on 26 February 2025. Retrieved 3 March 2025.