AgileCoder: Dynamische kollaborative Agenten für die Softwareentwicklung basierend auf der agilen Methodik
AgileCoder: Dynamic Collaborative Agents for Software Development based on Agile Methodology
June 16, 2024
papers.authors: Minh Huynh Nguyen, Thang Phan Chau, Phong X. Nguyen, Nghi D. Q. Bui
cs.AI
papers.abstract
Software-Agenten haben sich als vielversprechende Werkzeuge zur Bewältigung komplexer Softwaretechnikaufgaben herausgestellt. Allerdings vereinfachen bestehende Arbeiten Softwareentwicklungsworkflows, indem sie dem Wasserfallmodell folgen. Daher schlagen wir AgileCoder vor, ein Multi-Agenten-System, das die Agile Methodik (AM) in das Framework integriert. Dieses System weist spezifische AM-Rollen wie Produktmanager, Entwickler und Tester verschiedenen Agenten zu, die dann gemeinsam Software basierend auf Benutzereingaben entwickeln. AgileCoder verbessert die Entwicklungseffizienz, indem er die Arbeit in Sprints organisiert und sich darauf konzentriert, die Software inkrementell durch Sprints zu entwickeln. Darüber hinaus führen wir den Dynamischen Code-Graph-Generator ein, ein Modul, das dynamisch einen Code-Abhängigkeitsgraphen erstellt, während Aktualisierungen am Codebestand vorgenommen werden. Dies ermöglicht es den Agenten, den Codebestand besser zu verstehen, was zu präziserer Codegenerierung und -modifikationen im gesamten Softwareentwicklungsprozess führt. AgileCoder übertrifft bestehende Benchmarks wie ChatDev und MetaGPT, setzt einen neuen Standard und zeigt die Fähigkeiten von Multi-Agenten-Systemen in fortgeschrittenen Softwaretechnikumgebungen auf. Unser Quellcode ist unter https://github.com/FSoft-AI4Code/AgileCoder verfügbar.
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.