Information Technology Reference
In-Depth Information
optimal set of requirements to include in the next release of a software system
has become known as the Next Release Problem (NRP) [13, 113] and the activity
of planning for requirement inclusion and exclusion has become known as release
planning [82, 84].
The NRP deals with the selecting a subset of requirements based on their
desirability (e.g. the expected revenue) while subject to constraints such as a
limited budget [13]. The original formulation of NRP by Bagnall et al. [13]
considered maximising the customer satisfaction (by inclusion of their demanded
requirements in the next version) while not exceeding the company's budget.
More formally, let C =
be the set of m customers whose re-
quirements are to be considered for the next release. The set of n possible
software requirements is denoted by R =
{
c 1 ,...,c m }
. It is assumed that all
requirements are independent, i.e. no requirement depends on others 2 . Finally,
let cost =[ cost 1 ,...,cost n ] be the cost vector for the requirements in R : cost i
is the associate cost to fulfil the requirement r i .
We also assume that each customer has a degree of importance for the com-
pany. The set of relative weights associated with each customer c j (1
{
r 1 ,...,r n }
j
m )is
[0 , 1] and j =1 w j = 1. Finally, it is
assumed that all requirements are not equally important for a given customer.
The level of satisfaction for a given customer depends on the requirements that
are satisfied in the next release of the software. Each customer c j (1
denoted by W =
{
w 1 ,...,w m }
,where w j
j
m )
assigns a value to requirement r i (1
n ) denoted by value ( r i ,c j )where
value ( r i ,c j ) > 0ifcustomer c j gets the requirement r i and 0 otherwise.
Basedonabove,theoverall score , or importance of a given requirement r i (1
i
n ), can be calculated as score i = j =1 w j
i
value ( r i ,c j ). The score of a given
requirement is represented as its overall value to the organisation.
The aim of the Multi-Objective NRP (MONRP) is to investigate the trade-off
between the score and cost of requirements. Let score =[ score 1 ,...,score n ]be
the score vector calculated as above. Let x =[ x 1 ,...,x n ]
·
n asolution
vector, i.e. a binary string identifying a subset of R . Then MONRP is defined
as follows:
∈{
0 , 1
}
Definition 3. Given: The cost vector, cost =[ cost 1 ,...,cost n ] and the score
vector (calculated from the customer weights and customer-assigned value of re-
quirements) score =[ score 1 ,...,score n ] .
Maximise n
x i while minimising n
Problem:
i =1 score i ·
i =1 cost i ·
x i .
Representation. Similar to the test suite minimisation problem in Section 8.1,
the candidate solution for NRP should denote whether each requirement will
be selected , i.e. implemented in the next release. For a set of n requirements,
{
, a candidate solution can be represented with a binary string of
length n :the i -th digit is 1 if r i is to be included in the subset and 0 otherwise.
2 Bagnall et al. [13] describe a method to remove dependences in this context by
computing the transitive closure of the dependency graph and regarding each re-
quirement and all its prerequisites as a new single requirement.
r 1 ,...,r n }
 
Search WWH ::




Custom Search