Decision Support for Project Rescheduling to Reduce Software Development Delays based on Ant Colony Optimization

Delays often occur during some activities in software development projects. Without handling of project delays effectively, many software development projects fail to meet their deadlines. If extra employees with same or similar skills and domain knowledge can be rescheduled for the remaining activities of the delayed projects, it can be possible to reduce or even eliminate existing delays in concurrent software development projects of similar nature. However, it is evident that employee rescheduling may result in delaying other activities, which may lead to the problem of delay propagation. Hence, it is important to investigate how to reduce or even eliminate the delay in one project without impacting other projects. By nature this is an NP-hard problem. Therefore, we propose a novel generic rescheduling strategy based on adaptive ant colony optimization algorithm to provide decision support for software project managers to select appropriate employees to deal with project delays. We have carried out a set of comprehensive experiments to evaluate the performance of the proposed strategy. In addition, three real world software project instances are also utilized to evaluate our strategy. The results show that our strategy is effective, efficient and able to outperform its representative counterparts significantly.

[1]  Vladan Devedzic,et al.  Software Project Management , 2001 .

[2]  Wei Zhang,et al.  Ant colony algorithm based scheduling for handling software project delay , 2015, ICSSP.

[3]  Kenneth Alan De Jong,et al.  An analysis of the behavior of a class of genetic adaptive systems. , 1975 .

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

[5]  Manuel López-Ibáñez,et al.  Ant colony optimization , 2010, GECCO '10.

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

[7]  Jing Xiao,et al.  Empirical Study of Multi-objective Ant Colony Optimization to Software Project Scheduling Problems , 2015, GECCO.

[8]  Gündüz Ulusoy,et al.  A survey on the resource-constrained project scheduling problem , 1995 .

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

[10]  Wei Zhang,et al.  Let Smart Ants Help You Reduce the Delay Penalty of Multiple Software Projects , 2017, 2017 IEEE/ACM 39th International Conference on Software Engineering Companion (ICSE-C).

[11]  Rainer Kolisch,et al.  PSPLIB - A project scheduling problem library: OR Software - ORSEP Operations Research Software Exchange Program , 1997 .

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

[13]  Avraham Shtub,et al.  Project Management: Processes, Methodologies, and Economics , 1994 .

[14]  Giuliano Antoniol,et al.  A robust search-based approach to project management in the presence of abandonment, rework, error and uncertainty , 2004, 10th International Symposium on Software Metrics, 2004. Proceedings..

[15]  Bruce McMillin,et al.  Software engineering: What is it? , 2018, 2018 IEEE Aerospace Conference.

[16]  Odile Bellenguez-Morineau,et al.  Methods to solve multi-skill project scheduling problem , 2008, 4OR.

[17]  Yong Tang,et al.  Solving software project scheduling problems with ant colony optimization , 2013, Comput. Oper. Res..

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

[19]  Fred P. Brooks,et al.  The Mythical Man-Month , 1975, Reliable Software.

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

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

[22]  Rafael Bello,et al.  Project Control and Computational Intelligence: Trends and Challenges , 2017, Int. J. Comput. Intell. Syst..