- ITECHPROSOLUTIONS

Optimized Software Release Planner
ABSTRACT:
Incremental software Release offers releasing Software in Phases to respond
quicker with Customer Feed back. Software Release to offer a compromise
between Resource Allocation and Productivity. Software Release Planning using
OPTIMIZERASORP, a two phase optimization approach. Phase 1 applies integer
linear programming to a relaxed version of the full problem. Phase 2 uses genetic
programming in a reduced search space to generate operational resource allocation
plans.
EXISTING SYSTEM:
 All release planning models and techniques consider only the cumulative
effort.
 A major problem faced by companies developing or maintaining large and
complex systems is determining which elements of a typically large set of
candidate features should be assigned to which releases of the software.
 This might result in dissatisfied customers, time and budget overruns, and
decreased competitiveness in the marketplace
DISADVANTAGES OF EXISTING SYSTEM:
 Without good release planning critical features are not provided at the right
time.
 The solution of this complex problem is of pivotal importance for project
success.
 One of the key limitations of current release planning methods is the lack of
a systematic process to balance the appropriate delivery of features with the
resources available.
PROPOSED SYSTEM:
 In this project we augment the scope of release planning by examining
details of the resource allocation necessary to actually develop the features.
 For that, we assume that each feature is decomposed into a sequence of tasks
such as design, implementation, and testing.
 These development tasks can be defined to an even more fine-grained level.
 In addition, managerial support and/or other tasks can be considered here as
well.
MODULES:
Decomposition of feature
Collection of data
Computation of upper bound
Optimization
Allocation of resources
MODULES DESCSRIPTION:
COLLECTION OF DATA
 v(n, k) - individual values v(n, k), where v(n, k) describes the expected value
contribution of feature f(n) in case it is assigned to release k.
 r(n, m) - Feature f(n) consumes an amount r(n, m) of nonhuman resources
of type m.
 dev (N) - pool of D developers, denoted by dev(1)…dev(D), performing one
or more types of development activities.
 w(n, q) - workload w(n, q) is defined as the effort needed to fulfill the task.
The time needed to perform a task depends not only on the workload but
also on the productivity of the developer assigned to this task.
COMPUTATION OF UPPER BOUND (PHASE 1)
 Generating an upper bound for the maximum value achievable. This allows
an evaluation of the solution generated in Phase 2.
 Second, the solution obtained from Phase 1 is used to restrict the set
(permutations of N features) to the set used in the GA of Phase 2.
 This can significantly reduce the computational effort and allows solution of
problems of small and medium size.
 To facilitate the process of solving RASORP problem, we considered release
date t(k) instead of all possible points of time t(t = 1…t(k)) for scheduling
tasks.
 Main considerations for obtaining results..
 for all developers dev(d) and for all release times t(k), developer
dev(d) can work at most t(k) units of time until the end of release k.
 Precedence relationships between tasks must be observed as well.
 Weak task precedence – task(n,q+1) cannot be finished earlier than
the time task(n,q).
 The resulting release and resource allocation optimization model
RASORP* is defined as a relaxed version of the original problem RASORP.
 We applied branch-and-cut techniques in combination with linear
programming to generate upper bounds and use a greedy
heuristic to solve
the resulting subproblem at each node of the branching tree.
OPTIMIZATION(PHASE 2)
 In this module we find the optimal or at least a
near-optimal solution of
the complete RASORP problem can be obtained from the relaxed version
RASORP*.
 We use a GA to search for the best solution for assigning human resources
to the tasks of the features chosen for release.
 For a solution x1 obtained from Phase 1, we define sets of indices of features
belonging to the same release.
 The family of indices A(x1,k) of features assigned to release k is called an
x1-assignment.
ALLOCATION OF RESOURCES
 This allows us to consider more or less skilled developers with a higher or
lower productivity factor than 1, respectively.
 In order to summarize information related to the assignment of developers to
tasks, we will later use vector u defined as u(d,t,n,q)= 1 if and only if at
moment t (t=1,2….t[k]) developer d (d=1..D) is working on task (n,q)
u(d,t,n,q)= 0 otherwise.
 Each developer has different levels of productivity for performing the
individual tasks.
 The three-dimensional productivity vector indicates the relative productivity
to perform three tasks.
SYSTEM REQUIREMENTS:
HARDWARE REQUIREMENTS:
 System
:
Pentium IV 2.4 GHz.
 Hard Disk
:
40 GB.
 Floppy Drive
:
1.44 Mb.
 Monitor
:
15 VGA Colour.
 Mouse
:
Logitech.
 Ram
:
512 Mb.
SOFTWARE REQUIREMENTS:
 Operating system :
Windows XP/7.
 Coding Language :
JAVA
 IDE
:
Netbeans 7.4
 Database
:
MYSQL