Skip to main content
Log in

Software project scheduling under activity duration uncertainty

  • Original Research
  • Published:
Annals of Operations Research Aims and scope Submit manuscript

Abstract

The main resources in software projects are human resources equipped with various skills, which makes software development a typical intelligence-intensive process. Therefore, effective human resource scheduling is indispensable for the success of software projects. The aim of software project scheduling is to assign the right employee to the right activity at the right time. Uncertainty is inevitable in software development, which further complicates the scheduling of projects. We investigate the software project scheduling problem with uncertain activity durations (SPSP-UAD) and aim at obtaining effective scheduling policies for the problem. We present and transform a scenario-based non-linear chance-constrained stochastic programming model into an equivalent linear programming model. To solve the NP-hard SPSP-UAD efficiently, we develop a hybrid meta-heuristic TLBO-GA that combines the teaching–learning-based optimization algorithm (TLBO) and the genetic algorithm (GA). Our TLBO-GA is also equipped with some problem-specific operators, such as population initialization, rows exchange and local search. We use simulation to evaluate the scheduling policies obtained by our algorithms. Extensive computational experiments are conducted to evaluate the performance of our TLBO-GA in comparison to the exact solver CPLEX and four existing meta-heuristic algorithms. The comparative results reveal the effectiveness and efficiency of our TLBO-GA. Our TLBO-GA provides an extensible and adaptive automated scheduling decision support tool for the software project manager in the complex and uncertain software development environment.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Subscribe and save

Springer+ Basic
$34.99 /Month
  • Get 10 units per month
  • Download Article/Chapter or eBook
  • 1 Unit = 1 Article or 1 Chapter
  • Cancel anytime
Subscribe now

Buy Now

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9

Similar content being viewed by others

References

  • Alba, E., & Chicano, J. F. (2007). Software project management with GAs. Information Sciences, 177(11), 2380–2401.

    Google Scholar 

  • Almeida, B. F., Correia, I., & Saldanha-da-Gama, F. (2019). Modeling frameworks for the multi-skill resource-constrained project scheduling problem: A theoretical and empirical comparison. International Transactions in Operational Research, 26(3), 946–967.

    Google Scholar 

  • Artigues, C. (2017). On the strength of time-indexed formulations for the resource-constrained project scheduling problem. Operations Research Letters, 45(2), 154–159.

    Google Scholar 

  • Artigues, C. (2022). Mixed integer linear programming for resource-constrained scheduling. Scheduling Seminar. https://schedulingseminar.com/presentations/SchedulingSeminar_ChristianArtigues.pdf

  • Artigues, C., Koné, O., Lopez, P., & Mongeau, M. (2015). Mixed-integer linear programming formulations. Handbook on project management and scheduling (Vol. 1, pp. 17–41). Springer.

    Google Scholar 

  • Bellenguez, O., & Néron, E. (2004). Lower bounds for the multi-skill project scheduling problem with hierarchical levels of skills. In international conference on practice & theory of automated timetabling. Springer.

  • Bi, H., Lu, F., Duan, S., Huang, M., Zhu, J., & Liu, M. (2020). Two-level principal–agent model for schedule risk control of IT outsourcing project based on genetic algorithm. Engineering Applications of Artificial Intelligence, 91, 03584.

    Google Scholar 

  • De Bruecker, P., Van den Bergh, J., Beliën, J., & Demeulemeester, E. (2015). Workforce planning incorporating skills: State of the art. European Journal of Operational Research, 243, 1–16.

    Google Scholar 

  • Chen, R., Liang, C., Gu, D., & Zhao, H. (2020). A competence-time-quality scheduling model of multi-skilled staff for IT project portfolio. Computers & Industrial Engineering, 139, 106183.

    Google Scholar 

  • Chang, C. K., Christensen, M. J., & Zhang, T. (2001). Genetic algorithms for project management. Annals of Software Engineering, 11(1), 107–139.

    Google Scholar 

  • Chang, C. K., Jiang, H. Y., Di, Y., Zhu, D., & Ge, Y. (2008). Time-line based model for software project scheduling with genetic algorithms. Information and Software Technology, 50(11), 1142–1154.

    Google Scholar 

  • Chen, W. N., & Zhang, J. (2013). Ant colony optimization for software project scheduling and staffing with an event-based scheduler. IEEE Transactions on Software Engineering, 39(1), 1–17.

    Google Scholar 

  • Chicano, F., Cervantes, A., Luna, F., & Recio, G. (2012). A novel multi-objective formulation of the robust software project scheduling problem. In European conference on the applications of evolutionary computation (pp. 497–507). Springer.

  • Correia, I., Lourenço, L. L., & Saldanha-da-Gama, F. (2012). Project scheduling with flexible resources: Formulation and inequalities. Or Spectrum, 34(3), 635–663.

    Google Scholar 

  • Crawford, B., Soto, R., Johnson, F., Monfroy, E., & Paredes, F. (2014). A max–min ant system algorithm to solve the software project scheduling problem. Expert Systems with Applications, 41(15), 6634–6645.

    Google Scholar 

  • Cui, L., Liu, X., Lu, S., & Jia, Z. (2021). A variable neighborhood search approach for the resource-constrained multi-project collaborative scheduling problem. Applied Soft Computing, 107, 107480.

    Google Scholar 

  • Dai, H., Cheng, W., Yang, W., & Wang, Y. (2020). A general variable neighbourhood search for multi-skill resource-constrained project scheduling problem with step-deterioration. International Journal of Industrial and Systems Engineering, 34(2), 145–164.

    Google Scholar 

  • Demeulemeester, E., Vanhoucke, M., & Herroelen, W. (2003). RanGen: A random network generator for activity-on-the-node networks. Journal of Scheduling, 6(1), 17–38.

    Google Scholar 

  • Fabricius, G., & Büttgen, M. (2015). Project managers’ overconfidence: How is risk reflected in anticipated project success? Business Research, 8(2), 239–263.

    Google Scholar 

  • Felberbauer, T., Gutjahr, W. J., & Doerner, K. F. (2019). Stochastic project management: Multiple projects with multi-skilled human resources. Journal of Scheduling, 22(3), 271–288.

    Google Scholar 

  • Goldberg, A. (1997). An efficient implementation of a scaling minimum-cost flow algorithm. Journal of Algorithms, 22(1), 1–29.

    Google Scholar 

  • Goldberg, A. V., & Tarjan, R. E. (1990). Finding minimum-cost circulations by successive approximation. Mathematics of Operations Research, 15, 430–466.

    Google Scholar 

  • Google OR-Tools. (2020). https://developers.google.com/optimization/.

  • Gutjahr, W. J., & Froeschl, K. A. (2013). Project portfolio selection under uncertainty with outsourcing opportunities. Flexible Services & Manufacturing Journal, 25(1–2), 255–281.

    Google Scholar 

  • Hartmann, S. (1998). A competitive genetic algorithm for resource-constrained project scheduling. Naval Research Logistics (NRL), 45(7), 733–750.

    Google Scholar 

  • Hegazy, T., Shabeeb, A. K., Elbeltagi, E., & Cheema, T. (2000). Algorithm for scheduling with multiskilled constrained resources. Journal of Construction Engineering and Management, 126(6), 414–421.

    Google Scholar 

  • Heimerl, C., & Kolisch, R. (2010). Scheduling and staffing multiple projects with a multi-skilled workforce. Or Spectrum, 32(2), 343–368.

    Google Scholar 

  • Kazemipoor, H., Tavakkoli-Moghaddam, R., Shahnazari-Shahrezaei, P., & Azaron, A. (2013). A differential evolution algorithm to solve multi-skilled project portfolio scheduling problems. International Journal of Advanced Manufacturing Technology, 64(5–8), 1099–1111.

    Google Scholar 

  • Khor, C. S., Elkamel, A., Ponnambalam, K., & Douglas, P. L. (2008). Two-stage stochastic programming with fixed recourse via scenario planning with economic and operational risk management for petroleum refinery planning under uncertainty. Chemical Engineering and Processing: Process Intensification, 47(9–10), 1744–1764.

    Google Scholar 

  • Kolisch, R., & Heimerl, C. (2012). An efficient metaheuristic for integrated scheduling and staffing IT projects based on a generalized minimum cost flow network. Naval Research Logistics, 59(2), 111–127.

    Google Scholar 

  • Korytkowski, P., & Malachowski, B. (2019). Competence-based estimation of activity duration in IT projects. European Journal of Operational Research, 275(2), 708–720.

    Google Scholar 

  • Kosztyán, Z. T., Bogdány, E., Szalkai, I., & Kurbucz, M. T. (2022). Impacts of synergies on software project scheduling. Annals of Operations Research, 312(2), 883–908.

    Google Scholar 

  • Kreter, S., Rieck, J., & Zimmermann, J. (2016). Models and solution procedures for the resource-constrained project scheduling problem with general temporal constraints and calendars. European Journal of Operational Research, 251(2), 387–403.

    Google Scholar 

  • Li, C. L., & Hall, N. G. (2019). Work package sizing and project performance. Operations Research, 67(1), 123–142.

    Google Scholar 

  • Li, H., & Womer, K. (2009). Scheduling projects with multi-skilled personnel by a hybrid MILP/CP benders decomposition algorithm. Journal of Scheduling, 12(3), 281–298.

    Google Scholar 

  • Li, H., Zhang, X., Sun, J., & Dong, X. (2023). Dynamic resource levelling in projects under uncertainty. International Journal of Production Research, 61(1), 198–218.

    Article  Google Scholar 

  • Li, H., Zheng, L., & Zhu, H. (2023). Resource leveling in projects with flexible structures. Annals of Operations Research, 321(1–2), 311–342.

    Article  Google Scholar 

  • Luna, F., Gonzalez-Alvarez, D. L., Chicano, F., & Vega-Rodríguez, M. A. (2014). The software project scheduling problem: A scalability analysis of multi-objective metaheuristics. Applied Soft Computing, 15, 136–148.

    Google Scholar 

  • Maenhout, B., & Vanhoucke, M. (2017). A resource type analysis of the integrated project scheduling and personnel staffing problem. Annals of Operations Research, 252(2), 407–433.

    Google Scholar 

  • MarketsandMarkets. (2019). Top Market Reports: Software-Defined Anything (SDx) Market by Type (SDN, SD-WAN, and SDDC), End User (Service Providers and Enterprises (BFSI, Retail, Healthcare, Education, Government, and Manufacturing)), and Region - Global Forecast to 2024.

  • Minku, L., Sudholt, D., & Yao, X. (2014). Improved evolutionary algorithm design for the project scheduling problem based on runtime analysis. IEEE Transactions on Software Engineering, 40(1), 83–102.

    Google Scholar 

  • Mühlenbein, H. (1997). The equation for response to selection and its use for prediction. Evolutionary Computation, 5(3), 303–346. https://doi.org/10.1162/evco.1997.5.3.303

    Article  Google Scholar 

  • Myszkowski, P. B., Skowroński, M. E., & Podlodowski, Ł. (2013). Novel heuristic solutions for multi–skill resource constrained project scheduling problem. In 8th International symposium advances in artificial intelligence and applications (AAIA'13).

  • Myszkowski, P. B., Skowroński, M. E., Olech, ŁP., & Oślizło, K. (2015). Hybrid ant colony optimization in solving multi-skill resource-constrained project scheduling problem. Soft Computing, 19(12), 3599–3619.

    Google Scholar 

  • Nesterov, Y., & Vial, J.-P. (2008). Confidence level solutions for stochastic programming. Automatica, 44(6), 1559–1568.

    Google Scholar 

  • Niknam, T., Azizipanah-Abarghooee, R., & Narimani, M. R. (2012). An efficient scenario-based stochastic programming framework for multi-objective optimal micro-grid operation. Applied Energy, 99, 455–470.

    Google Scholar 

  • Özdamar, L., & Alanya, E. (2001). Uncertainty modelling in software development projects (with case study). Annals of Operations Research, 102(1), 157–178.

    Google Scholar 

  • Pawiński, G., & Sapiecha, K. (2016). Speeding up global optimization with the help of intelligent supervisors. Applied Intelligence, 45, 777–792.

    Google Scholar 

  • PMI (Project Management Institute). (2016). Pulse of the profession 2016: The high cost of low performance.

  • PMI (Project Management Institute). (2017). A guide to the project management body of knowledge. Project Management Institute.

  • Persson, J., & Mathiassen, L. (2009). A process for managing risks in distributed teams. IEEE Software, 27(1), 20–29.

    Google Scholar 

  • Rao, R. V., Savsani, V. J., & Vakharia, D. P. (2011). Teaching–learning-based optimization: A novel method for constrained mechanical design optimization problems. Computer Aided Design, 43(3), 303–315.

    Google Scholar 

  • Shen, X., Minku, L. L., Bahsoon, R., & Yao, X. (2016). Dynamic software project scheduling through a proactive rescheduling method. IEEE Transactions on Software Engineering, 42(7), 658–686.

    Google Scholar 

  • Snauwaert, J., & Vanhoucke, M. (2021). A new algorithm for resource-constrained project scheduling with breadth and depth of skills. European Journal of Operational Research, 292(1), 43–59.

    Google Scholar 

  • Snauwaert, J., & Vanhoucke, M. (2022). A classification and new benchmark instances for the multi-skilled resource-constrained project scheduling problem. European Journal of Operational Research. https://doi.org/10.1016/j.ejor.2022.05.049

    Article  Google Scholar 

  • Standish Group. (2018). CHAOS Reports: https://www.standishgroup.com/.

  • Stylianou, C., & Andreou, A. S. (2016). Investigating the impact of developer productivity, task interdependence type and communication overhead in a multi-objective optimization approach for software project planning. Advances in Engineering Software, 98, 79–96.

    Google Scholar 

  • Tian, Y., Xiong, T., Liu, Z., Mei, Y., & Wan, L. (2022). Multi-Objective multi-skill resource-constrained project scheduling problem with skill switches: Model and evolutionary approaches. Computers & Industrial Engineering, 167, 107897.

    Google Scholar 

  • Vega-Velázquez, M. Á., García-Nájera, A., & Cervantes, H. (2018). A survey on the software project scheduling problem. International Journal of Production Economics, 202, 145–161.

    Google Scholar 

  • Wang, L., & Zheng, X. (2018). A knowledge-guided multi-objective fruit fly optimization algorithm for the multi-skill resource constrained project scheduling problem. Swarm and Evolutionary Computation, 38, 54–63.

    Google Scholar 

  • Wang, X., & Ning, Y. (2018). Uncertain chance-constrained programming model for project scheduling problem. Journal of the Operational Research Society, 69(3), 384–391.

    Google Scholar 

  • Woolson, R. F. (2007). Wilcoxon signed‐rank test. Wiley encyclopedia of clinical trials (pp. 1–3).

  • Wu, X., Consoli, P., Minku, L., Ochoa, G., & Yao, X. (2016). An evolutionary hyper-heuristic for the software project scheduling problem. In International conference on parallel problem solving from nature (pp. 37–47). Springer.

  • Xiao, J., Ao, X. T., & Tang, Y. (2013). Solving software project scheduling problems with ant colony optimization. Computers & Operations Research, 40(1), 33–46.

    Google Scholar 

  • Xiao, J., Gao, M. L., & Huang, M. M. (2015). Empirical study of multi-objective ant colony optimization to software project scheduling problems. In Proceedings of the 2015 annual conference on genetic and evolutionary computation (pp. 759–766).

  • Xiao, J., Osterweil, L. J., Wang, Q., & Li, M. (2010). Dynamic resource scheduling in disruption-prone software development environments. In International conference on fundamental approaches to software engineering (pp. 107–122). Springer.

  • Yannibelli, V., & Amandi, A. (2011). A knowledge-based evolutionary assistant to software development project scheduling. Expert Systems with Applications, 38(7), 8403–8413.

    Google Scholar 

  • Zhen, L., Zhuge, D., & Zhu, S. (2016). Production stage allocation problem in large corporations. Omega, 73, 60–78.

    Google Scholar 

  • Zhu, L., Lin, J., & Wang, Z. J. (2019). A discrete oppositional multi-verse optimization algorithm for multi-skill resource constrained project scheduling problem. Applied Soft Computing, 85, 105805.

    Google Scholar 

Download references

Acknowledgements

The authors thank the editor and two anonymous referees for their helpful and constructive comments that significantly enhance the quality of the paper.

Funding

This study was funded by the National Natural Science Foundation of China (Grant Number 71602106), the Natural Science Foundation of Shandong Province (Grant Number ZR2018BG003) and the Key Laboratory of Medical Electronics and Digital Health of Zhejiang Province. Outstanding youth innovation project for higher education institutions in Shandong Province (Grant Number 2022RW077).

Author information

Authors and Affiliations

Authors

Corresponding authors

Correspondence to Linwen Zheng or Fang Xie.

Ethics declarations

Conflict of interest

Hongbo Li declares that he has no conflict of interest. Hanyu Zhu declares that she has no conflict of interest. Linwen Zheng declares that she has no conflict of interest. Fang Xie declares that she has no conflict of interest.

Ethical approval

This article does not contain any studies with human participants or animals performed by any of the authors.

Additional information

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Rights and permissions

Springer Nature or its licensor (e.g. a society or other partner) holds exclusive rights to this article under a publishing agreement with the author(s) or other rightsholder(s); author self-archiving of the accepted manuscript version of this article is solely governed by the terms of such publishing agreement and applicable law.

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Li, H., Zhu, H., Zheng, L. et al. Software project scheduling under activity duration uncertainty. Ann Oper Res 338, 477–512 (2024). https://doi.org/10.1007/s10479-023-05343-0

Download citation

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10479-023-05343-0

Keywords