Software project scheduling shall be described as a day-to-day activity in a software industry relates to the assignment of who does what while executing a software project within a stipulated timeline.
2. Preface
• Software project scheduling shall be described as a day-to-
day activity in a software industry relates to the assignment
of who does what while executing a software project within
a stipulated timeline. This problem is financially important
as far as any software company is concerned.
• SPSP is NP-hard with severe complex combinatorial
optimization issues and it is time-consuming and error-
prone to optimize SPSP manually by human beings.
• Use of Heuristics to find a solution close to the best one
and they find it swiftly and easily. Sometimes these
algorithms can be accurate, because they actually find the
best solution with reasonable computational expenses.
3. Contents of the presentation
• Introduction to SPSP
• General SPSP Formulation
• Literature Review
• Research Statement
• SPSP formulations in this thesis
• Proposed methods
• DE algorithm with improved mutation scheme
• PSO with improved local search scheme
• Krill herd algorithm with Modified Induction scheme
• Experiments and Results
• Publication out of this thesis
• List of References
4. Introduction to SPSP
• The project scheduling problem (SPSP) consists of
various activities which are need to be scheduled, subject
to precedence and resource constraints such that the
makespan is minimized. Such that there are several types
of problem formulations based on the objectives and
constraints handled.
• This is a capital issue in the practice of software
engineering, since the total budget and human resources
involved must be managed optimally in order to end in a
successful project.
• The Solution method is to efficiently allocate resources in
order to achieve specific objectives while satisfying a
variety of constraints.
5. General SPSP Formulation
• SPSP is a problem of finding an optimal schedule
for a software project so that the precedence and
resource constraints are satisfied and the final
project cost consisting of personal salaries and
project duration is minimized
• In SPSP, to evaluate the feasible solutions, three
issues are addressed feasibility of the solution,
total project duration and the cost of the whole
project according the solution. This formulation will
discuss to calculate the total duration and cost of
the project
6.
7.
8.
9. Literature Review
• The objective is to find a schedule which leads to the earliest
possible end of the project, i.e., the minimal Makespan.
Blazewicz et al. have shown that the RCPSP belongs to the
class of the strongly NP-hard problems
• Franck et al. propose a calendar concept for project scheduling
which includes preemptive scheduling. A calendar is defined as a
binary function that determines for each period whether activity
execution is possible or a break
• Hartmann describes a real-world medical research project with
time-dependent resource requests.
• Drezet and Billaut deal with time-dependent requests for
resources which represent software developers. A minimum and
a maximum resource request per period is given. Additional
constraints reflect legal requirements such as the maximal
working time per day.
• Mika et al. [127] consider three types of setup times. Sequence
independent setup times depend only on the activity and the
resource on which the activity will be performed.
10. Literature Review
• Schwindt and Trautmann incorporate sequence-dependent setup
times into an RCPSP with various extensions. Their goal is to
capture a scheduling problem that arises in batch production.
• Bellenguez and Néron consider activities which require staff
members with certain skill levels. This can be seen as a special
case of the mode concept where each mode corresponds to a
feasible subset of staff members that can carry out the activity
with regard to the required skill levels.
• Tareghian and Taheri follow a similar approach to maximize the
quality while the project’s deadline and budget (nonrenewable
resource capacity) must be observed.
• Schultmann and Rentz present a case study that demonstrates
how the multi-mode RCPSP can be applied to projects which
consist of the dismantling of buildings.
• Minimal time-lags have recently been considered by Klein and
Scholl show how minimal time-lags can be used to capture
sequence-independent setup times as well as batches in
production projects.
11. Literature Review
• The concepts of minimal and maximal time lags has also been
considered within the multimode RCPSP, by Sabzehparvar and
Seyed-Hosseini consider minimal and maximal mode-dependent
time lags.
• Neumann et al. consider due dates which can be exceeded at
some penalty cost with Objective functions considering due dates.
• Time-switch constraints have been introduced by Yang and Chen.
The planning horizon is divided into cycles of work and rest time
windows. An activity can start only in a work window.
• In a case study on a real-world project, Hartmann notes that
many medical research projects require that certain activities may
not finish in the same period. In order to avoid systematic errors,
replications of the same experiment (which correspond to
activities) are not allowed to end at the same time.
• Brucker and Knust [30] introduce parallelity constraints which
force two activities to be processed in parallel for at least one
period. They also discuss the opposite case in which two activities
may not be processed in parallel at all.
12. Literature Review
• Renewable resources such as manpower and machines are
limited on a per-period basis. In contrast, nonrenewable resources
have a limited capacity for the entire project, an example would be
a budget for the project.
• A partially renewable resource would then be defined as follows:
Each day from Monday through Friday makes up one separate
period subset with an associated availability of 1. The weekend
restriction is imposed by defining another period subset containing
both Saturday and Sunday with a capacity of 1.
• Bartels and Zimmermann employ cumulative resources within a
multi-mode RCPSP with minimal and maximal time lags. They
consider a project of engineering and testing activities in the
automotive industry.
• Dorndorf et al. refer to the RCPSP with dedicated resources as
disjunctive scheduling problem, dedicated resources can be
covered, which means that we have m renewable resources with a
capacity of one unit and a request of at most one unit.
• Bartusch et al. show that resource capacities varying with time can
be transformed into constant capacities if minimal and maximal
time lags are available. The constant capacity would be defined as
the maximum of the time-dependent capacity over time.
13. Literature Review
• Vanhoucke defines a set of time windows for each activity.
Carrying out an activity within one of its time windows is desired
due to quality considerations. The objective function minimizes
penalties that are caused by executing activities outside their time
windows.
• Van de Vonder et al. propose to reschedule the remaining
activities such that the sum of deviations of the new finishing times
from the original ones is minimized.
• Shadrokh and Kianfar present an extension of the resource
investment problem. Instead of a deadline, a due date is used, i.e.,
delayed completion of the project is allowed. The objective is to
minimize the sum of resource availability costs and tardiness
penalty. The latter results from a constant cost factor for each
period the project is delayed.
• A nonrenewable resource-based objective has been considered by
Akkan et al. within the discrete time-cost tradeoff problem, where
the only nonrenewable resource is interpreted as money.
• Rummel et al. consider a cost-based objective that consists of two
components. The project duration costs are proportional to the
makespan. Activities can be combined (consolidated) in order to
reduce the makespan, but this causes consolidation costs.
14. Literature Review based on solution methods
• SPSP is classified as a NP-hard problem with largely complex
combinatorial optimization constraints. Hence, scheduling a
software project automatically with valid features in the project is
highly helpful for software project managers for a real project
management. Thus for the past two decades, the project
schedules generated using robust modern heuristic algorithms
have attracted increasing interest amongst researchers.
• Hartmann, proposed a permutation based GA, which adopted
regret-based sampling method and priority rule to produce initial
population; Alcaraz, & Maroto presented an activity list based GA
in which a gene was added to decide Forward or Backward
schedule generation scheme (SGS) to be used. Later, Hartmann
again proposed an adaptive GA, in which a gene was adopted to
decide parallel SGS or serial SGS to be used.
• Boctor, proposed an active list based SA to solve the RCPSP,
where serial SGS was used to generate schedule and insert
operation was employed as local search; Cho, & Kim introduced a
random key based SA, where some activities were delayed on
purpose to expand search space; Bouleimen, proposed a global
shift operation-based SA, which adopted multiple cooling chains
with different initial solution.
15. Literature Review based on solution methods
• Klein, proposed a Forward–Backward tabu search to solve the
time-varying RCPSP, where active list and serial SGS were
adopted; Artigues, et al, introduced an insert based TS, where the
abandoned solutions were inserted based on a flow network
model; Nonobe, adopted TS to solve the RCPSP, where shift
moves and a specific neighborhood reduction mechanism were
developed to improve the standard TS.
• Zhang et al, proposed both permutation-based particle swarm
optimization and priority-based PSO for solving the RCPSP.
• An ACO approach for the RCPSP is presented by Xiao, with the
use of a combination of two pheromone evaluation methods by the
ants to find new solutions, a change of the influence of the
heuristic on the decisions of the ants during the run of the
algorithm, and the option that an elitist ant forgets the best-found
solution are studied. Similarly The mechanism of ACO by Merkle
provides good support in the use of incorporating the domain
knowledge as the heuristic search information thereby to improve
the performance of the scheduling algorithm.
16. Research Statement
• Based on comprehensive survey of literature, this
research confines in solving SPSP in three variants:
(i) Regular SPSP formulation as given in Eqn (2.1),
(ii) SPSP with Worker compensation scheme (WCS)
(iii) SPSP with WCS & Task Priority Scheme
• In addition, three hybrid heuristics based techniques
were developed for solving the above three SPSP
formulation.
(i) DE algorithm with improved mutation scheme
(ii) PSO with improved local search scheme
(iii) Krill herd algorithm with Modified Induction
scheme
19. SPSP formulations in this thesis
TASK PRIORITY SCHEME
• Deadlines are often associated with specific tasks of the entire project.
In order to address deadline issues, the concept of ‘‘importance”of
tasks is introduced by assigning three properties to eachtask: Dsoft,
Dhard, and P. The two deadlines are expressed in timeunits, while the
penalty P is expressed as a cost per unit time.
21. The mutation scheme goes like this:
• Randomly choose a set of mutation vectors ‘k’ and from that a
candidate ‘x’ and perturb the solution to find L number of
neighbours.
• Choose all the neighbours and perform fitness comparison with
the ‘x’.
• All those which are better than ‘x’ need to be locally improved
using a direct search method.
• The best solution obtained amongst all in the above point will be
the new ‘x’.
• Do this until all the mutation vectors “k “ are involved in this
mutation scheme.
22.
23.
24.
25.
26.
27.
28. Summary
• An improved differential evolution (IDE) algorithm for the software project
scheduling problem (SPSP) is proposed. The interest on finding a more
efficient solution technique for SPSP is always a topic of interest due to the fact
of ever growing challenges faced by the software industry.
• As reviewed from literature, traditional and globally established software
project scheduling techniques fail to cope effectively with the evolutionary and
dynamic nature of modern software projects.
• Compared to the efforts by project management experts, the proposed model
using IDE seems to be a practicable tool to guide project managers in their
daily routines of software project scheduling. IDE is tailored to solve the
problem.
• In the proposed method the IDE-SPSP, by dividing the tasks and allocating
employee dedications to task nodes, a construction graph is built; the SPSP
problem is naturally converted into a graph-based search problem.
• Numerical simulation results demonstrate the proposed IDE algorithm
outperforms the DE approach for the SPSP and superior in producing the most
reasonable project schedules.
Next chapter of this thesis will analyze a new algorithm called improved particle
swarm optimization algorithm for solving the SPSP including a new constraint
called employee compensation model
34. Summary
• An improved PSO (IPSO) algorithm for solving the software project
scheduling problem (SPSP) is proposed.
• In addition to the regular constraints this chapter considered a
compensation model. Wherein the problem becomes more
challenging due to inclusion new equality constraints.
• Compared to the earlier IDE-SPSP method proposed in the previous
chapter, the proposed model using IPSO seems to be a practicable
tool to guide project managers in their daily routines of software
project scheduling when compensation model is also included.
• IPSO is tailored to solve the problem. In the proposed method the
IPSO-SPSP, by dividing the tasks and allocating employee dedications
to task nodes, a construction graph is built; the SPSP problem is
naturally converted into a graph-based search problem.
• Numerical simulation results demonstrate the proposed IPSO
algorithm outperforms the IDE approach for the SPSP with
employee compensation model.
40. Summary
• An improved krill herd algorithm (IKHA) algorithm for the software project
scheduling problem (SPSP) with both compensation model and task importance
model is proposed.
• The interest on finding a more efficient solution technique for SPSP is always a
topic of interest due to the fact of ever growing challenges faced by the software
industry.
• As reviewed from literature, traditional and globally established software project
scheduling techniques fail to cope effectively with the evolutionary and dynamic
nature of modern software projects.
• Compared to the efforts by project management experts, the proposed model
using IDE seems to be a practicable tool to guide project managers in their daily
routines of software project scheduling.
• IKHA is tailored to solve the problem. In the proposed method the IDE-SPSP, by
dividing the tasks and allocating employee dedications to task nodes, a
construction graph is built; the SPSP problem is naturally converted into a graph-
based search problem.
• Numerical simulation results demonstrate the proposed IKHA algorithm
outperforms the IDE and IPSO approach for the SPSP and superior in producing
the most reasonable project schedules both compensation model and task
importance model.