{"title":"TTAFPred: Prediction of time to aging failure for software systems based on a two-stream multi-scale features fusion network","authors":"Kai Jia, Xiao Yu, Chen Zhang, Wenzhi Xie, Dongdong Zhao, Jianwen Xiang","doi":"10.1007/s11219-024-09692-2","DOIUrl":null,"url":null,"abstract":"<p>Software aging refers to the performance degradation and failure crash phenomena in long-running systems. As a proactive remedy, software rejuvenation can be scheduled timely to mitigate aging effects. Inescapably, how to accurately predict the time to aging failure (TTAF) of software is a prerequisite for implementing effective rejuvenation. However, the characterization of software aging is relatively complicated, leading to the selection of aging indicators case by case, which means that only fitting the variation trend of a single indicator for prediction models to formulate a rejuvenation schedule may be limited. To fill this gap, this paper proposes a novel framework called TTAFPred, which directly constructs the direct mapping relationships between the software aging process considering multiple system indicators and TTAF. Specifically, this framework includes three parts, i.e., data preprocessing, software degradation feature extraction, and TTAF prediction modules. First, the raw data is processed into the input form required by the network. Secondly, a temporal relationship extraction stream integrating bidirectional gated recurrent unit (BiGRU) with attention mechanism is used to extract temporal features from raw inputs. Synchronously, a spatial relationships extraction stream is adopted to extract the spatial features for enhancing the representation ability of degraded features by using the multi-scale one-dimensional convolutional neural network (1DCNN) with the residual connection. Then, extracted temporal-spatial features from the two streams are further fused. Finally, two fully-connected layers are constructed to estimate the TTAF. The experiments are performed on two mainstream software systems (OpenStack and Android), and four sets of real run-to-failure data for each software system are collected. The effectiveness of the proposed TTAFPred is verified through extensive experiments with its seven competing models, and the prediction performance can be improved by 9.1%, 8.0%, and 8.0%, respectively, in terms of three evaluation metrics, compared to the best baseline model.</p>","PeriodicalId":21827,"journal":{"name":"Software Quality Journal","volume":"28 1","pages":""},"PeriodicalIF":1.7000,"publicationDate":"2024-07-22","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Software Quality Journal","FirstCategoryId":"94","ListUrlMain":"https://doi.org/10.1007/s11219-024-09692-2","RegionNum":3,"RegionCategory":"计算机科学","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"Q3","JCRName":"COMPUTER SCIENCE, SOFTWARE ENGINEERING","Score":null,"Total":0}
引用次数: 0
Abstract
Software aging refers to the performance degradation and failure crash phenomena in long-running systems. As a proactive remedy, software rejuvenation can be scheduled timely to mitigate aging effects. Inescapably, how to accurately predict the time to aging failure (TTAF) of software is a prerequisite for implementing effective rejuvenation. However, the characterization of software aging is relatively complicated, leading to the selection of aging indicators case by case, which means that only fitting the variation trend of a single indicator for prediction models to formulate a rejuvenation schedule may be limited. To fill this gap, this paper proposes a novel framework called TTAFPred, which directly constructs the direct mapping relationships between the software aging process considering multiple system indicators and TTAF. Specifically, this framework includes three parts, i.e., data preprocessing, software degradation feature extraction, and TTAF prediction modules. First, the raw data is processed into the input form required by the network. Secondly, a temporal relationship extraction stream integrating bidirectional gated recurrent unit (BiGRU) with attention mechanism is used to extract temporal features from raw inputs. Synchronously, a spatial relationships extraction stream is adopted to extract the spatial features for enhancing the representation ability of degraded features by using the multi-scale one-dimensional convolutional neural network (1DCNN) with the residual connection. Then, extracted temporal-spatial features from the two streams are further fused. Finally, two fully-connected layers are constructed to estimate the TTAF. The experiments are performed on two mainstream software systems (OpenStack and Android), and four sets of real run-to-failure data for each software system are collected. The effectiveness of the proposed TTAFPred is verified through extensive experiments with its seven competing models, and the prediction performance can be improved by 9.1%, 8.0%, and 8.0%, respectively, in terms of three evaluation metrics, compared to the best baseline model.
期刊介绍:
The aims of the Software Quality Journal are:
(1) To promote awareness of the crucial role of quality management in the effective construction of the software systems developed, used, and/or maintained by organizations in pursuit of their business objectives.
(2) To provide a forum of the exchange of experiences and information on software quality management and the methods, tools and products used to measure and achieve it.
(3) To provide a vehicle for the publication of academic papers related to all aspects of software quality.
The Journal addresses all aspects of software quality from both a practical and an academic viewpoint. It invites contributions from practitioners and academics, as well as national and international policy and standard making bodies, and sets out to be the definitive international reference source for such information.
The Journal will accept research, technique, case study, survey and tutorial submissions that address quality-related issues including, but not limited to: internal and external quality standards, management of quality within organizations, technical aspects of quality, quality aspects for product vendors, software measurement and metrics, software testing and other quality assurance techniques, total quality management and cultural aspects. Other technical issues with regard to software quality, including: data management, formal methods, safety critical applications, and CASE.