Pair Programming With Generative AI

Diomidis Spinellis
DOI: https://doi.org/10.1109/ms.2024.3363848
IF: 3
2024-04-09
IEEE Software
Abstract:Generative AI based on large-language models is significantly impacting software development through IDE assistants, cloud-based APIs, and interactive chatbots for coding assistance. It excels in generating and translating code and data, navigating APIs, and creating boilerplate content, thereby enhancing productivity. However, it is prone to generating inaccurate information ("hallucinations"), erroneous code, and potentially introducing security vulnerabilities. To counter these risks, employing automated analysis tools, conducting rigorous testing, and maintaining a deep understanding of computer science concepts are essential. While generative AI can substantially aid development tasks it is not a replacement for human expertise, especially in understanding complex software, its requirements, and architecture.
computer science, software engineering
What problem does this paper attempt to address?