The integration of Artificial Intelligence (AI) into Integrated Development Environments (IDEs) is reshaping software development, fundamentally altering how developers interact with their tools. This shift marks the emergence of Human-AI Experience in Integrated Development Environment (in-IDE HAX), a field that explores the evolving dynamics of Human-Computer Interaction in AI-assisted coding environments. Despite rapid adoption, research on in-IDE HAX remains fragmented, which highlights the need for a unified overview of current practices, challenges, and opportunities. To provide a structured overview of existing research, we conduct a systematic literature review of 90 studies, summarizing current findings and outlining areas for further investigation. We organize key insights from reviewed studies into three aspects: Impact, Design, and Quality of AI-based systems inside IDEs. Impact findings show that AI-assisted coding enhances developer productivity but also introduces challenges, such as verification overhead and over-reliance. Design studies show that effective interfaces surface context, provide explanations and transparency of suggestion, and support user control. Quality studies document risks in correctness, maintainability, and security. For future research, priorities include productivity studies, design of assistance, and audit of AI-generated code. The agenda calls for larger and longer evaluations, stronger audit and verification assets, broader coverage across the software life cycle, and adaptive assistance under user control.
翻译:人工智能(AI)与集成开发环境(IDE)的融合正在重塑软件开发,从根本上改变了开发者与其工具的交互方式。这一转变标志着集成开发环境中人机交互体验(in-IDE HAX)这一新兴领域的出现,该领域致力于探索AI辅助编码环境中不断演变的人机交互动态。尽管应用迅速普及,但关于in-IDE HAX的研究仍较为零散,这凸显了对当前实践、挑战与机遇进行统一梳理的必要性。为系统性地概述现有研究,我们对90项研究进行了系统性文献综述,总结了当前发现并指出了有待深入探索的方向。我们将所综述研究的关键见解归纳为三个方面:IDE内基于AI的系统的影响、设计与质量。影响研究发现,AI辅助编码虽能提升开发者效率,但也带来了验证开销与过度依赖等挑战。设计研究表明,有效的界面应呈现上下文信息、提供建议的解释与透明度,并支持用户控制。质量研究记录了AI生成代码在正确性、可维护性与安全性方面存在的风险。未来研究的重点应包括生产力研究、辅助功能设计以及AI生成代码的审计。研究议程呼吁开展更大规模、更长周期的评估,建立更强大的审计与验证机制,拓展软件生命周期各阶段的覆盖范围,并在用户控制下实现自适应辅助。