Table of Contents
Fetching ...

AgileCoder: Dynamic Collaborative Agents for Software Development based on Agile Methodology

Minh Huynh Nguyen, Thang Phan Chau, Phong X. Nguyen, Nghi D. Q. Bui

TL;DR

AgileCoder presents a multi-agent software development framework that embeds Agile methodologies into AI-driven collaboration and introduces a Dynamic Code Graph Generator (DCGG) to maintain a repository-level Code Dependency Graph. By structuring work into sprints with roles such as Product Manager, Scrum Master, Developers, and Tester, and enabling context-aware code retrieval via DCGG, AgileCoder achieves state-of-the-art performance on benchmarks like HumanEval, MBPP, and a real-world ProjectDev suite. The approach emphasizes incremental development, explicit testing and code review, and targeted context retrieval to manage large codebases beyond LLM token limits. The results demonstrate improved executability and code quality at scale, suggesting practical potential for AI-assisted software engineering while highlighting areas for future work, including CI/CD integration and broader domain generalization.

Abstract

Software agents have emerged as promising tools for addressing complex software engineering tasks. Existing works, on the other hand, frequently oversimplify software development workflows, despite the fact that such workflows are typically more complex in the real world. Thus, we propose AgileCoder, a multi agent system that integrates Agile Methodology (AM) into the framework. This system assigns specific AM roles - such as Product Manager, Developer, and Tester to different agents, who then collaboratively develop software based on user inputs. AgileCoder enhances development efficiency by organizing work into sprints, focusing on incrementally developing software through sprints. Additionally, we introduce Dynamic Code Graph Generator, a module that creates a Code Dependency Graph dynamically as updates are made to the codebase. This allows agents to better comprehend the codebase, leading to more precise code generation and modifications throughout the software development process. AgileCoder surpasses existing benchmarks, like ChatDev and MetaGPT, establishing a new standard and showcasing the capabilities of multi agent systems in advanced software engineering environments.

AgileCoder: Dynamic Collaborative Agents for Software Development based on Agile Methodology

TL;DR

AgileCoder presents a multi-agent software development framework that embeds Agile methodologies into AI-driven collaboration and introduces a Dynamic Code Graph Generator (DCGG) to maintain a repository-level Code Dependency Graph. By structuring work into sprints with roles such as Product Manager, Scrum Master, Developers, and Tester, and enabling context-aware code retrieval via DCGG, AgileCoder achieves state-of-the-art performance on benchmarks like HumanEval, MBPP, and a real-world ProjectDev suite. The approach emphasizes incremental development, explicit testing and code review, and targeted context retrieval to manage large codebases beyond LLM token limits. The results demonstrate improved executability and code quality at scale, suggesting practical potential for AI-assisted software engineering while highlighting areas for future work, including CI/CD integration and broader domain generalization.

Abstract

Software agents have emerged as promising tools for addressing complex software engineering tasks. Existing works, on the other hand, frequently oversimplify software development workflows, despite the fact that such workflows are typically more complex in the real world. Thus, we propose AgileCoder, a multi agent system that integrates Agile Methodology (AM) into the framework. This system assigns specific AM roles - such as Product Manager, Developer, and Tester to different agents, who then collaboratively develop software based on user inputs. AgileCoder enhances development efficiency by organizing work into sprints, focusing on incrementally developing software through sprints. Additionally, we introduce Dynamic Code Graph Generator, a module that creates a Code Dependency Graph dynamically as updates are made to the codebase. This allows agents to better comprehend the codebase, leading to more precise code generation and modifications throughout the software development process. AgileCoder surpasses existing benchmarks, like ChatDev and MetaGPT, establishing a new standard and showcasing the capabilities of multi agent systems in advanced software engineering environments.
Paper Structure (42 sections, 3 figures, 7 tables, 1 algorithm)

This paper contains 42 sections, 3 figures, 7 tables, 1 algorithm.

Figures (3)

  • Figure 1: An overview of AgileCoder
  • Figure 2: Illustration of how Dynamic Code Graph Generator (DCGG) contributes to AgileCoder during the generation of a Python application.
  • Figure 3: An example of the Code Dependency Graph