AgileCoder : Agents collaboratifs dynamiques pour le développement logiciel basé sur la méthodologie Agile
AgileCoder: Dynamic Collaborative Agents for Software Development based on Agile Methodology
June 16, 2024
Auteurs: Minh Huynh Nguyen, Thang Phan Chau, Phong X. Nguyen, Nghi D. Q. Bui
cs.AI
Résumé
Les agents logiciels se sont imposés comme des outils prometteurs pour aborder des tâches complexes en ingénierie logicielle. Cependant, les travaux existants simplifient à l'excès les flux de travail de développement logiciel en suivant le modèle en cascade. Ainsi, nous proposons AgileCoder, un système multi-agents qui intègre la Méthodologie Agile (MA) dans son cadre. Ce système attribue des rôles spécifiques de la MA, tels que Product Manager, Développeur et Testeur, à différents agents, qui collaborent ensuite pour développer un logiciel basé sur les entrées utilisateur. AgileCoder améliore l'efficacité du développement en organisant le travail en sprints, en se concentrant sur le développement incrémental du logiciel à travers ces sprints. De plus, nous introduisons le Générateur Dynamique de Graphes de Code, un module qui crée un Graphe de Dépendance de Code de manière dynamique à mesure que des mises à jour sont apportées à la base de code. Cela permet aux agents de mieux comprendre la base de code, conduisant à une génération et à des modifications de code plus précises tout au long du processus de développement logiciel. AgileCoder surpasse les benchmarks existants, tels que ChatDev et MetaGPT, établissant une nouvelle norme et démontrant les capacités des systèmes multi-agents dans des environnements d'ingénierie logicielle avancés. Notre code source est disponible à l'adresse suivante : https://github.com/FSoft-AI4Code/AgileCoder.
English
Software agents have emerged as promising tools for addressing complex
software engineering tasks. However, existing works oversimplify software
development workflows by following the waterfall model. 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. Our source
code can be found at https://github.com/FSoft-AI4Code/AgileCoder.Summary
AI-Generated Summary