Skip to Main Content
Scheduling is a notoriously difficult task for managers of software projects. The time needed to complete some development activity in a software project is hard to estimate; feedback between activities causes rework and delays. The author presents a dynamic software process model and its formalization as a discrete-time Markov decision process. The model focuses on capturing how the feedback between development activities affects the cost and schedule of a software project. The model explicitly represents scheduling actions, component coupling, and rework caused by design changes. We use the MDP model to compute optimal strategies for several sample projects and analyze the resulting optimal strategies.