software reliability

12
Software Reliability Unit IV

Upload: amit-udhwani

Post on 07-Aug-2015

59 views

Category:

Engineering


1 download

TRANSCRIPT

Page 1: Software reliability

Software ReliabilityUnit IV

Page 2: Software reliability

What is Software Reliability? As per IEEE:

“Software Reliability is defined as the ability of a system or component to perform its required functions under stated condition for a specified amount of time.”

Thus, Reliability of a software product denotes its Trustworthiness, and Dependability.

Page 3: Software reliability

What is Software Reliability? The most acceptable definition of Software

Reliability is:

“It is the probability of a failure free operation of a program for a specified time in a specified environment.” For example, a time sharing system may have a

reliability of 0.95 for 10 hr when employed by the average user.

This system, when executed for 10 hr, would operate without failure for 95 times out of 100.

Page 4: Software reliability

Hardware Vs. Software Reliability

An important feature that sets hardware and software reliability issues apart is the difference between their failure patterns.

Hardware components fail due to very different reasons as compared to software components.

Hardware components fail mostly due to wear and tear, whereas software components fail due to bugs.

Page 5: Software reliability

Burn-in phase

Useful life phase

TimeFa

ilure

In

tensi

ty

Wear-out phase

a) Hardware Product

Time

Failu

re

Inte

nsi

ty

Product

Release

Testing

Retirement

Useful Life Obsolete

b) Software Product

Change in Failure

Rate of a Product

Page 6: Software reliability

Hardware Vs. Software Reliability

Software may be retired only if becomes obsolete.

Some of the factors are: Change in environment Change in infrastructure/ technology Major change in requirements Increase in complexity Extremely difficult to maintain Deterioration in the structure of the code Slow execution speed Poor graphical user interfaces.

Page 7: Software reliability

Reliability Metrics

The reliability requirements for different categories of software may be different.

Therefore, we need some metrics to quantitatively express the reliability of a software product.

A good reliability measure should be observer-independent, so that different people can agree to the reliability of a system.

We have six metrics that correlate with reliability. They are as follows:

Page 8: Software reliability

Reliability Metrics

Rate of Occurrence of Failure (ROCOF): Measures the frequency of occurrence of failures. It can be obtained by observing the behaviour of a

s/w product in operation over a specified time interval, and then calculating total number of failures during this interval.

Mean Time to Failure (MTTF): It is the average time between two successive

failures.

Σ ti+1- ti/ n-1 Where ‘n’ is the number of failures, and ‘t’ is the time distance

at which failure occurs.

i=1

n

Page 9: Software reliability

Reliability Metrics

Mean Time to Repair (MTTR): Once the failure occurs, some time is required

to fix the error.

MTTR measures the average time it takes to track the error causing the failure and then to fix it.

Mean Time Between Failure (MTBF): We can combine the MTTF and MTTR to get

MTBF.

MTBF= MTTF + MTTR

Page 10: Software reliability

Reliability Metrics

Availability of the System: Is a measure of how likely will the system be

available for use over a given period of time.

This metric not only considers the number of failures occurring during a time interval but also considers the repair time of a system when a failure occurs.

Availability= (MTTF/ MTBF) * 100

Page 11: Software reliability

Few Questions

What is the availability of a software with the following reliability figures:MTBF= 25 days

MTTR= 6 hours

a) 1%

b) 24%

c) 99%

d) 99.009%

Page 12: Software reliability

Few Questions

The availability of a complex software is 90%. Its MTBF is 200 days. Because of its critical nature, the organization developing the software, further enhanced it to obtain an availability of 95%. In the process, the MTTR was increased by 5 days. What is the MTBF of the enhanced software?a) 205 days

b) 300 days

c) 500 days

d) 700 days