Table of Contents
Fetching ...

ALMAS: an Autonomous LLM-based Multi-Agent Software Engineering Framework

Vali Tawosi, Keshav Ramani, Salwa Alamir, Xiaomo Liu

TL;DR

ALMAS addresses fragmentation in AI-assisted software engineering by proposing an end-to-end multi-agent framework that orchestrates LLM-based agents aligned with agile roles to automate SDLC tasks. The approach combines autonomous execution with interactive collaboration (the three Cs) and a novel Meta-RAG retrieval strategy to manage context and long-codebases, while integrating with Jira and Bitbucket for real-world workflows. The paper presents a blueprint of agent roles, interaction dynamics, and resource allocation, plus a case study where ALMAS builds a Python Streamlit app and adds a feature. The findings illustrate potential improvements in productivity and cost efficiency, illustrating a path toward practical, scalable AI-assisted software development.

Abstract

Multi-agent Large Language Model (LLM) systems have been leading the way in applied LLM research across a number of fields. One notable area is software development, where researchers have advanced the automation of code implementation, code testing, code maintenance, inter alia, using LLM agents. However, software development is a multifaceted environment that extends beyond just code. As such, a successful LLM system must factor in multiple stages of the software development life-cycle (SDLC). In this paper, we propose a vision for ALMAS, an Autonomous LLM-based Multi-Agent Software Engineering framework, which follows the above SDLC philosophy such that it may work within an agile software development team to perform several tasks end-to-end. ALMAS aligns its agents with agile roles, and can be used in a modular fashion to seamlessly integrate with human developers and their development environment. We showcase the progress towards ALMAS through our published works and a use case demonstrating the framework, where ALMAS is able to seamlessly generate an application and add a new feature.

ALMAS: an Autonomous LLM-based Multi-Agent Software Engineering Framework

TL;DR

ALMAS addresses fragmentation in AI-assisted software engineering by proposing an end-to-end multi-agent framework that orchestrates LLM-based agents aligned with agile roles to automate SDLC tasks. The approach combines autonomous execution with interactive collaboration (the three Cs) and a novel Meta-RAG retrieval strategy to manage context and long-codebases, while integrating with Jira and Bitbucket for real-world workflows. The paper presents a blueprint of agent roles, interaction dynamics, and resource allocation, plus a case study where ALMAS builds a Python Streamlit app and adds a feature. The findings illustrate potential improvements in productivity and cost efficiency, illustrating a path toward practical, scalable AI-assisted software development.

Abstract

Multi-agent Large Language Model (LLM) systems have been leading the way in applied LLM research across a number of fields. One notable area is software development, where researchers have advanced the automation of code implementation, code testing, code maintenance, inter alia, using LLM agents. However, software development is a multifaceted environment that extends beyond just code. As such, a successful LLM system must factor in multiple stages of the software development life-cycle (SDLC). In this paper, we propose a vision for ALMAS, an Autonomous LLM-based Multi-Agent Software Engineering framework, which follows the above SDLC philosophy such that it may work within an agile software development team to perform several tasks end-to-end. ALMAS aligns its agents with agile roles, and can be used in a modular fashion to seamlessly integrate with human developers and their development environment. We showcase the progress towards ALMAS through our published works and a use case demonstrating the framework, where ALMAS is able to seamlessly generate an application and add a new feature.

Paper Structure

This paper contains 9 sections, 2 figures.

Figures (2)

  • Figure 1: Overall conceptual system architecture diagram for ALMAS framework.
  • Figure 2: Example of application generated with ALMAS from a single task