1 Introduction

Software product usage has become more and more every day and plays an essential role in safety–critical systems. Due to this, there is a huge market for high-end software products. If by any chance the safety critical systems have a failure, it may result in the unprecedented destruction of life and property. So, reliability is considered to be a major feature of software quality (Lyu 1996). The anticipation that software will be failure-free for a specific time period in operating surroundings is called software reliability. It is very important to understand that to have an effective method for developing reliable software as well as objectively estimating it (Wood 1996).

Many SRGMs are present in the literature to evaluate the reliability of software (Goel & Okumoto 1979; Ohba 1984b; Pham 2000; Yamada et al. 1983; Yamada et al. 1992a, b). There are two types of models namely perfect and imperfect debugging. One can assume that whenever a failure happens, the faults pertaining to that failure are instantly disclosed under perfect debugging. And, meanwhile, no fresh faults are generated. The traditional models under perfect debugging SRGM were the G–O model (Goel & Okumoto 1979), the S-shaped (Yamada et al. 1983, 1984), and the inflected S-shaped model (Ohba 1984a). Under imperfect debugging, one can assume that there is no perfect disclosure of faults or fresh faults are generated during the removal procedure (Goel 1985; Kareer et al. 1990; Pham 1993; Xie et al. 2007; Yamada et al. 1992a, b). Further, imperfect debugging consists of two categories i.e., imperfect fault removal and error generation. During the debugging process, if the faults are not disclosed completely and no new faults are generated then it is called imperfect fault removal but, if the new faults are generated while disclosing initial fault content then it is called error generation. The imperfect debugging scenario was first studied by Goel and Okumoto (1979) and error generation concept was given by Obha (1989). The error generation with the exponential function was considered in the study given by Pham to propose imperfect debugging SRGM (Pham & Zhang 1997). Later, he extended his work by assuming the fault content function to be time-based (Pham et al. 1999). Kapur et al. (2011a, b) proposed a unification modeling based-SRGM by incorporating the idea of imperfect debugging along with error generation. In the past few years, many researchers have discussed the error generation scenario and imperfect debugging (Aggarwal et al. 2015; Ahmad et al. 2010; Anand et al. 2018; Bibyan et al. 2023; Kapur et al. 2011; Kapur et al. 2010; Kapur et al. 2008a, b; Verma et al. 2022; Zhang et al. 2014).

The fault detection/observation rate (FDR) has also been considered a significant aspect in improving the growth of software reliability. Moreover, it is assumed that there is instability in the rate because of some external factors like software size, testing efforts, testability, and so on. As a result, the fault observation rate can show alterations at any point in time. In literature, researchers contributed by capturing the concept of change points in SRGMs (Chang 2001; Dhaka & Nijhawan 2022; Kapur et al., 2007; Kapur et al. 2008a, b; Nijhawan & Aggarwal 2015; Tandon et al. 2016; J. Zhao et al. 2006; M. Zhao 1993). T. Pham and Pham (2019) proposed a generalized SRGM that considers multiple environmental factors and a stochastic fault detection process. The model incorporates a Weibull distribution to capture the randomness of the fault observation process and uses a generalized linear regression to estimate the influence of multiple environmental conditions on software reliability. Zhu and Pham (2022) formulated a generalized SRGM considering the impact of environmental factors such as the proportion of reused modules and change in the frequency of program specification. The randomness is reflected in the detection process. Bevia et al. (2023) analyzed the logistic SRGMs under random settings. The authors demonstrated the use of these models in a real-world setting.

The efficiency of the SRGMs can be increased by capturing the impact of some realistic issues occurring while the testing procedure such as Testing Coverage. The completeness and effectiveness of the test are measured using Testing Coverage (TC). Different testing coverage functions (TCF) have been studied by researchers such as Exponential (Hwang & Pham 2008), S-shaped (Hoang Pham & Zhang 2003), Logarithmic exponential (Huang & Lin 2006), Rayleigh (Xie et al. 2007), and Weibull (Gokhale et al. 1996). A model was proposed by Malaiya et al. (1994) to analyze the relatability between reliability and TC. She also attempted to explain the relationship between TC and defect coverage. Later, TC and testing time was considered to study their relatability with reliability by Malaiya et al. (2002) using log-exponential TCF. An SRGM along with a cost model by taking TC into account was suggested by Pham and Zhang (2003). He compared the performance measures with the pre-existing models and commented that the proposed model shows better results. Later, Pham (2014) discussed two models in which fault observation rate was taken as log–log distribution and TC was assumed to have the presence of uncertainty. The fault detection/observation rate was taken in terms of TC to study the ambiguity of the operating surroundings by Li and Pham (2017).

Before the system is offered in the market, a prolonged testing procedure takes place in which faults are observed and disclosed. Moreover, software users discover some faults in the software due to which firms release a new version. So, the process of detecting the fault content which remained in the software can be taken as a stochastic process (Øksendal 2003). In the past, several SRGMs with continuous state space have been proposed using SDE of an Itô type. A basic SRGM was proposed by Yamada et al. (1994) to explain FDR using Itô type SDE during the testing procedure. Later, SDE-based SRGM was developed using different exponential, inflection, and delayed S-shaped models by Yamada et al. (2003). The irregular fluctuations were considered to present the per-FDR despite a non-homogeneous Poisson process by Leet et al. (2004). He postulated that per-FDR is dependent on the testing time t. A flexible SDE-SRGM model was suggested in 2006 to describe FDR in the distributed development environment (Tamura & Yamada). A generalized SRGM using SDE was modeled by studying simple, hard, and complex faults by Kapur et al. (2007a, b; 2009). A model was proposed based on a similar concept but the fault detection rate was considered as TC with error generation by Bibyan et al. (2023) along with a multi-release model formulation.

With the rapid increase in the usage of software products, the necessity of providing a new release in the market has become quite mandatory for software developing companies. This new release either has some additional features or the faults of the previous release are debugged and then released again. Several SRGMs have been discussed in the past by incorporating SRGMs (Anu G Aggarwal et al. 2018; Kapur et al. 2006; Kapur et al. 2012; Kapur et al. 2014; Nijhawan & Aggarwal 2015; Tandon et al. 2016). Anand et al. (2018) considered a constant fault reduction factor in the presence of imperfect debugging and fault removal rate as a delayed S- shape to develop a 2-D multi-release SRGM. Recently, a time variable FRF-based multi-release SRGM with imperfect debugging was suggested by A G Aggarwal et al. (2019). During the testing procedure, the FRF and TC are the important aspects that should be considered to control software reliability. These two factors were considered to propose multi-release SRGM for an open source software by Tandon & Aggarwal (2020). The ambiguity of the random field operating environment was captured to generate a generalized multi-release SRGM by Mishra et al. (2023). The motivation behind the study is to study the impact of irregular fluctuations on testing coverage which has not been studied by any of the researchers in the past. The following are the contributions made by the study:

  1. (i)

    A Testing coverage-based SRGM incorporating change points along with error generation has been developed using SDE of an Itô type to study the impact of irregular fluctuations.

  2. (ii)

    Three different types of testing coverage models have been developed namely Exponential. Weibull, and delayed S-shaped.

  3. (iii)

    Furthermore, a multi-release model has been generated for the proposed model.

The paper is organized as per the following sections:

  • Sect. 2: a model framework has been provided including notations, assumptions, and mathematical model development. The mean value functions for the three different types of testing coverage models have been provided namely Exponential. Weibull, and Delayed S-shaped models.

  • Sect. 3: a multi-release model has been explained for four consequent releases.

  • Sect. 4: illustrates the numerical performance of the released dataset of Tandem Computer.

  • Sect. 5: discusses the conclusion

  • Sect. 6: contains the future scope.

2 Model’s Framework

The notations and assumptions utilized to develop the model are as follows:

2.1 Notations

\(S\left(t\right)\):

A random variable representing the fault content observed at testing time t

\(m(t)\):

Mean Value Function / expected fault content observed in the time interval 0 to t

\(a\left(t\right)\):

Overall fault content at time t

\(a\):

Initial fault content

\({\alpha }_{1},{\alpha }_{2}:\)

Error generation rate before and after the change point respectively

\(c(t)\):

The portion of potential faults present in the code identified up to time t

\(r\left(t\right)\):

Fault observation/removal rate

\(\theta :\)

Shape parameter

\({a}_{i}\):

Initial Fault content for ith version; i = 1,2,3,4

\({t}_{i}\):

Release time for ith version

\({\tau }_{i}\):

Change points

\({F}_{k}(t)\):

Cumulative Failure function before the change point for the kth model

\({G}_{k}(t)\):

Cumulative Failure function after the change point for the kth model

\({F}_{ik}(t)\):

Cumulative failure function before change point for the ith version for kth model

\({G}_{ik}(t)\):

Cumulative failure function after change point for the ith version kth model

2.2 Assumptions

  1. (a)

    The fault observation/removal process is modeled as a stochastic process with continuous state space.

  2. (b)

    The fault content reduces as the testing increases.

  3. (c)

    During the execution, the system is subjected to failure because of the residual faults in the code.

  4. (d)

    The fault observation rate can be expressed in terms of TC as \(\frac{c{\prime}(t)}{ 1-c(t)}\).

  5. (e)

    As soon as the failure is observed, instant action is taken to debug the faults by the developers.

  6. (f)

    When the faults are being removed, new faults generate with the probability \(\alpha\).

2.3 Model development

Many SRGMs in the literature are based on NHPP by taking the fault observation rate to be a discrete counting process. The fault content observed during the testing procedure is proportional to the size of the code of the software. Whereas, the fault content removed or corrected in the process of debugging is inversely proportional to the size of the code of the software (Shigeru & Akio 2003). This nature of fault observation/removal rate is handled using a stochastic model. Moreover, the faults are observed and removed during testing from the software code due to which the residual fault content reduces as the testing continues. We assume that new faults are generated while debugging with an introduction rate α and consider the following differential equation to model SRGM with a change point as shown in Fig. 1:

Fig. 1
figure 1

Testing coverage-based SRGM

$$\frac{dS(t)}{dt}=\left\{\begin{array}{c}\frac{{c}_{1}{\prime}(t)}{1-{c}_{1}(t)} \left[a+{\alpha }_{1}S\left(t\right)-S(t)\right] ;0\le t\le \tau \\ \frac{{c}_{2}{\prime}(t)}{1-{c}_{2}(t)}\left[a-{\alpha }_{1}S\left(\tau \right)-{\alpha }_{2}\left(S\left(t\right)-S\left(\tau \right)\right)-S(t)\right] ; t>\tau \end{array}\right.$$
(1)

Equation (1) can be rewritten as:

$$\frac{dS(t)}{dt}=\left\{\begin{array}{l}(1-{\alpha }_{1})\frac{{c}_{1}{\prime}(t)}{1-{c}_{1}(t)} \left[{a}_{1}-S(t)\right] ;0\le t\le \tau \\ (1-{\alpha }_{2})\frac{{c}_{2}{\prime}(t)}{1-{c}_{2}(t)}\left[{a}_{2}-S(t)\right] ; t>\tau \end{array}\right.$$
(2)

Here, \({a}_{1}= \frac{a}{(1-{\alpha }_{1})}\) and \({a}_{2}=\frac{a+\left({\alpha }_{1}-{\alpha }_{2}\right)S(\tau )}{(1-{\alpha }_{2})}\)

The irregular variation has been expressed in terms of noise as \(\sigma \gamma \left(t\right)\). Now, we incorporate this noise in the fault observation rate and extend the Eq. (2) to a stochastic differential as:

$$\frac{dS(t)}{dt}=\left\{\begin{array}{l}\left[(1-{\alpha }_{1})\frac{{c}_{1}{\prime}(t)}{1-{c}_{1}(t)}+\sigma \gamma (t)\right] \left[{a}_{1}-S\left(t\right)\right] ;0\le t\le \tau \\ \left[(1-{\alpha }_{2})\frac{{c}_{2}{\prime}(t)}{1-{c}_{2}(t)}+\sigma \gamma (t)\right]\left[{a}_{2}-S(t)\right] ;t>\tau \end{array}\right.$$
(3)

The Eq. (3) has been extended to an SDE of an Itô type and is given as:

$$S(t)=\left\{\begin{array}{l}(1-{\alpha }_{1})\left(\frac{{c}_{1}{\prime}(t)}{1-{c}_{1}(t)}-\frac{1}{2}{\sigma }^{2}\right)\left({a}_{1}-S\left(t\right)\right)dt+\sigma \left({a}_{1}-S\left(t\right)\right)dw\left(t\right) ;0\le t\le \tau \\ (1-{\alpha }_{2}) \left(\frac{{c}_{2}{\prime}(t)}{1-{c}_{2}(t)}-\frac{1}{2}{\sigma }^{2}\right)\left({a}_{2}-S\left(t\right)\right)dt+\sigma \left({a}_{2}-S\left(t\right)\right)dw\left(t\right) ;t>\tau \end{array}\right.$$
(4)

where W(t) represents the one-dimensional Wiener process and its time derivative is given by \(\frac{dW(t)}{dt}=\gamma \left(t\right).\) The Weiner process is a Gaussian process with the given properties (Kapur et al. 2009):

$$Probability\left[w\left(0\right)=0\right]=1,$$
$$Expectation of w(t)=0,$$
$$E\left[w\left(t\right)w\left({t}{\prime}\right)\right]=\mathrm{min}\left[t,{t}{\prime}\right],$$

Using the initial condition at \(t=0, S\left(t\right)=0\), and at \(t=\tau , S\left(t\right)=S(\tau )\), we get the solution of Eq. (4) as:

$$S\left(t\right)=\left\{\begin{array}{c}{a}_{1}\left(1-{e}^{\left(-(1-{\alpha }_{1}){\int }_{0}^{\tau }\frac{{c}_{1}{\prime}(t)}{1-{c}_{1}(t)}dt-\sigma W\left(t\right)\right)} \right) ;\,\, 0\le t\le \tau \\ {a}_{2}\left(1-{e}^{\left(-\left(1-{\alpha }_{1}\right){\int }_{0}^{\tau }\frac{{c}_{1}{\prime}\left(t\right)}{1-{c}_{1}\left(t\right)}dt-(1-{\alpha }_{2}){\int }_{\tau }^{t}\frac{{c}_{2}{\prime}(t)}{1-{c}_{2}(t)}dt-\sigma W\left(t\right)\right)}\right)+\frac{\left({\alpha }_{1}-{\alpha }_{2}\right)}{1-{\alpha }_{2}}S(\tau ) ;\,\, t>\tau \end{array}\right.$$
(5)

Now, we get the MVF by taking the expectation of \(S(t)\) as:

$$m\left(t\right)=\left\{\begin{array}{c}{a}_{1}\left(1-{e}^{\left(-\left(1-{\alpha }_{1}\right){\int }_{0}^{\tau }\frac{{c}_{1}{\prime}\left(t\right)}{1-{c}_{1}\left(t\right)}dt+\frac{{\sigma }^{2}t}{2}\right)} \right) ;\,\, 0\le t\le \tau \\ {a}_{2}\left(1-{e}^{\left(-\left(1-{\alpha }_{1}\right){\int }_{0}^{\tau }\frac{{c}_{1}{\prime}\left(t\right)}{1-{c}_{1}\left(t\right)}dt-\left(1-{\alpha }_{2}\right){\int }_{\tau }^{t}\frac{{c}_{2}{\prime}\left(t\right)}{1-{c}_{2}\left(t\right)}dt+\frac{{\sigma }^{2}t}{2}\right)}\right)+\frac{\left({\alpha }_{1}-{\alpha }_{2}\right)}{1-{\alpha }_{2}}S(\tau ) ;\,\, t>\tau \end{array}\right.$$
(6)

SRGM-1: Exponential testing coverage function

$$r\left(t\right)=\frac{c{\prime}(t)}{1-c(t)}=\left\{\begin{array}{c}{b}_{1} ;\,\,0\le t\le \tau \\ {b}_{2} ;\,\,t>\tau \end{array}\right.$$
(7)

Now using Eqs. (6) and (7)

$${m}_{srgm}\left(t\right)=\left\{\begin{array}{c}\frac{a}{(1-{\alpha }_{1})}\left(1-{e}^{\left(-\left(1-{\alpha }_{1}\right){b}_{1}t+\frac{{\sigma }^{2}t}{2}\right)} \right) ;\,\, 0\le t\le \tau \\ \frac{a}{(1-{\alpha }_{2})}\left(1-{e}^{\left(-\left(1-{\alpha }_{1}\right){b}_{1}\tau -\left(1-{\alpha }_{2}\right){b}_{2}(t-\tau )+\frac{{\sigma }^{2}t}{2}\right)}\right)+\frac{\left({\alpha }_{1}-{\alpha }_{2}\right)}{1-{\alpha }_{2}}S(\tau ) ;\,\, t>\tau \end{array}\right.$$
(8)
$${m}_{srgm1}\left(t\right)=\left\{\begin{array}{c}{\frac{a}{(1-{\alpha }_{1})}}F_{1}\left(t\right) ;\,\, 0\le t\le \tau \\ \frac{a}{(1-{\alpha }_{2})}a{G}_{1}\left(t\right) ;\,\, t>\tau \end{array}\right.$$
(9)

SRGM-2: Delayed S-shaped Testing Coverage

$$r\left(t\right)=\frac{c{\prime}(t)}{1-c(t)}=\left\{\begin{array}{c}\frac{{b}_{1}^{2}}{1+{b}_{1}t} ;\,\,0\le t\le \tau \\ \frac{{b}_{2}^{2}}{1+{b}_{2}t} ;\,\, t>\tau \end{array}\right.$$
(10)

Now using Eq. (6) and (10)

$${m}_{srgm2}\left(t\right)=\left\{\begin{array}{c}\frac{a}{(1-{\alpha }_{1})}\left(1-{{\left(1+{b}_{1}t\right)}^{(1-{\alpha }_{1})}e}^{\left(-(1-{{\alpha }_{1})b}_{1}t+\frac{{\sigma }^{2}t}{2}\right)}\right) ;\,\, 0\le t\le \tau \\ \frac{a}{(1-{\alpha }_{2})}\left(1-{{\left[\frac{\left(1+{b}_{1}t\right)}{\left(1+{b}_{2}\tau \right)}\right]}^{(1-{\alpha }_{2})}{\left[1+{b}_{1}\tau \right]}^{(1-{\alpha }_{1})}e}^{\left(-{b}_{1}(1-{\alpha }_{1})\tau -{b}_{2}(1-{\alpha }_{2})\left(t-\tau \right)+\frac{{\sigma }^{2}t}{2}\right)}\right)+\frac{\left({\alpha }_{1}-{\alpha }_{2}\right)}{1-{\alpha }_{2}}S(\tau ) ;\,\, t>\tau \end{array}\right.$$
(11)
$${m}_{srgm2}\left(t\right)=\left\{\begin{array}{c}\frac{a}{(1-{\alpha }_{1})}{F}_{2}\left(t\right) ;\,\, 0\le t\le \tau \\ {\frac{a}{(1-{\alpha }_{2})}G}_{2}\left(t\right) ;\,\, t>\tau \end{array}\right.$$
(12)

SRGM-3: Weibull Testing Coverage

$$r\left(t\right)=\frac{c{\prime}(t)}{1-c(t)}=\left\{\begin{array}{c}{b}_{1}\theta {t}^{\theta -1} ;\,\,0\le t\le \tau \\ {b}_{2}\theta {t}^{\theta -1} ;\,\, t>\tau \end{array}\right.$$
(13)

Now using Eqs. (6) and (13)

$${m}_{srgm3}\left(t\right)=\left\{\begin{array}{c}\frac{a}{(1-{\alpha }_{1})}\left(1-{e}^{\left(-\left(1-{\alpha }_{1}\right){b}_{1}{t}^{\theta }+\frac{{\sigma }^{2}t}{2}\right)} \right) ;\,\, 0\le t\le \tau \\ \frac{a}{(1-{\alpha }_{2})}\left(1-{e}^{\left(-\left(1-{\alpha }_{1}\right){b}_{1}{\tau }^{\theta }-\left(1-{\alpha }_{2}\right){b}_{2}({t}^{\theta }-{\tau }^{\theta })+\frac{{\sigma }^{2}t}{2}\right)}\right)+\frac{\left({\alpha }_{1}-{\alpha }_{2}\right)}{1-{\alpha }_{2}}S(\tau ) ;\,\, t>\tau \end{array}\right.$$
(14)
$${m}_{srgm3}\left(t\right)=\left\{\begin{array}{c}\frac{a}{(1-{\alpha }_{1})}{F}_{3}\left(t\right) ; \,\,0\le t\le \tau \\ {\frac{a}{(1-{\alpha }_{2})}G}_{3}\left(t\right) ;\,\, t>\tau \end{array}\right.$$
(15)

For simplification, \({\alpha }_{1}={\alpha }_{2}=\alpha\) has been considered.

3 Multi-release model

In addition to ensuring reliability, developers must stay up with the market's expanding needs such as problems in the current release, requirements for new software updates, market competition, different company policies, the need for new functionalities in the code, and so on. As a result, software development organizations continue to improve their products by adding new features, and codes, and correcting previously recognized faults. Swift advances in hardware and favorable financial conditions have compelled companies to constantly innovate and improve their goods to preserve their market position and overcome competitor products. The improvements are introduced into the marketplace at various periods. Integration of both detected faults of the previous version and the additional faults of the new release is required for modeling the reliability improvement of multi-release software. Although new versions are developed to keep up with the growth and changing demands of customers, they can additionally increase the failure rate and fault content of the software system. As a result, the number of problems eliminated over each release is identified differently. During our research, we discovered that the new faults are fixed in the present release and the unresolved faults are fixed in the next release, implying that the next release takes into account the remaining faults of the recently released version of the software. However, in the case of obstacles, the remaining faults from Release 1 are resolved in Releases 2, 3, and 4. It indicates that in the software development environment, residual faults from previous versions are passed on to subsequent releases (up to the following three or four). We assume here that lingering faults from Release 1 can pass up to Release 4. The multi-release model has been developed as follows:

  1. A.

    Release 1:

Before launching the software in the market, testers test the software very precisely. The testers aim to remove all the faults before launching it which is practically not possible. So, when the software is launched it contains few faults and mathematically, we can represent the MVF of the very first release as:

$${m}_{1k}\left(t\right)=\left\{\begin{array}{c}\frac{{a}_{1k}}{1-{\alpha }_{1k}}{F}_{1k}\left(t\right) ;\,\, 0\le t\le {\tau }_{1} \\ \frac{{a}_{1k}}{1-{\alpha }_{1k}}{G}_{1k}\left(t\right) ;\,\, {\tau }_{1}<t>{t}_{1}\end{array}\right.$$
(16)
  1. B.

    Release 2:

To preserve their reputation in the market, software firms bring up some additional features to the code of the software. This new addition to code generates complexity by upsurging the number of faults. Also, it is reasonable to consider the fact that some faults get carried forward from the first release which could not get removed. So, the MVF corresponding to the second release is represented as:

$${m}_{2k}\left(t\right)=\left\{\begin{array}{c}\left[\frac{{a}_{2k}}{1-{\alpha }_{2k}}+\frac{{a}_{1k}}{1-{\alpha }_{1k}}\left(1-{F}_{1k}\left({t}_{1}\right)\right)\right]{F}_{2k}(t-{t}_{1}) ;\,\, {t}_{1}\le t\le {\tau }_{2} \\ \left[\frac{{a}_{2k}}{1-{\alpha }_{2k}}+\frac{{a}_{1k}}{1-{\alpha }_{1k}}\left(1-{G}_{1k}\left({t}_{1}\right)\right)\right]{G}_{2k}(t-{t}_{1}) ;\,\, {\tau }_{2}<t\le {t}_{2}\end{array}\right.$$
(17)
  1. III.

    Release 3:

Along the same line, we consider the MVF of the third release to be affected by the previous release. So, the MVF corresponding to the third release can be represented as:

$${m}_{3k}\left(t\right)=\left\{\begin{array}{c}\left[\begin{array}{c}\frac{ {a}_{3k}}{1-{\alpha }_{3k}}+\frac{{a}_{2k}}{1-{\alpha }_{2k}}\left(1-{F}_{2k}\left({t}_{2}\right)\right)\\ +\frac{{a}_{1k}}{1-{\alpha }_{1k}}\left(1-{F}_{1k}\left({t}_{1}\right)(1-{F}_{2k}\left({t}_{2}\right)\right)\end{array}\right]{F}_{3k}(t-{t}_{2}) ;\,\, {t}_{2}\le t\le {\tau }_{3} \\ \left[\begin{array}{c}\frac{{a}_{3k}}{1-{\alpha }_{3k}}+\frac{{a}_{2k}}{1-{\alpha }_{2k}}\left(1-{G}_{2k}\left({t}_{2}\right)\right)\\ +\frac{{a}_{1k}}{1-{\alpha }_{1k}}\left(1-{G}_{1k}\left({t}_{1}\right)\right)\left(1-{G}_{2k}\left({t}_{2}\right)\right)\end{array}\right]{G}_{3k}(t-{t}_{2}) ;\,\, {\tau }_{3}<t\le {t}_{3} \end{array}\right.$$
(18)
  1. IV.

    Release 4:

Similarly, the MVF corresponding to the fourth release can be represented as:

$$m_{{4k}} = \left\{ {\begin{array}{*{20}c} {\left[ {\begin{array}{*{20}c} {\frac{{a_{{4k}} }}{{1 - \alpha _{{4k}} }} + \frac{{a_{{3k}} }}{{1 - \alpha _{{3k}} }}\left( {1 - F_{{3k}} \left( {\tau _{3} } \right)} \right)} \\ { + \frac{{a_{{2k}} }}{{1 - \alpha _{{2k}} }}\left( {1 - F_{{2k}} \left( {\tau _{2} } \right)} \right)\left( {1 - F_{{3k}} \left( {\tau _{3} } \right)} \right)} \\ { + \frac{{a_{{1k}} }}{{1 - \alpha _{{1k}} }}\left( {1 - F_{{3k}} \left( {\tau _{3} } \right)} \right)\left( {1 - F_{{2k}} \left( {\tau _{2} } \right)} \right)\left( {1 - F_{{1k}} \left( {\tau _{1} } \right)} \right)} \\ \end{array} } \right]F_{{4k}} (t - \tau _{3} )} & {;{\mkern 1mu} {\mkern 1mu} t_{3} \le t \le \tau _{4} } & {} \\ {\left[ {\begin{array}{*{20}c} {\frac{{a_{{4k}} }}{{1 - \alpha _{{4k}} }} + \frac{{a_{{3k}} }}{{1 - \alpha }}\left( {1 - G_{{3k}} \left( {t_{3} } \right)} \right)} \\ { + \frac{{a_{{2k}} }}{{1 - \alpha _{{2k}} }}\left( {1 - G_{{2k}} \left( {t_{2} } \right)} \right)\left( {1 - G_{{3k}} \left( {t_{3} } \right)} \right)} \\ { + \frac{{a_{{1k}} }}{{1 - \alpha _{{1k}} }}\left( {1 - G_{{3k}} \left( {t_{3} } \right)} \right)\left( {1 - G_{{2k}} \left( {t_{2} } \right)} \right)\left( {1 - G_{{1k}} \left( {t_{1} } \right)} \right)} \\ \end{array} } \right]G_{{4k}} (t - t_{3} )} & {;{\mkern 1mu} {\mkern 1mu} \tau _{4} \; < t\; < t_{4} } & {} \\ \end{array} } \right.$$
(19)

4 Numerical illustration with results

The numerical illustration and the results of the proposed models have been provided in this section:

4.1 Estimation and performance criteria

The proposed three models are validated using a multi-release fault dataset from Tandem Computers (Wood 1996) for four subsequent releases. The description of the dataset is provided in Table 1. Corresponding to each release, the real data curve was created to identify any kinks that are merely change points. On observation, we concluded that the change points (τ) were observed in the 8th, 26th, 42nd, and 56th week of the four releases respectively. We have proposed three models using three different TCFs namely, Exponential, Delayed S-shaped, and Weibull TCF. For the estimation let's assume \({\alpha }_{1}{=\alpha }_{2}=\alpha ,\) and the parameter estimation values are provided in Table 2.

Table 1 Tandem computers dataset
Table 2 Estimated parameters

After, the estimation of parameters using SPSS software for the proposed three models, we compare the models by using performance criteria. The criteria such as R2, Mean Square Error (MSE), Mean Absolute Error (Otoom, Al-Shdaifat, Hammad, & Abdallah), Bias, Variance, and Root Mean Percentage Square Error (RMPSE) have been evaluated. The values for the criteria for the three proposed models have been provided in Table 3. The R2 is highest for release 3 of the SRGM 3 and lowest for the release of the SRGM 1. The R2 of the model SRGM 3 with four releases is comparatively high as compared to other proposed models. By this, it can be suggested that the prediction of the percentage of variance in actual faults is significantly good for SRGM 3, in which we have used Weibull TCF. The performance criteria values are better for the SRGM 3 as compared to other models.

Table 3 Performance criteria values

4.2 Goodness-of-fit (GoF)

Now, by using the actual and estimated values of the faults, the GoF curve is plotted for the three proposed models as shown in Figs. 2, 3, 4, 5 corresponding to each release. The testing time in weeks is presented on the x-axis, while cumulative faults are on the y-axis. It is said that if the distance is minimum between the actual and estimated points, then it indicates good fitting. By plotting the curves, we have attempted to show how accurately the model estimation has been done. In our research, all three models have efficiently shown good fitting as the estimated values are near the actual values.

Fig. 2
figure 2

Goodness of fit curve for release 1

Fig. 3
figure 3

Goodness of fit curve for release 2

Fig. 4
figure 4

Goodness of fit curve for release 3

Fig. 5
figure 5

Goodness of fit curve release 4

The novelty of capturing irregular fluctuations in the fault detection rate lies in its ability to improve sensitivity, adaptability, early fault detection, uncovering unforeseen patterns, and enhancing fault diagnosis. By going beyond traditional approaches, this method offers unique advantages for fault detection and can contribute to more reliable and efficient systems across various domains.

5 Conclusions

The proposed SRGMs are the generalized model with the combination of the idea of SDE-based modeling, testing coverage-based fault observation rate, error generation, and change points. We have presented error generation with the three TCF namely, Exponential, Delayed S-shaped, and Weibull. The fault content observed during the testing procedure is proportional to the size of the code of the software. Whereas, the fault content removed or corrected in the process of debugging is inversely proportional to the size of the code of the software. This nature of fault observation/removal rate is studied by considering the fault detection process as a stochastic process. Later, the multi-release model has been proposed for the four consequent releases of the software. The failure dataset given by Wood (1996) for four releases has been used. The results presented in Sect. 5 of the paper reveal significant estimation values of all three models. On comparing the three models, it is observed that the Weibull testing coverage-based SRGM has performed significantly well. To estimate the accuracy of the model, various performance criteria have been evaluated such as R2, MSE, MAE, Bias, Variance, and RMPSE. These criteria depict that the Weibull TCF-based SRGM fits the data appropriately and is showing better results as compared to other proposed models. The results are deeply analyzed to reach to following conclusions:

For a software firm, the release of the software is a significant part of the software evolution cycle. So, the testers test the software code for a longer time to disclose the faults perfectly. Here, because of the impact of error generation in the first release, the upcoming version has some residual faults along with new faults due to updates in code. The residual faults from the previous release should be considered on a prior basis as they can be exploited easily by users because they are uncovered in the market. So, while the testing procedure, fixing them becomes highly important. The firm cannot take any risk with these faults, as if they fail to disclose these faults even after consequent testing might result in a negative impact on the market. The third and fourth release shows similar phenomena, but this time testers are now accustomed to the software. Hence, the fault removal process becomes faster.

The study implies that capturing irregular fluctuations in the fault detection rate can provide valuable insights into system stability, fault tolerance, external factors, and overall performance. By understanding the underlying causes of these fluctuations and implementing appropriate measures, organizations can enhance system reliability, optimize resource allocation, and improve fault detection and response processes. Irregular fluctuations in the fault detection rate can pose challenges in fault diagnosis and root cause analysis. When the fault detection rate deviates from expected patterns without apparent reasons, it may be difficult to pinpoint the specific cause or trigger of the fluctuations. This has been considered a limitation as it becomes harder to identify and address underlying issues, potentially leading to longer resolution times and increased downtime.

6 Future work

The proposed stochastic differential-based SRGM opens up many prospects for the extension.

  • The release time optimization model can be formulated to increase the reliability of the model and decrease the overall software development cost.

  • The extension can be done for different types of faults based on the severity of the software.

  • More environmental impact factors can be considered to generate SRGM.