Dependency-aware software requirements selection using fuzzy graphs and integer programming

Davoud Mougouei, David M.W. Powers

Research output: Contribution to journalArticlepeer-review

1 Citation (Scopus)

Abstract

One of the critical activities in software development is Requirements Selection, which is to find an optimal subset of the software requirements (features) with the highest value for a given budget. The values of the requirements, however, may depend on one another. Such Value Dependencies have not been considered by the existing requirements selection methods, leading to user dissatisfaction and loss of value and reputation in software projects. To mitigate this, we propose Dependency-Aware Requirements Selection (DARS) as an expert system, which explicitly accounts for value dependencies in software projects. At the heart of DARS is an Integer Linear Programming (ILP) model that reduces the risk of value loss by considering value dependencies among the requirements. These value dependencies are identified from the preferences of the users for the requirements. The validly of DARS is verified by studying a real-world software project as well as carrying out simulations. Our results demonstrate a significant reduction in value loss when DARS is employed. Also, the ILP model of DARS proved scalable to large requirement sets (experimented for up to 3000). The results of our study can be extrapolated to a wide range of expert systems that concern selecting value-dependent items.

Original languageEnglish
Article number113748
Number of pages23
JournalExpert Systems with Applications
Volume167
Early online date2 Aug 2020
DOIs
Publication statusPublished - 1 Apr 2021

Keywords

  • Dependencies
  • Fuzzy
  • Integer programming
  • Software
  • Value

Fingerprint

Dive into the research topics of 'Dependency-aware software requirements selection using fuzzy graphs and integer programming'. Together they form a unique fingerprint.

Cite this