Table of Contents
Fetching ...

Prioritizing Software Requirements Using Large Language Models

Malik Abdul Sami, Zeeshan Rasheed, Muhammad Waseem, Zheying Zhang, Tomas Herda, Pekka Abrahamsson

TL;DR

The paper addresses the persistent challenge of prioritizing agile software requirements among multiple stakeholders under time and budget constraints. It proposes a web-based tool that leverages AI agents and prompt engineering to generate user stories from requirements and apply prioritization techniques such as Analytic Hierarchy Process (AHP) and MoSCoW, with integration potential to project management platforms. A preliminary methodological framework and a prototype using React/Flask/OpenAI demonstrate automated user-story generation, prioritization, and CSV export, with initial empirical results indicating efficient AHP-driven prioritization (around 8 seconds) and readiness for more extensive evaluation. The work lays groundwork for AI-assisted, stakeholder-aligned requirements management in agile environments and points to future directions including open-source LLMs, additional prioritization methods, and co-pilot capabilities.

Abstract

Large Language Models (LLMs) are revolutionizing Software Engineering (SE) by introducing innovative methods for tasks such as collecting requirements, designing software, generating code, and creating test cases, among others. This article focuses on requirements engineering, typically seen as the initial phase of software development that involves multiple system stakeholders. Despite its key role, the challenge of identifying requirements and satisfying all stakeholders within time and budget constraints remains significant. To address the challenges in requirements engineering, this study introduces a web-based software tool utilizing AI agents and prompt engineering to automate task prioritization and apply diverse prioritization techniques, aimed at enhancing project management within the agile framework. This approach seeks to transform the prioritization of agile requirements, tackling the substantial challenge of meeting stakeholder needs within set time and budget limits. Furthermore, the source code of our developed prototype is available on GitHub, allowing for further experimentation and prioritization of requirements, facilitating research and practical application.

Prioritizing Software Requirements Using Large Language Models

TL;DR

The paper addresses the persistent challenge of prioritizing agile software requirements among multiple stakeholders under time and budget constraints. It proposes a web-based tool that leverages AI agents and prompt engineering to generate user stories from requirements and apply prioritization techniques such as Analytic Hierarchy Process (AHP) and MoSCoW, with integration potential to project management platforms. A preliminary methodological framework and a prototype using React/Flask/OpenAI demonstrate automated user-story generation, prioritization, and CSV export, with initial empirical results indicating efficient AHP-driven prioritization (around 8 seconds) and readiness for more extensive evaluation. The work lays groundwork for AI-assisted, stakeholder-aligned requirements management in agile environments and points to future directions including open-source LLMs, additional prioritization methods, and co-pilot capabilities.

Abstract

Large Language Models (LLMs) are revolutionizing Software Engineering (SE) by introducing innovative methods for tasks such as collecting requirements, designing software, generating code, and creating test cases, among others. This article focuses on requirements engineering, typically seen as the initial phase of software development that involves multiple system stakeholders. Despite its key role, the challenge of identifying requirements and satisfying all stakeholders within time and budget constraints remains significant. To address the challenges in requirements engineering, this study introduces a web-based software tool utilizing AI agents and prompt engineering to automate task prioritization and apply diverse prioritization techniques, aimed at enhancing project management within the agile framework. This approach seeks to transform the prioritization of agile requirements, tackling the substantial challenge of meeting stakeholder needs within set time and budget limits. Furthermore, the source code of our developed prototype is available on GitHub, allowing for further experimentation and prioritization of requirements, facilitating research and practical application.
Paper Structure (14 sections, 4 figures)

This paper contains 14 sections, 4 figures.

Figures (4)

  • Figure 1: Process of Prioritizing Requirements Using LLMs and Analyzing Its Output
  • Figure 2: Requirements Gathering
  • Figure 3: Generation of User Stories by LLMs
  • Figure 4: Prioritization of Requirements Using LLMs