ソフトウェアエンジニアリングのためのAIへの挑戦と道筋
Challenges and Paths Towards AI for Software Engineering
March 28, 2025
著者: Alex Gu, Naman Jain, Wen-Ding Li, Manish Shetty, Yijia Shao, Ziyang Li, Diyi Yang, Kevin Ellis, Koushik Sen, Armando Solar-Lezama
cs.AI
要旨
ソフトウェアエンジニアリングのためのAIは最近目覚ましい進歩を遂げ、生成AIの中でも注目すべき成功を収めています。しかし、自動化されたソフトウェアエンジニアリングがその真の可能性を発揮するためには、まだ多くの課題が残されています。人間が何を構築するか、難しいトレードオフをどのようにバランスさせるかといった重要な意思決定に集中し、ほとんどの日常的な開発作業が自動化されるという高いレベルの自動化を達成することは可能であるべきです。このレベルの自動化を実現するためには、学界と産業界の双方で大規模な研究とエンジニアリングの取り組みが必要です。本論文では、この目標に向けた進展を3つの側面から議論することを目指します。まず、ソフトウェアエンジニアリングにおけるAIの具体的なタスクを体系化した分類を提供し、コード生成や補完以外の多くのタスクに焦点を当てます。次に、現在のアプローチを制限しているいくつかの主要なボトルネックを概説します。最後に、これらのボトルネックを解決するための有望な研究方向性について、意見を交えたリストを提供し、この急速に成熟している分野の将来の研究を刺激することを期待します。
English
AI for software engineering has made remarkable progress recently, becoming a
notable success within generative AI. Despite this, there are still many
challenges that need to be addressed before automated software engineering
reaches its full potential. It should be possible to reach high levels of
automation where humans can focus on the critical decisions of what to build
and how to balance difficult tradeoffs while most routine development effort is
automated away. Reaching this level of automation will require substantial
research and engineering efforts across academia and industry. In this paper,
we aim to discuss progress towards this in a threefold manner. First, we
provide a structured taxonomy of concrete tasks in AI for software engineering,
emphasizing the many other tasks in software engineering beyond code generation
and completion. Second, we outline several key bottlenecks that limit current
approaches. Finally, we provide an opinionated list of promising research
directions toward making progress on these bottlenecks, hoping to inspire
future research in this rapidly maturing field.Summary
AI-Generated Summary