Recent advances in large language model agents offer the promise of automating end-to-end software development from natural language requirements. However, existing approaches largely adopt linear, waterfall-style pipelines, which oversimplify the iterative nature of real-world development and struggle with complex, large-scale projects. To address these limitations, we propose EvoDev, an iterative software development framework inspired by feature-driven development. EvoDev decomposes user requirements into a set of user-valued features and constructs a Feature Map, a directed acyclic graph that explicitly models dependencies between features. Each feature node in the feature map maintains multi-layer contexts, including business logic, software design, and code implementation, which are propagated along dependencies to provide context for subsequent development iterations. We evaluate EvoDev on challenging Android development tasks and show that it outperforms the best-performing baseline, Claude Code, by 57.3%, while improving single-agent performance by 16.0%-58.5% across different base LLMs, highlighting the importance of feature decomposition, dependency modeling, context propagation, and workflow-aware agent design for end-to-end software development. Moreover, our work summarizes practical insights for designing iterative, LLM-driven development frameworks and informs future training of base LLMs to better support iterative software development.
翻译:近期大语言模型智能体的进展为实现从自然语言需求到端到端软件开发的自动化提供了可能。然而,现有方法大多采用线性瀑布式流水线,这过度简化了真实软件开发中的迭代特性,且难以应对复杂的大规模项目。为突破这些局限,我们提出EvoDev——一种受特性驱动开发启发的迭代式软件开发框架。EvoDev将用户需求分解为一组用户价值特性,并构建特性映射图——一种显式建模特性间依赖关系的有向无环图。特性映射图中的每个特性节点维护多层上下文,包括业务逻辑、软件设计与代码实现,这些上下文沿依赖关系传播,为后续开发迭代提供背景信息。我们在具有挑战性的安卓开发任务上评估了EvoDev,结果表明其相比最优基线Claude Code性能提升57.3%,并在不同基础大语言模型上将单智能体性能提升16.0%-58.5%,这凸显了特性分解、依赖建模、上下文传播及工作流感知智能体设计对端到端软件开发的重要性。此外,本文总结出设计迭代式大语言模型驱动开发框架的实践洞见,为未来训练支持迭代式软件开发的基础大语言模型提供参考。