DYNAMIC PROGNOSTIC HEALTH MANAGEMENT FOR RESPONSE TIME BASED REMAINING USEFUL LIFE PREDICTION OF SOFTWARE SYSTEMS
Publication or External Link
Prognostics and Health Management (PHM) is an engineering discipline focused on predicting the future point at which systems or components will no longer perform as intended. The prediction is often articulated as a Remaining Useful Life (RUL). PHM has been widely applied to hardware systems in the electronics and non-electronics domains but has not been explored for software applications. While software does not decay over time, it can degrade over release cycles. Software degradation is a common problem faced by legacy systems. Today, software health management is confined to diagnostic assessments that identify problems. In contrast, prognostic assessment potentially indicates what problems will become detrimental to the operation of the system in the future. Relevant research areas such as software defect prediction, software reliability prediction, predictive maintenance of software, software degradation, and software performance prediction, exist, but all of these represent diagnostic models built upon historical data – none of which can predict an RUL for software.
This dissertation addresses the application of PHM concepts to software systems for fault predictions and RUL estimation. Specifically, this dissertation addresses how PHM can be used to make decisions for software systems such as version update/upgrade, module changes, rejuvenation, maintenance schedules, and abandonment. This dissertation presents a method to prognostically and continuously predict the RUL of a software system based on usage parameters (e.g., the numbers and categories of releases) and performance parameters (e.g., response time). The model developed in this dissertation has been validated by comparing actual data generated using test beds. Statistical validation (regression validation) has also been carried out. A case study is presented based on publicly available data for the Bugzilla application. Controlled test beds for multiple Bugzilla releases are prepared to formulate standard staging environments to populate relevant data. This case study demonstrates that PHM concepts can be applied to software systems, and RUL can be calculated to make decisions on software management.