Optimal Policies for the Sizing and Timing of Software Maintenance Projects
Abstract: We present a model to determine the optimal point for maintaining a software application. We also address the question: given that a maintenance project has been initiated, should maintenance effort continue till the project is completed? Most previous literature has implicitly assumed that it is optimal to complete a maintenance project once it has been initiated. We analyze two policies: a work-based policy and a time-based policy. In the work-based policy, a fixed amount of work needs to be completed, and the time taken to accomplish the work is random. In the time-based policy, a fixed amount of time is allocated to maintenance, but a random amount of work is completed. We examine similarities and differences between the above two policies and provide insights into the management of software maintenance projects. A key insight of this study is that under a variety of situations, partial maintenance is sub-optimal.