Solving Software Project Scheduling Problem Using SBSE Approach
Solving Software Project Scheduling Problem Using SBSE Approach
Abstract—Project scheduling has always remained one of the most integral and significant components of the project. An optimized
and efficient project schedule can save millions of dollars for any vendor as well as the end-user. According to experts, one of the core
reasons for the failure of the projects is also the inability to produce efficient project schedules. Specifically, to the software industry, the
timeline and completion have always been very critical since there are many projects which have to be moved towards production in a
very well defined time window, for example in the recent era of Covid-19 the urgent need for the specialized and high complexity
software has skyrocketed in a very short span of time. For the effective execution and successful productions, people with decades of
experience are engaged for the accurate estimations of the project schedules in terms of optimized involvement of the human
resources, cost, and technologies. The purpose of our research is to identify the potential metaheuristic algorithms suggested by many
researchers in their literature and apply them in the best possible way to solve the software project-scheduling problem (SPSP).
1 I NTRODUCTION
ciplines (e.g., electrical, mechanical, civil, chemical) are con- known algorithms NSGA-II, SPEA2, PAES, and MOCell
cerned with transforming energy and physical entities from using hyper-volume and attainment surfaces as the compar-
one form into another, as in a hydroelectric dam that trans- ison evaluator with project duration and cost as comparison
forms potential energy into electrical energy or a petroleum attributes.
refinery that uses chemical processes to transform crude oil Luna et al. [7] analyzed and devised their previous
into gasoline. Software engineering processes are concerned work by adding more four different and recently updated
with work activities accomplished by software engineers to algorithms for instance NSGA-II, PAES, SPEA2, with DEPT,
develop, maintain, and operate software, such as require- MOCell, MOABC, MOFA, and GDE3. Scalability was con-
ments, design, construction, testing, configuration manage- sidered as an input attribute along with project cost and
ment, and other software engineering processes. [2] duration. The results prove that once again PAES was shown
Initially, Alba and Chicano [3] solve the problem of great ability to scale and provide the best quality solution
scheduling using the genetic algorithm on around 36 dif- with hyper-volume as an indicator. Attainment surface has
ferent software projects. They considered two objectives i.e. been used to graphically visualize the results of the hyper-
project cost and duration, which are static, attributes. The volume indicator.
results showed that the larger projects with many tasks Xiao et al. [8] performed an experiment where they used
were difficult to solve compared to smaller size projects with 36 publicly available instances and compared them with
fewer tasks and this could be expensive in terms of cost to a multi-objective evolutionary algorithm called NSGA-II
implement the solution. with a multi-objective evolutionary algorithm using Decom-
Alba and Chicano [1] improvised their work with the in- position and Ant Colony optimization (MOEA/D-ACO).
crease in the number of projects scenarios from 36 to 48 and An examination of the obtained Pareto front indicates that
run those multiple times around 100 different independent NSGA-II is better at solving complex and huge structure
runs. The algorithm and objective attributes were the same projects compared to MOEA/D-ACO. However, MOEA/D-
as the previous one. The number of inputs was created using ACO can solve the software project-scheduling problem in
an instance generator, which provides an in-depth analysis a much shorter time.
and showed that the relationship between the attributes i.e. Ge & Xu [9] presented a dynamic model for software
project cost and duration is not simple enough to be solved project staffing where project cost and duration is used to
by a single metaheuristic algorithm. The future direction provide a hybrid approach. The Genetic Algorithm (GA)
could be to apply the other metaheuristic algorithms and and Hill Climbing (HC) based optimizer was implemented
provide a comparison between them, which would help the to assist the project managers in software project scheduling
project managers to solve the industry problems or real- by providing a best resource allocation solution. The de-
world datasets. rived results suggested that the optimizer had the ability to
Metaheuristic are search strategies for finding good an- produce logical schedule and reschedule alternatives.
swers to optimization problems in a reasonable amount The fact is that SPSP has cost of employees besides
of time; however, these solutions are not guaranteed to project duration and project cost which should be mini-
be optimum. There are different types of metaheuristics, mized. The project-scheduling problem referred to as the
being one of the most frequently used to solve the SPSP ”time/cost trade-off problem” in the literature, involves the
the Evolutionary Algorithms (EAs). These algorithms are reduction of certain activity durations by allocating more
based on a population in which each person is represented resources to them. This generally results in higher direct
by a chromosome that holds information about their fea- activity costs and shorter project durations. [10] Alba &
tures. Survival is achieved in this scenario by reproduction, Francisco Chicano [1] argue that SPSP is more realistic than
and descendants are formed through a process known as RCPS, given that it includes the concept of employee with a
crossover or recombination. Mutation is a process through salary and skills, and is capable of performing several tasks
which individuals in a population may experience changes during a regular working day. Moreover, SPSP resources
in some of their features. A fitness function is used to differ from RCPS resource types, which proves that there
assess an individual’s chances of surviving. Fitness is a is a huge difference between software project scheduling
number assigned to each person that indicates the quality of problem (SPSP) and resource-constrained project scheduling
objective function assessments of the problem being solved. (RCPS).
[4]
Luna et al. [5] analyzed the scalability of four multi- 3 M ETHODOLOGY
objective algorithms such as NSGA-II, PAES, DEPT, and The research was conducted to provide answer for the
MOFA. Two indicators hyper-volume and attainment sur- below mentioned research questions.
face were used to evaluate the performance of different
algorithms. It proved that the results of were correct as PAES 3.1 Search Strategy
is the best algorithm concerning the quality of solutions We found the papers through digital libraries such as
and scalability whereas the second best was MOFA for Researchgate, Google Scholar, Science direct, IEEE Xplore.
comparatively smaller instances and NSGA-II for larger These mentioned libraries are mostly preferred for finding
instances. suitable and impactful research paper in any domain such
An experimental study was presented by [6] for software as Science direct is considered leading hub for medical,
project scheduling problems by implementing genetic and technical and scientific research publications, IEEE Xplore
evolutionary strategy algorithms. It compared the resulting mostly deals with publications related to Engineering and
project plans and analyses the performance of four well- Computer Science etc.
3
3.2 Research Questions space of any given problem. It comes under the category
We defined three questions to be answered in this work of Evolutionary algorithms of metaheuristic. Variants of
based on the content that studies in the field of SBSE genetic algorithm are also used in [11], [12] and [13]. The
address and examining key concerns of the SPSP, such as second most used algorithm is NSGA-II. It stands for Non-
algorithms used to solve the problem, attributes considered dominated Sorting Genetic algorithm-II. It was invented in
and validation techniques employed. [14] by Deb et al. proposed that NSGA-II is an improved
RQ1 - Which algorithms have been applied in the ex- version of NSGA. It outperforms the other evolutionary al-
isting literature to solve the software project-scheduling gorithms (EAs) such as Pareto Archived Evolution Strategy
problem? and Strength Pareto Evolutionary algorithm 2. Genetic al-
RQ2 - Which objective attributes were used in the ex- gorithm uses single objective optimization startegy whereas
isting literature to solve the software project-scheduling these variants uses multi-objective optimization approach
problem? which solves SPSP by using different features. NSGA-II uses
RQ3 - What validation techniques were used in the crowding comparison and elitist principle.
existing literature to evaluate the results being generated? Below mentioned table 3 contains the list of research
papers along with the details where they are published
either in conference or journal.
3.3 Inclusion criteria
The research concerning that are:
1) should be in English language.
2) should be journal or conference paper.
3) search-based technique to solve SPSP in the field of
software project management.
4.2 RQ2 - Objective attributes used and experiences. They created multiple experimental sets
Majority authors work to minimize the project duration and to validate their results generated by GA, HC and GA-
project cost simultaneously as shown in the figure below. HC such as 30 tasks with 20 employees, 15 tasks with 10
employees, 8 tasks with 5 employees. Myszkowski in [20],
compared average and standard deviation values for all
methods i.e. differential evolution with greedy algorithm.
Secondly, the common objective attribute which was used
to solve the software project scheduling problem was either
project duration or project cost or both. Around 15 papers
we reviewed were minimizing project duration and cost.
Thirdly, multiple strategies to validate the results received
Fig. 5: Table shows objective attributes used from either comparison or individual application of algo-
rithms was used. Hyper-volume was the most used metric
Others used overtime [13], stability [9], communication to evaluate the performance of algorithms as confirmed by
[9]. In [9], they proposed an approach where GA and HC [18].
based optimizer is used to schedule the project. It generates The future direction could be (i) using real-world data
the schedule before the project and then reschedules when set or dynamic input attributes which could possibly lean
changes such as team members or tasks takes place consid- to realistic solutions (ii) using hybrid approach as used in
ering stability and efficiency of the project as the objective [9] (iii) comparison of more multi-objective optimization
function. It compares in real time with the previously sched- algorithms should be incorporated which will eventually
uled tasks. open up new conclusions.