• DocumentCode
    2177409
  • Title

    Computing optimal scheduling policies for software projects

  • Author

    Padberg, Frank

  • Author_Institution
    Fakultat fur Informatik, Karlsruhe Univ., Germany
  • fYear
    2004
  • fDate
    30 Nov.-3 Dec. 2004
  • Firstpage
    300
  • Lastpage
    308
  • Abstract
    The time needed to complete a software development project is hard to estimate in practice. In addition to the uncertainty about the duration of the individual development steps, software projects often suffer from unexpected rework and delays. As a result, project scheduling remains a difficult task for the managers of software projects. In this paper, we compute optimal scheduling strategies for a set of sample software projects. The computations are based on a stochastic Markov decision model for software projects which focuses on capturing the feedback between concurrent development activities. The optimal strategies are computed using a variant of the value iteration algorithm from stochastic dynamic programming. Since the underlying process model is stochastic, the strategies are stochastically optimal, that is, they minimize the expected project duration. The ultimate goal of this research is to develop guidelines for managers how to schedule their software projects under uncertainty in the best possible way. The sample projects are similar, but differ in certain characteristics of the project or product, such as the strength of the coupling between the components or the degree of specialization of the teams on the tasks. By using a set of related projects, we can study how the project characteristics influence the optimal scheduling decisions in a project. In addition to computing the optimal scheduling policies for the sample projects, we use extensive simulations to compare the performance of the optimal policy against the so-called list policies for each given setting. List policies are a simple, but commonly used class of scheduling policies. For our sample projects, we find that the best list policy in general is not optimal. The performance gap is the larger the higher the degree of specialization of the teams is. On the other hand, the stronger the coupling between the components, the smaller is the improvement which the optimal policy achieves over the best list policy.
  • Keywords
    Markov processes; dynamic programming; project management; scheduling; software development management; optimal scheduling policy; project scheduling; software development project; stochastic Markov decision model; stochastic dynamic programming; value iteration algorithm; Concurrent computing; Delay; Feedback; Heuristic algorithms; Optimal scheduling; Processor scheduling; Programming; Project management; Stochastic processes; Uncertainty;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Software Engineering Conference, 2004. 11th Asia-Pacific
  • ISSN
    1530-1362
  • Print_ISBN
    0-7695-2245-9
  • Type

    conf

  • DOI
    10.1109/APSEC.2004.39
  • Filename
    1371932