Analysis of the multi-objective release plan rescheduling problem

Abstract Software project development is a dynamic process by nature, since it is common that events such as changes in the software requirements and in the development team occur during the execution of the original project plan. When such disruptive events occur, the project plan needs to be adjusted, and the activity of adjusting the original plan in order to comply with the date and costs constraints of the project is called project rescheduling. This situation is not exclusive to whole-project plan-driven approaches to software development, as it is also present when software projects are developed following agile methodologies such as Scrum. In Scrum, shorter period project plans, called release plans, are used and when disruptive events occur release plan rescheduling needs to be performed. Plan rescheduling can be modeled as a multi-objective optimization problem, however, there have been no studies that investigate the release plan rescheduling problem (RPRP) and its solution by means of multi-objective optimizers. The study presented in this paper intends to address the lack of studies of the release plan rescheduling problem and covers three fundamental topics. First, a model for the release plan rescheduling problem is proposed, which considers metrics that are particularly important to define a release plan, including story points and velocity. Second, three evolutionary multi-objective algorithms are utilized for solving a number of problem instances and an appropriate in-depth analysis of their solutions is provided. Finally, a careful examination of the solutions with respect to their practicability is performed.

[1]  Christer Carlsson,et al.  Multiple criteria decision making: The case for interdependence , 1995, Comput. Oper. Res..

[2]  Martin W. P. Savelsbergh,et al.  A Branch-and-Price Algorithm for the Generalized Assignment Problem , 1997, Oper. Res..

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

[4]  David E. Goldberg,et al.  Genetic Algorithms in Search Optimization and Machine Learning , 1988 .

[5]  Qingfu Zhang,et al.  The performance of a new version of MOEA/D on CEC09 unconstrained MOP test instances , 2009, 2009 IEEE Congress on Evolutionary Computation.

[6]  K. Pearson VII. Note on regression and inheritance in the case of two parents , 1895, Proceedings of the Royal Society of London.

[7]  Xin Yao,et al.  Dynamic Software Project Scheduling through a Proactive-Rescheduling Method , 2016, IEEE Transactions on Software Engineering.

[8]  F. Wilcoxon Individual Comparisons by Ranking Methods , 1945 .

[9]  Kay Chen Tan,et al.  Online Diversity Assessment in Evolutionary Multiobjective Optimization: A Geometrical Perspective , 2015, IEEE Transactions on Evolutionary Computation.

[10]  M. Agha,et al.  Experiments with Mixtures , 1992 .

[11]  Humberto Cervantes,et al.  A survey on the Software Project Scheduling Problem , 2018, International Journal of Production Economics.

[12]  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.

[13]  Hisao Ishibuchi,et al.  Comparison of Hypervolume, IGD and IGD+ from the Viewpoint of Optimal Distributions of Solutions , 2019, EMO.

[14]  Lothar Thiele,et al.  Multiobjective Optimization Using Evolutionary Algorithms - A Comparative Case Study , 1998, PPSN.

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

[16]  Qingfu Zhang,et al.  Multiobjective Optimization Problems With Complicated Pareto Sets, MOEA/D and NSGA-II , 2009, IEEE Transactions on Evolutionary Computation.

[17]  Jie Zhang,et al.  Consistencies and Contradictions of Performance Metrics in Multiobjective Optimization , 2014, IEEE Transactions on Cybernetics.

[18]  Bin Xu,et al.  Dynamic Staffing and Rescheduling in Software Project Management: A Hybrid Approach , 2016, PloS one.

[19]  Nadia Nedjah,et al.  Evolutionary multi-objective optimisation: a survey , 2015, Int. J. Bio Inspired Comput..

[20]  Qingfu Zhang,et al.  MOEA/D: A Multiobjective Evolutionary Algorithm Based on Decomposition , 2007, IEEE Transactions on Evolutionary Computation.

[21]  John Franks,et al.  A (Terse) Introduction to Lebesgue Integration , 2009 .

[22]  Jerffeson Souza,et al.  Human Resource Allocation in Agile Software Projects Based on Task Similarities , 2016, SSBSE.

[23]  Hisao Ishibuchi,et al.  Modified Distance Calculation in Generational Distance and Inverted Generational Distance , 2015, EMO.

[24]  Nicola Beume,et al.  Pareto-, Aggregation-, and Indicator-Based Methods in Many-Objective Optimization , 2007, EMO.

[25]  Kalyanmoy Deb,et al.  An Investigation of Niche and Species Formation in Genetic Function Optimization , 1989, ICGA.

[26]  Hisao Ishibuchi,et al.  Reference point specification in hypervolume calculation for fair comparison and efficient search , 2017, GECCO.

[27]  Hisao Ishibuchi,et al.  Behavior of Multiobjective Evolutionary Algorithms on Many-Objective Knapsack Problems , 2015, IEEE Transactions on Evolutionary Computation.

[28]  Nicola Beume,et al.  SMS-EMOA: Multiobjective selection based on dominated hypervolume , 2007, Eur. J. Oper. Res..

[29]  Carlos A. Coello Coello,et al.  A Study of the Parallelization of a Coevolutionary Multi-objective Evolutionary Algorithm , 2004, MICAI.

[30]  Hisao Ishibuchi,et al.  Difficulty in Evolutionary Multiobjective Optimization of Discrete Objective Functions with Different Granularities , 2013, EMO.

[31]  Thomas Bäck,et al.  Evolutionary computation: comments on the history and current state , 1997, IEEE Trans. Evol. Comput..

[32]  Leon J. Osterweil,et al.  Dynamic Resource Scheduling in Disruption-Prone Software Development Environments , 2010, FASE.

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

[34]  Hisao Ishibuchi,et al.  Performance of Decomposition-Based Many-Objective Algorithms Strongly Depends on Pareto Front Shapes , 2017, IEEE Transactions on Evolutionary Computation.

[35]  Jun Zhang,et al.  Ant Colony Optimization for Software Project Scheduling and Staffing with an Event-Based Scheduler , 2013, IEEE Transactions on Software Engineering.

[36]  Carlos A. Coello Coello,et al.  Many-Objective Problems: Challenges and Methods , 2015, Handbook of Computational Intelligence.

[37]  Xin Yao,et al.  Diversity Assessment in Many-Objective Optimization , 2017, IEEE Transactions on Cybernetics.

[38]  Kiyoshi Tanaka,et al.  A Review of Features and Limitations of Existing Scalable Multiobjective Test Suites , 2019, IEEE Transactions on Evolutionary Computation.

[39]  Michael Jahr,et al.  A Hybrid Approach to Quantitative Software Project Scheduling within Agile Frameworks , 2014 .

[40]  Natasha Nigar,et al.  Model-based dynamic software project scheduling , 2017, ESEC/SIGSOFT FSE.

[41]  Ying Han,et al.  A Q-learning-based memetic algorithm for multi-objective dynamic software project scheduling , 2018, Inf. Sci..

[42]  Marco Laumanns,et al.  Performance assessment of multiobjective optimizers: an analysis and review , 2003, IEEE Trans. Evol. Comput..

[43]  Tea Tusar,et al.  Visualization of Pareto Front Approximations in Evolutionary Multiobjective Optimization: A Critical Review and the Prosection Method , 2015, IEEE Transactions on Evolutionary Computation.

[44]  A. E. Eiben,et al.  From evolutionary computation to the evolution of things , 2015, Nature.

[45]  Yujia Ge Software Project Rescheduling with Genetic Algorithms , 2009, 2009 International Conference on Artificial Intelligence and Computational Intelligence.