Using the Methods of Statistical Data Analysis to Improve the Trustworthiness of Software Reliability Modeling
Yi-Fan Hou,Chin-Yu Huang,Chih-Chiang Fang
DOI: https://doi.org/10.1109/access.2022.3154103
IF: 3.9
2022-01-01
IEEE Access
Abstract:In the past, several software reliability growth models (SRGMs) have been proposed to predict various aspects of software reliability, and non-homogeneous Poisson process (NHPP)-based SRGMs have drawn much attention. However, it should be noted that, in practice, blindly applying SRGMs might not lead to meaningful results when the characteristics of the data (i.e., data type) do not fit the characteristics of selected SRGMs. Moreover, there currently exist no guidelines for project managers or developers to follow in selecting the most appropriate SRGMs for a particular failure dataset. On the other hand, waiting to collect a substantial amount of failure data before fitting SRGMs might be unfeasible in many cases. In this paper, we propose useing statistical data analysis methods to investigate the characteristics of software failure data and to improve the accuracy of software reliability growth modeling. Here, SRGMs will be broadly partitioned into two categories: “NHPP models” and “non-NHPP models.” Similarly, software failure data can be classified into two categories: “NHPP-type data” and “non-NHPP-type data.” We propose a two-phase method to verify the hypothesis that failure data follow an NHPP. Through the proposed two-phase and Laplace trend tests, we will be able to infer whether a dataset is the NHPP type and whether it is properly used by NHPP-based SRGMs. In this case, the final choice for the most suitable NHPP model for the software failure process would be made, and the software reliability prediction result can be deemed trustworthy and helpful after correctly judging whether the dataset can be classified or not as being NHPP based. Experiments based on 25 real software failure data were presented and analyzed. Using our proposed method, project managers and/or developers will be able to analyze and use collected failure data to help improve both planning accuracy and software quality.
computer science, information systems,telecommunications,engineering, electrical & electronic