Fine Grained Software Degradation Models for Optimal Rejuvenation Policies

In this paper, we address the problem of preventive maintenance of operational software systems, an approach recently proposed to counteract the phenomenon of software “aging”. We consider the so-called “software rejuvenation” technique [Software rejuvenation: analysis, module and applications, in: Proceedings of the 25th International Symposium on Fault-Tolerance Computing (FTCS-25), Pasadena, CA, USA, June 1995], which consists in periodically stopping the software system and then restarting it in a “robust” state after a proper maintenance, and we propose a methodology for the quantitative analysis of rejuvenation strategies. The methodology is based on a fine grained model that assumes that it is possible to identify the current degradation level of the system by monitoring an observable quantity, so that the rejuvenation strategy can be tuned on the measured degradation. Based on this methodology, we present two different strategies that allow to decide whether and when to rejuvenate, and we exploit the theory of renewal processes with reward to estimate the steady-state unavailability of the software system, which is used to define an optimality criterion that allows us to evaluate the proper rejuvenation intervals. The methodology and the rejuvenation strategies are demonstrated by applying them to a real-world case study, arising in the area of database maintenance for data archiving, and to a hypothetical setting used to assess the sensitivity of the technique to various degradation processes. © 2001 Elsevier Science B.V. All rights reserved.

[1]  Terry Williams,et al.  Probability and Statistics with Reliability, Queueing and Computer Science Applications , 1983 .

[2]  Kishor S. Trivedi,et al.  Analysis of software rejuvenation using Markov Regenerative Stochastic Petri Net , 1995, Proceedings of Sixth International Symposium on Software Reliability Engineering. ISSRE'95.

[3]  A. W. Marshall,et al.  Shock Models and Wear Processes , 1973 .

[4]  Yennun Huang,et al.  Software rejuvenation: analysis, module and applications , 1995, Twenty-Fifth International Symposium on Fault-Tolerant Computing. Digest of Papers.

[5]  Kishor S. Trivedi,et al.  Analysis of Preventive Maintenance in Transactions Based Software Systems , 1998, IEEE Trans. Computers.

[6]  Kishor S. Trivedi Probability and Statistics with Reliability, Queuing, and Computer Science Applications , 1984 .

[7]  J. Ben Atkinson,et al.  Modeling and Analysis of Stochastic Systems , 1996 .

[8]  E Marshall,et al.  Fatal error: how patriot overlooked a scud. , 1992, Science.

[9]  Sachin Garg,et al.  Towards Performability Modeling of Software Rejuvenation , 1996 .

[10]  V. Kulkarni Modeling and Analysis of Stochastic Systems , 1996 .

[11]  R. F. Brown,et al.  PERFORMANCE EVALUATION , 2019, ISO 22301:2019 and business continuity management – Understand how to plan, implement and enhance a business continuity management system (BCMS).

[12]  Richard E. Barlow,et al.  Statistical Theory of Reliability and Life Testing: Probability Models , 1976 .

[13]  Abraham Silberschatz,et al.  Database Systems Concepts , 1997 .

[14]  Kishor S. Trivedi,et al.  Modeling and Analysis of Load and Time Dependent Software Rejuvenation Policies , 1996 .