Software Engineering | Quasi renewal processes

Let {N(t), t > 0} be a counting process and let $X_n$ be the time between the $(n-1)_{th}$ and the $n_{th}$ event of this process,  n\geq 1.

Definition:
If the sequence of non-negative random variables {X1, X2, ….} is independent and

    $$X_i=aX_{i-1}$$

for $i\geq 2$ where $\alpha > 0$ is a constant, then the counting process {N(t), t $\geq $ 0} is said to be a quasi-renewal process with parameter and the first inter-arrival time $X_1$.

When $\alpha $ = 1, this process becomes the ordinary renewal process. This quasi-renewal process can be used to model reliability growth processes in software testing phases and hardware burn-in stages for $\alpha $ > 1, and in hardware maintenance processes when $\alpha \geq $ 1.

Important formulae related to quasi-renewal processes:
Assume that the probability density function, cumulative distribution function, survival function and failure rate of random variable$ X_1\: are\: f_1(x), F_1(x), s_1(x), and\: r_1(x)$, respectively. Then,

  1. The pdf(probability density function) of Xn for n = 1, 2, 3, … is

        $$f_n(x)= \frac{1}{\alpha^{n-1}}f_1\left (\frac{1}{\alpha^{n-1}}x\right ) $$

  2. The cdf(cumulative density function) of Xn for n = 1, 2, 3, … is

        $$F_n(x)= F_1\left (\frac{1}{\alpha^{n-1}}x\right ) $$

  3. The survival function of Xn for n = 1, 2, 3, … is

        $$S_n(x)= S_1\left (\frac{1}{\alpha^{n-1}}x\right ) $$

  4. The failure rate of Xn for n = 1, 2, 3, … is

        $$ f_n(x)= \frac{1}{\alpha^{n-1}}r_1\left (\frac{1}{\alpha^{n-1}}x\right )$$

Similarly, the mean and variance of Xn is given as

    $$E(X_n)=\alpha^{n-1}E(X_1)$$ $$ Var(X_n)=\alpha^{2n-2}Var(X_1)$$

Because of the non-negativity of $X_1$ and the fact that $X_1$ is not identically 0, we obtain

    $$ E(X_1)=\mu \neq 0 $$

Proposition-1:
The shape parameters of $X_n$ are the same for n = 1, 2, 3, … for a quasi-renewal process if $X_1$ follows the gamma, Weibull, or log normal distribution. This means that after “renewal”, the shape parameters of the inter-arrival time will not change. In software reliability, the assumption that the software debugging process does not change the error-free distribution type seems reasonable.

Thus, the error-free times of software during the debugging phase modeled by a quasi-renewal process will have the same shape parameters. In this sense, a quasi-renewal process is suitable to model the software reliability growth. It is worthwhile to note that,

     $$ \lim_{n \rightarrow  \infty } \frac{E(X_1+X_2+ ... +X_n)}{n}&= \lim_{n \rightarrow  \infty }\frac{\mu_{1}(1-\alpha^n)}{(1-\alpha)n} $$ $$=\; 0 if\; \alpha\:  \: 1 $$

Therefore, if the inter-arrival time represents the error-free time of a software system, then the average error-free time approaches infinity when its debugging process is occurring for a long debugging time.

Proposition-2:
The first inter-arrival distribution of a quasi-renewal process uniquely determines its renewal function. If the inter-arrival time represents the error-free time (time to first failure), a quasi-renewal process can be used to model reliability growth for both software and hardware.

Suppose that all faults of software have the same chance of being detected. If the inter-arrival time of a quasi-renewal process represents the error-free time of a software system, then the expected number of software faults in the time interval [0, t] can be defined by the renewal function, m(t), with parameter \alpha > 1. Denoted by $m_r(t)$, the number of remaining software faults at time t, it follows that,

    $$m_r(t)=m(T_c)-m(t)$$

where $m(T_c)$ is the number of faults that will eventually be detected through a software lifecycle Tc.



My Personal Notes arrow_drop_up

Check out this Author's contributed articles.

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.




Article Tags :

1


Please write to us at contribute@geeksforgeeks.org to report any issue with the above content.