NAZMUSSAKIBMDADIL200
32 views
20 slides
Feb 28, 2025
Slide 1 of 20
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
About This Presentation
software engineering slide
Size: 653.75 KB
Language: en
Added: Feb 28, 2025
Slides: 20 pages
Slide Content
1 Chapter 11 Software Reliability Software Engineering: Design, Reliability, and Management, 10th Edition by Martin L. Shooman
2 Failure Modes Mode of Failure : The general reason for a failure, e.g., poor quality of fabrication, design error, overload of the component, wear due to old age (wear-out). Hardware Failure : It refers to a system failure traceable to some component malfunction. Software Failure : It refers to a system failure traceable to some error in the software. Failure Mechanism : The detailed cause of a failure.
3 Reliability Theory Let t be the random variable representing the time to failure Let the probability that the time to failure t is in some interval (t 1 , t 1 + ∆t) This probability can be related to density and distribution functions P(t 1 ≤t≤ t 1 + ∆t)=f(t 1 ) ∆t=F(t 1 +∆t)-F(t 1 ) Where f(t 1 )= value of the probability density function at point t 1 F(t 1 )= value of the cumulative probability distribution function at point t 1
4 Reliability Theory Dividing by and letting we obtain (ii) Clearly, (iii) The probability that the time to failure occurs in the interval : (iv)
5 Reliability Theory The random variable t is only defined for the interval to +∞ . As a consequence, F(0) must be zero. Then (v) is the probability that the time to failure is larger than t 1 , that is, .
6 Reliability Theory From fundamental laws of probability, The probability of success i.e., the reliability (vi)
7 Failure Rate Failure Rate : The Hazard function z(t) is defined in terms of the probability P f (t) that a failure occurs in some interval t 1 to t 1 + ∆t, given that the time has survived up to time t: P(t 1 ≤t≤ t 1 + ∆t| t>t 1 )= z(t 1 )∆t (vii) The first term in equation (vii) is a so-called conditional probability, which is to be given by P(t 1 ≤t≤ t 1 + ∆t| t>t 1 )=f(t 1 ) ∆t / R(t 1 )=z(t 1 )∆t (viii) Combining equation (ii) with (viii) for any time t yields 1/R(t). dF (t)/ dt =z(t) (ix)
8 Failure Rate From eq n .(vi), Rearrangement yields z(t) dt (x) Integrating both sides w.r.t. t yields (xi)
9 Failure Rate At the system is initially good and (initial condition) Exponentiating both sides of eq n .(xi) and substituting the initial condition (xii) If the failure rate is constant, ; then, Similarly, if the failure rate is linearly increasing, ; then,
10 General form of Failure Curves t 1 t 2 t 1 t 2 Time t f (t)
11 Software Reliability & Availability Software Reliability R(t) : Software Reliability is the probability that the program performs successfully, according to specifications, for a given time period. Software Availability : Software Availability is the probability that the program is performing successfully, according to specifications, at a given point in time. The important difference is that reliability means no failure in the interval to t , whereas availability means only that the system is up at time t .
12 New and Old Errors Previously Fixed(Old) Error : One which recurs in substantially the same form after the programmer has terminated the work on a code change believing that the error has been corrected. Generated(New) Error : One which does not exist until it is created as a by product of a code change made to correct another error.
13 Documentation It is an all-encompassing term which includes many things in a computer program. The first item is a listing of the program along with the program comments. Also includes Contract documents, design documents, test documents, and design review documents. For a typical list see the book .
14 Maintenance-Cost Model Assume that F programming work force (constant and normalized to be unity) M maintenance force(left behind for maintenance) D development force to handle new projects Thus F = M(t) + D(t) At t = 0, M = 0 and D = F = 1. Let X be the fraction of development force left behind for maintenance at the end of a project, then X = M/F and at t = 0, X is not defined.
15 Maintenance-Cost Model At the release of the first project, t = t 1 , and we have M(t 1 ) = XD(t 1 ) = X × 1 = X ………….(i) D = 1 – M = 1 – X ………….(ii) After the release of project 2, M = assignment to first project + assignment to second project. M = X + XD = X + X(1 – X) …………(iii) and D = F – M = 1 – M = 1 – [X + X(1 – X)] = (1 – X) 2 ….………(iv)
16 Maintenance-Cost Model Generalizing Eqs . (i) to (iv) yields for the k th project release M = 1 - (1 – X) k D = (1 – X) k Example: Let X = 0.2 and we have 6 projects of 2 years each, then M = 1 - (1 – 0.2) 6 = 0.74 D = (1 – 0.2) 6 = 0.26 Thus, 6 projects gobbled up 75% of total work force in maintenance of previous projects.
17 Reliability Growth Models https://software-engineering-book.com/web/reliability-growth-modeling/ A reliability growth model is a model of how the system reliability changes over time during the testing process. As system failures are discovered, the underlying faults causing these failures are repaired so that the reliability of the system should improve during system testing and debugging.
18 Reliability Growth Models https://software-engineering-book.com/web/reliability-growth-modeling/ Simplistically, you can predict reliability by matching the measured reliability data to a known reliability model. You then extrapolate the model to the required level of reliability and observe when the required level of reliability will be reached (Figure 1). Therefore, testing and debugging must continue until that time.
20 These slides are designed to accompany Software Engineering: A Practitioner’s Approach, 6/e (McGraw-Hill 2005). Slides copyright 2005 by Roger Pressman.