SEMar 11, 2020

Dependency-Aware Software Requirements Selection using Fuzzy Graphs and Integer Programming

arXiv:2003.05785v11 citations
AI Analysis

This addresses the challenge of optimizing software project value for developers and managers, though it is incremental as it builds on existing integer programming and fuzzy graph techniques.

The paper tackles the problem of software requirements selection by accounting for imprecise value dependencies, proposing a method that reduces value loss in projects and scales to large requirement sets.

Software requirements selection aims to find an optimal subset of the requirements with the highest value while respecting the project constraints. But the value of a requirement may depend on the presence or absence of other requirements in the optimal subset. Such Value Dependencies, however, are imprecise and hard to capture. In this paper, we propose a method based on integer programming and fuzzy graphs to account for value dependencies and their imprecision in software requirements selection. The proposed method, referred to as Dependency-Aware Software Requirements Selection (DARS), is comprised of three components: (i) an automated technique for the identification of value dependencies from user preferences, (ii) a modeling technique based on fuzzy graphs that allows for capturing the imprecision of value dependencies, and (iii) an Integer Linear Programming (ILP) model that takes into account user preferences and value dependencies identified from those preferences to reduce the risk of value loss in software projects. Our work is verified by studying a real-world software project. The results show that our proposed method reduces the value loss in software projects and is scalable to large requirement sets.

Foundations

The foundational work for this paper's niche, ranked by how specifically the neighbourhood builds on it — not by global fame.

Your Notes