Ant colony algorithm based scheduling for handling software project delay

Delay on a critical path may cause the failure in meeting the software project deadline. By adding extra employees with similar skills for help, the delay is expected to be eliminated or reduced. However, the originally scheduled activities may be suspended due to reallocation of employees, which may lead to the problem of delay propagation. So how to minimize and even eliminate the delay without delay propagation is worth investigation. In this paper, we first use a simple scenario to demonstrate the problem of employee scheduling which shows that in the scheduling process, one activity can have many ways for selecting employees from another project. In fact, the searching path in a multi-branch tree and its complete traversal is a NP hard problem. Furthermore when the scale of the problem becomes large, it is impractical to generate a search tree for implementation. Therefore, we propose an ant colony algorithm to address such a problem. Both case studies and initial simulation results demonstrate that our proposed algorithm can obtain feasible solutions under different circumstances.

[1]  Frederick P. Brooks,et al.  The Mythical Man-Month: Essays on Softw , 1978 .

[2]  Jr. Frederick P. Brooks,et al.  The mythical man-month (anniversary ed.) , 1995 .

[3]  P. Kidwell,et al.  The mythical man-month: Essays on software engineering , 1996, IEEE Annals of the History of Computing.

[4]  Ronald L. Rivest,et al.  Introduction to Algorithms, Second Edition , 2001 .

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

[6]  Jianmin Wang,et al.  A semi-automatic approach for workflow staff assignment , 2008, Comput. Ind..

[7]  Su Zhi-xiong Free float theorem and algorithm of seeking the k-th order critical path , 2009 .

[8]  Xiao Liu,et al.  Achieving On-Time Delivery: A Two-Stage Probabilistic Scheduling Strategy for Software Projects , 2009, ICSP.

[9]  Dapeng Liu,et al.  Value-Based Multiple Software Projects Scheduling with Genetic Algorithm , 2009, ICSP.

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

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

[12]  Xin-She Yang,et al.  Introduction to Algorithms , 2021, Nature-Inspired Optimization Algorithms.

[13]  Dirk Sudholt,et al.  Improved Evolutionary Algorithm Design for the Project Scheduling Problem Based on Runtime Analysis , 2014, IEEE Transactions on Software Engineering.