Robust solutions for the software project scheduling problem: a preliminary analysis

The software project scheduling problem relates to the decision of who does what during a software project lifetime. This problem has a capital importance for software companies. In the software project scheduling problem, the total budget and human resources involved in software development must be optimally managed in order to end up with a successful project. Two are the main objectives identified in this problem: minimising the project cost and minimising its makespan. However, some of the parameters of the problem are subject to unforeseen changes. In particular, the cost of the tasks of a software project is one of the most varying parameters, since it is related to estimations of the productivity of employees. In this paper, we modify the formulation of the original bi-objective problem to add two new objectives that account for the robustness of the solutions to changes in the problem parameters. We address 36 instances of this optimisation problem using four state-of-the-art metaheuristic algorithms and compare the solutions with those of the original non-robust bi-objective problem.

[1]  David Corne,et al.  The Pareto archived evolution strategy: a new baseline algorithm for Pareto multiobjective optimisation , 1999, Proceedings of the 1999 Congress on Evolutionary Computation-CEC99 (Cat. No. 99TH8406).

[2]  David W. Corne,et al.  Approximating the Nondominated Front Using the Pareto Archived Evolution Strategy , 2000, Evolutionary Computation.

[3]  Magne Jørgensen,et al.  Forecasting of software development work effort: Evidence on expert judgement and formal models , 2007 .

[4]  Gary B. Lamont,et al.  Evolutionary Algorithms for Solving Multi-Objective Problems , 2002, Genetic Algorithms and Evolutionary Computation.

[5]  Francisco Luna,et al.  A Novel Multiobjective Formulation of the Robust Software Project Scheduling Problem , 2012, EvoApplications.

[6]  Kalyanmoy Deb,et al.  A fast and elitist multiobjective genetic algorithm: NSGA-II , 2002, IEEE Trans. Evol. Comput..

[7]  Jürgen Branke,et al.  Efficient search for robust solutions by means of evolutionary algorithms and fitness approximation , 2006, IEEE Transactions on Evolutionary Computation.

[8]  Enrique Alba,et al.  Cellular genetic algorithms , 2014, GECCO.

[9]  R. K. Ursem Multi-objective Optimization using Evolutionary Algorithms , 2009 .

[10]  Giuliano Antoniol,et al.  Software project planning for robustness and completion time in the presence of uncertainty using multi objective search based software engineering , 2009, GECCO.

[11]  Zbigniew Michalewicz,et al.  Handbook of Evolutionary Computation , 1997 .

[12]  Marco Laumanns,et al.  SPEA2: Improving the strength pareto evolutionary algorithm , 2001 .

[13]  Lothar Thiele,et al.  Multiobjective evolutionary algorithms: a comparative case study and the strength Pareto approach , 1999, IEEE Trans. Evol. Comput..

[14]  Giuliano Antoniol,et al.  The use of search‐based optimization techniques to schedule and staff software projects: an approach and an empirical study , 2011, Softw. Pract. Exp..

[15]  Bernhard Sendhoff,et al.  Robust Optimization - A Comprehensive Survey , 2007 .

[16]  Joshua D. Knowles A summary-attainment-surface plotting method for visualizing the performance of stochastic multiobjective optimizers , 2005, 5th International Conference on Intelligent Systems Design and Applications (ISDA'05).

[17]  Jürgen Branke,et al.  Evolutionary Optimization in Dynamic Environments , 2001, Genetic Algorithms and Evolutionary Computation.

[18]  Enrique Alba,et al.  The jMetal framework for multi-objective optimization: Design and architecture , 2010, IEEE Congress on Evolutionary Computation.

[19]  David J. Sheskin,et al.  Handbook of Parametric and Nonparametric Statistical Procedures , 1997 .

[20]  Kjetil Molkken,et al.  A Review of Surveys on Software Effort Estimation , 2003 .

[21]  Antonio J. Nebro,et al.  A Cellular Genetic Algorithm for Multiobjective Optimization , 2006 .

[22]  Gary B. Lamont,et al.  Evolutionary Algorithms for Solving Multi-Objective Problems (Genetic and Evolutionary Computation) , 2006 .

[23]  Tadahiko Murata,et al.  Cellular Genetic Algorithm for Multi-Objective Optimization , 2001 .

[24]  Giuliano Antoniol,et al.  A robust search-based approach to project management in the presence of abandonment, rework, error and uncertainty , 2004 .

[25]  Enrique Alba,et al.  Software project management with GAs , 2007, Inf. Sci..

[26]  Enrique Alba,et al.  Using multi-objective metaheuristics to solve the software project scheduling problem , 2011, GECCO '11.

[27]  Enrique Alba,et al.  Design Issues in a Multiobjective Cellular Genetic Algorithm , 2007, EMO.

[28]  Tzvi Raz,et al.  Factors affecting duration and effort estimation errors in software development projects , 2007, Inf. Softw. Technol..