  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.
