Dynamic Resource Scheduling in Disruption-Prone Software Development Environments

  • Junchao Xiao
  • Leon J. Osterweil
  • Qing Wang
  • Mingshu Li
Part of the Lecture Notes in Computer Science book series (LNCS, volume 6013)


Good resource scheduling plays a pivotal role in successful software development projects. However, effective resource scheduling is complicated by such disruptions as requirements changes, urgent bug fixing, incorrect or unexpected process execution, and staff turnover. Such disruptions demand immediate attention, but can also impact the stability of other ongoing projects. Dynamic resource rescheduling can help suggest strategies for addressing such potentially disruptive events by suggesting how to balance the need for rapid response and the need for organizational stability. This paper proposes a multi-objective rescheduling method to address the need for software project resource management that is able to suggest strategies for addressing such disruptions. A genetic algorithm is used to support rescheduling computations. Examples used to evaluate this approach suggest that it can support more effective resource management in disruption-prone software development environments.


Disruption rescheduling multi-objective genetic algorithm 


  1. 1.
    Acuña, S.T., Juristo, N., Moreno, A.M.: Emphasizing Human Capabilities in Software Development. IEEE Software 23(2), 94–101 (2006)CrossRefGoogle Scholar
  2. 2.
    Adibi, M.A., Zandieh, M., Amiri, M.: Multi-objective scheduling of dynamic job shop using variable neighborhood search. Expert Systems with Applications 37(1), 282–287 (2009)CrossRefGoogle Scholar
  3. 3.
    Alba, E., Chicano, J.F.: Software Project Management with GAs. Journal of Information Sciences 177(11), 2380–2401 (2007)CrossRefGoogle Scholar
  4. 4.
    Antoniol, G., Penta, M.D., Harman, M.: A Robust Search–Based Approach to Project Management in the Presence of Abandonment, Rework, Error and Uncertainty. In: Proceedings of the 10th International Symposium on Software Metrics, pp. 172–183 (2004)Google Scholar
  5. 5.
    Antoniol, G., Penta, M.D., Harman, M.: Search–Based Techniques Applied to Optimi-zation of Project Planning for a Massive Maintenance Project. In: Proceedings of the 21st International Conference on Software Maintenance, pp. 240–249 (2005)Google Scholar
  6. 6.
    Barreto, A., Barros, M.d.O., Werner, C.M.L.: Staffing a software project: A con-straint satisfaction and optimization-based approach. Computer & Operations Research 35(10), 3073–3089 (2008)zbMATHCrossRefGoogle Scholar
  7. 7.
    Boehm, B.: Software risk management: principles and practices. IEEE Software 8(1), 32–41 (1991)CrossRefGoogle Scholar
  8. 8.
    Cass, A.G., Sutton Jr., S.M., Osterweil, L.J.: Formalizing Rework in Software Processes. In: Oquendo, F. (ed.) EWSPT 2003. LNCS, vol. 2786, pp. 16–31. Springer, Heidelberg (2003)Google Scholar
  9. 9.
    Chang, C.K., Jiang, H.-y., Di, Y., Zhu, D., Ge, Y.: Time-line based model for software project scheduling with genetic algorithms. Information and Software Technology 50(11), 1142–1154 (2008)CrossRefGoogle Scholar
  10. 10.
    Cowling, P., Johansson, M.: Using real time information for effective dynamic scheduling. European Journal of Operational Research 139(2), 230–244 (2002)zbMATHCrossRefMathSciNetGoogle Scholar
  11. 11.
    Duggan, J., Byrne, J., Lyons, G.J.: Task Allocation Optimizer for Software Construction. IEEE Software 21(3), 76–82 (2004)CrossRefGoogle Scholar
  12. 12.
    Ebert, C., Man, J.D.: Requirements Uncertainty: Influencing Factors and Concrete Improvements. In: Proceedings of the 27th International Conference on Software Engineering, pp. 553–560 (2005)Google Scholar
  13. 13.
    Erdogmus, H., Favaro, J., Halling, M.: Valuation of Software Initiatives Under Uncertainty: Concepts, Issues, and Techniques. In: Biffl, S., Aurum, A., Boehm, B., Erdogmus, H., Grünbacher, P. (eds.) Value-Based Software Engineering, pp. 39–66 (2005)Google Scholar
  14. 14.
    Holland, J.H.: Adaptation in natural and artificial systems. MIT Press, Cambridge (1992)Google Scholar
  15. 15.
    Li, M., Yang, Q., Zhai, J., Yang, G.: On Mobility of Software Processes. In: Wang, Q., Pfahl, D., Raffo, D.M., Wernick, P. (eds.) SPW 2006 and ProSim 2006. LNCS, vol. 3966, pp. 105–114. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  16. 16.
    Li, Z., Ruhe, G.: Uncertainty Handling in Tabular-Based Requirements Using Rough Sets. In: Ślęzak, D., Yao, J., Peters, J.F., Ziarko, W.P., Hu, X. (eds.) RSFDGrC 2005. LNCS (LNAI), vol. 3642, pp. 678–687. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  17. 17.
    Liu, D., Wang, Q., Xiao, J., Li, J., Li, H.: RVSim: A Simulation Approach to Predict the Impact of Requirements Volatility on Software Project Plans. In: Wang, Q., Pfahl, D., Raffo, D.M. (eds.) ICSP 2008. LNCS, vol. 5007, pp. 307–319. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  18. 18.
    Liu, X., Yang, Y., Chen, J., Wang, Q., Li, M.: Achieving On-Time Delivery: A Two-Stage Probabilistic Scheduling Strategy for Software Projects. In: Wang, Q., Garousi, V., Madachy, R., Pfahl, D. (eds.) ICSP 2009. LNCS, vol. 5543, pp. 317–329. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  19. 19.
    de Melo, A.C.V., de J. Sanchez, A.: Bayesian Networks in Software Maintenance Management. In: Vojtáš, P., Bieliková, M., Charron-Bost, B., Sýkora, O. (eds.) SOFSEM 2005. LNCS, vol. 3381, pp. 394–398. Springer, Heidelberg (2005)Google Scholar
  20. 20.
    Moratori, P., Petrovic, S., Vazquez, A.: Match-Up Strategies for Job Shop Rescheduling. In: Nguyen, N.T., Borzemski, L., Grzech, A., Ali, M. (eds.) IEA/AIE 2008. LNCS (LNAI), vol. 5027, pp. 119–128. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  21. 21.
    Ozdamar, L., Alanya, E.: Uncertainty Modelling in Software Development Projects (With Case Study). Annals of Operations Research 102, 157–178 (2001)CrossRefMathSciNetGoogle Scholar
  22. 22.
    Pfahl, D., Lebsanft, K.: Using Simulation to Analyze the Impact of Software Requirements Volatility on Project Performance. Information and Software Technology 42(14), 1001–1008 (2000)CrossRefGoogle Scholar
  23. 23.
    Pfeiffer, A.S., Kadar, B., Monostori, L.S.: Stability-oriented evaluation of rescheduling strategies, by using simulation. Computers in Industry 58(7), 630–643 (2007)CrossRefGoogle Scholar
  24. 24.
    Rangsaritratsamee, R., Ferrell Jr., W.G., Kurz, M.B.: Dynamic rescheduling that simulta-neously considers efficiency and stability. Computers & Industrial Engineering 46(1), 1–15 (2004)CrossRefGoogle Scholar
  25. 25.
    Wang, Q., Xiao, J., Li, M., Nisar, M.W., Yuan, R., Zhang, L.: A Process-Agent Con-struction Method for Software Process Modeling in SoftPM. In: SPW/ProSim 2006, Shang-hai China, pp. 204–213 (2006)Google Scholar
  26. 26.
    Wise, A.: Little-JIL 1.5 Language Report Department of Computer Science, University of Massachusetts, Amherst UM-CS-2006-51 (2006)Google Scholar
  27. 27.
    Xiao, J., Osterweil, L.J., Wang, Q., Li, M.: Dynamic Scheduling in Systems with Complex Resource Allocation Requirements. Department of Computer Science at the Uni-versity of Massachusetts Amherst. Technical report: UM-CS-2009-049 (2009)Google Scholar
  28. 28.
    Xiao, J., Wang, Q., Li, M., Yang, Q., Xie, L., Liu, D.: Value-based Multiple Software Projects Scheduling with Genetic Algorithm. In: Wang, Q., Garousi, V., Madachy, R., Pfahl, D. (eds.) ICSP 2009. LNCS, vol. 5543, pp. 50–62. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  29. 29.
    Xiao, J., Wang, Q., Li, M., Yang, Y., Zhang, F., Xie, L.: A Constraint-Driven Human Resource Scheduling Method in Software Development and Maintenance Process. In: Proceedings of 24th International Conference on Software Maintenance, pp. 17–26 (2008)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2010

Authors and Affiliations

  • Junchao Xiao
    • 1
    • 2
  • Leon J. Osterweil
    • 2
  • Qing Wang
    • 1
  • Mingshu Li
    • 1
    • 3
  1. 1.Laboratory for Internet Software Technologies, Institute of SoftwareChinese Academy of SciencesBeijingChina
  2. 2.Department of Computer ScienceUniversity of MassachusettsAmherstUSA
  3. 3.Key Laboratory for Computer Science, Institute of SoftwareChinese Academy of SciencesBeijingChina

Personalised recommendations