Analysis of inspection-based preventive maintenance in operational software systems
Recently, the phenomenon of "software aging", one in which the state of a software system gradually degrades with time and eventually leads to performance degradation or crash/hang failure, has been reported. Preventive maintenance of operational software systems is used specifically to counteract this phenomenon. However, preventive maintenance incurs an overhead in terms of downtime and cost and this must be traded off with the cost of failures to obtain maximum benefits. In this paper, we present an analytical model of a software system employing inspection-based preventive maintenance, through a Markov Regenerative Process (MRGP) with a subordinated semi-Markov reward process. Furthermore, we consider preemptive-resume type transitions. The model is solved for steady state as well as transient conditions and expressions for expected downtime and expected cost are derived. Numerical examples are presented to illustrate the applicability of the models. With the help of these models, optimal strategies for preventive maintenance techniques such as "software rejuvenation" could be formulated.