A Data-Driven Recommendation System for Enhancing Non-Functional Requirements Elicitation in Scrum-Based Projects

<bold>Context:</bold> Agile software development, particularly Scrum, enables teams to manage evolving requirements by emphasizing face-to-face communication and incremental deliveries. Although effective in addressing functional requirements, agile methods often overlook non-functional...

Full description

Saved in:
Bibliographic Details
Main Authors: Felipe Ramos, Alexandre Costa, Mirko Perkusich, Luiz Silva, Dalton Valadares, Ademar de Sousa Neto, Felipe Cunha, Hyggo Almeida, Angelo Perkusich
Format: Article
Language:English
Published: IEEE 2025-01-01
Series:IEEE Access
Subjects:
Online Access:https://ieeexplore.ieee.org/document/10915619/
Tags: Add Tag
No Tags, Be the first to tag this record!
Description
Summary:<bold>Context:</bold> Agile software development, particularly Scrum, enables teams to manage evolving requirements by emphasizing face-to-face communication and incremental deliveries. Although effective in addressing functional requirements, agile methods often overlook non-functional requirements during the initial stages of software projects, potentially leading to cost overruns on software and hardware and project failures exceeding 60%. <bold>Objective:</bold> In this article, we introduce a data-driven recommendation system to assist Scrum teams in eliciting NFRs effectively and early in the development lifecycle. <bold>Method:</bold> Our proposed solution applies the k-nearest neighbors algorithm to recommend non-functional requirements by leveraging historical project data structured through a taxonomy of user stories. We evaluated the system through offline experiments under the cross-validation protocol, utilizing datasets from 13 real-world projects. <bold>Results:</bold> Our recommendation system achieved an F-measure of up to 79%, demonstrating its ability to provide accurate and context-aware non-functional requirements suggestions. <bold>Conclusion:</bold> These findings suggest that our solution supports agile teams by automating non-functional requirement elicitation and enhancing decision-making processes, thereby addressing critical gaps in non-functional requirement integration within Scrum-based projects.
ISSN:2169-3536