This paper explores the transformative impact of generative artificial intelligence (AI) on software development practices. As organizations increasingly adopt generative AI tools, understanding their role across various stages of the software lifecycle becomes essential. We analyze how generative AI can enhance requirements engineering by automating the gathering and analysis of user needs. In the realm of software design, we discuss innovative design strategies enabled by AI, while in software implementation, we highlight the efficiencies gained through automated coding techniques. The paper also examines the implications of generative AI on quality assurance, emphasizing its potential to improve testing processes, and addresses the challenges of software maintenance in an AI-enabled environment. Furthermore, we evaluate the advantages and limitations of integrating generative AI into software development, providing a balanced perspective on its benefits and potential risks. This research aims to offer insights into harnessing generative AI effectively while navigating its challenges, ultimately contributing to the advancement of software engineering practices.

错误:搜索内容不能为空,请输入英文关键词
错误:关键词超出字数限制,请精简
高级检索

Generative AI for Software Development: A Survey

  • Moez Krichen

摘要

This paper explores the transformative impact of generative artificial intelligence (AI) on software development practices. As organizations increasingly adopt generative AI tools, understanding their role across various stages of the software lifecycle becomes essential. We analyze how generative AI can enhance requirements engineering by automating the gathering and analysis of user needs. In the realm of software design, we discuss innovative design strategies enabled by AI, while in software implementation, we highlight the efficiencies gained through automated coding techniques. The paper also examines the implications of generative AI on quality assurance, emphasizing its potential to improve testing processes, and addresses the challenges of software maintenance in an AI-enabled environment. Furthermore, we evaluate the advantages and limitations of integrating generative AI into software development, providing a balanced perspective on its benefits and potential risks. This research aims to offer insights into harnessing generative AI effectively while navigating its challenges, ultimately contributing to the advancement of software engineering practices.