A Mathematical Programming Approach to Considering Value Dependencies in Software Requirement Selection

Author: Davoud Mougouei

Mougouei, Davoud, 2018 A Mathematical Programming Approach to Considering Value Dependencies in Software Requirement Selection, Flinders University, School of Computer Science, Engineering and Mathematics

This electronic version is made publicly available by Flinders University in accordance with its open access policy for student theses. Copyright in this thesis remains with the author. This thesis may incorporate third party material which has been used by the author pursuant to Fair Dealing exceptions. If you are the owner of any included third party copyright material and/or you believe that any material has been made available without permission of the copyright owner please contact copyright@flinders.edu.au with the details.

Abstract

Software requirement selection aims to find an optimal subset of requirements with the highest value while respecting the project constraints. The value of a requirement however may depend, positively or negatively, on the presence or absence of other requirements in the optimal subset. Such Value Dependencies need to be considered in software requirement selection. However, the existing requirement selection works have mainly ignored value dependencies. This thesis presents a mathematical pro- gramming approach, referred to as Dependency-Aware Requirement Selection (DARS), for considering value dependencies in software requirement selection. The proposed approach includes four different selection methods: (i) an Integer Programming (IP) method, which takes into account the strengths of value dependencies; (ii) an Integer Linear Programming (ILP) method, which accounts for the strengths and qualities of value dependencies; (iii) a Mixed Integer Programming (MIP) method, that allows for partial selection of requirements; and (iv) a Society-Oriented method, which takes into account the social values of the requirements. Each method is comprised of three ma- jor components: (i) identification of value dependencies; (ii) modeling value depen- dencies; and (iii) integrating value dependencies into requirement selection. The main contributions of this thesis are validated by studying real-world software projects and extensive simulations with results highly suggestive of good prospects for application of DARS in industrial contexts as the approach reduces the risk of value loss posed by ignoring value dependencies among software requirements.

Keywords: Mathematical Programming, Value Dependencies, Software, Requirement Selection, Release Planning, Optimization, Fuzzy

Subject: Engineering thesis

Thesis type: Doctor of Philosophy
Completed: 2018
School: School of Computer Science, Engineering and Mathematics
Supervisor: David Powers