SlideShare ist ein Scribd-Unternehmen logo
1 von 19
Software Testing and QA Theory and Practice (Chapter 15: Software Reliability) © Naik & Tripathy 1
Software Testing and Quality Assurance
Theory and Practice
Chapter 15
Software Reliability
Prof. Abraham Paul
Assistant Prof. VIT
Software Testing and QA Theory and Practice (Chapter 15: Software Reliability) © Naik & Tripathy 2
Outline of the Chapter
• What is Reliability?
• Definitions of Software Reliability
• Factors Influencing Software Reliability
• Applications of Software Reliability
• Operational Profiles
• Reliability Models
• Summary
Software Testing and QA Theory and Practice (Chapter 15: Software Reliability) © Naik & Tripathy 3
What is Reliability?
• Reliability is a broad concept.
– It is applied whenever we expect something to behave in a certain way.
• Reliability is one of the metrics that are used to measure quality.
• It is a user-oriented quality factor relating to system operation.
– Intuitively, if the users of a system rarely experience failure, the system is
considered to be more reliable than one that fails more often.
• A system without faults is considered to be highly reliable.
– Constructing a correct system is a difficult task.
– Even an incorrect system may be considered to be reliable if the frequency of
failure is “acceptable.”
• Key concepts in discussing reliability:
– Fault
– Failure
– Time
– Three kinds of time intervals: MTTR, MTTF, MTBF
Software Testing and QA Theory and Practice (Chapter 15: Software Reliability) © Naik & Tripathy 4
What is Reliability?
• Failure
– A failure is said to occur if the observable outcome of a program execution is
different from the expected outcome.
• Fault
– The adjudged cause of failure is called a fault.
– Example: A failure may be cause by a defective block of code.
• Time
– Time is a key concept in the formulation of reliability. If the time gap between
two successive failures is short, we say that the system is less reliable.
– Two forms of time are considered.
• Execution time (τ)
• Calendar time (t)
Software Testing and QA Theory and Practice (Chapter 15: Software Reliability) © Naik & Tripathy 5
What is Reliability?
• MTTF: Mean Time To Failure
• MTTR: Mean Time To Repair
• MTBF: Mean Time Between Failures (= MTTF + MTTR)
Figure 15.1: Relationship between MTTR, MTTF, and MTBF.
Software Testing and QA Theory and Practice (Chapter 15: Software Reliability) © Naik & Tripathy 6
What is Reliability?
• Two ways to measure reliability
– Counting failures in periodic intervals
• Observer the trend of cumulative failure count - µ(τ).
– Failure intensity
• Observe the trend of number of failures per unit time – λ(τ).
• µ(τ)
– This denotes the total number of failures observed until execution time τ
from the beginning of system execution.
• λ(τ)
– This denotes the number of failures observed per unit time after τ time units
of executing the system from the beginning. This is also called the failure
intensity at time τ.
• Relationship between λ(τ) and µ(τ)
– λ(τ) = dµ(τ)/dτ
Software Testing and QA Theory and Practice (Chapter 15: Software Reliability) © Naik & Tripathy 7
Definitions of Software Reliability
• First definition
– Software reliability is defined as the probability of failure-free operation of a
software system for a specified time in a specified environment.
• Key elements of the above definition
– Probability of failure-free operation
– Length of time of failure-free operation
– A given execution environment
• Example
– The probability that a PC in a store is up and running for eight hours without
crash is 0.99.
• Second definition
– Failure intensity is a measure of the reliability of a software system operating
in a given environment.
• Example: An air traffic control system fails once in two years.
• Comparing the two
– The first puts emphasis on MTTF, whereas the second on count.
Software Testing and QA Theory and Practice (Chapter 15: Software Reliability) © Naik & Tripathy 8
Factors Influencing Software Reliability
• A user’s perception of the reliability of a software depends upon two
categories of information.
– The number of faults present in the software.
– The ways users operate the system.
• This is known as the operational profile.
• The fault count in a system is influenced by the following.
– Size and complexity of code
– Characteristics of the development process used
– Education, experience, and training of development personnel
– Operational environment
Software Testing and QA Theory and Practice (Chapter 15: Software Reliability) © Naik & Tripathy 9
Applications of Software Reliability
• Comparison of software engineering technologies
– What is the cost of adopting a technology?
– What is the return from the technology -- in terms of cost and quality?
• Measuring the progress of system testing
– Key question: How of testing has been done?
– The failure intensity measure tells us about the present quality of the system:
high intensity means more tests are to be performed.
• Controlling the system in operation
– The amount of change to a software for maintenance affects its reliability. Thus
the amount of change to be effected in one go is determined by how much
reliability we are ready to potentially lose.
• Better insight into software development processes
– Quantification of quality gives us a better insight into the development
processes.
Software Testing and QA Theory and Practice (Chapter 15: Software Reliability) © Naik & Tripathy 10
Operational Profiles
• Developed at AT&T Bell Labs.
• An OP describes how actual users
operate a system.
– An OP is a quantitative
characterization of how a system
will be used.
• Two ways to represent
operational profiles
– Tabular
– Graphical
Table 15.1: An example of operational
profile of a library information
system.
Figure 15.2: Graphical representation of
operational profile of a library information
system.
Software Testing and QA Theory and Practice (Chapter 15: Software Reliability) © Naik & Tripathy 11
Operational Profiles
• Use of operational profiles
– For accurate estimation of the reliability of a system, test the system in the
same way it will be actually used in the field.
• Other uses of operational profiles
– Use an OP as a guiding document in designing user interfaces.
• The more frequently used operations should be easy to use.
– Use an OP to design an early version of a software for release.
• This contains the more frequently used operations.
– Use an OP to determine where to put more resources.
Software Testing and QA Theory and Practice (Chapter 15: Software Reliability) © Naik & Tripathy 12
Reliability Models
• Main idea
– We develop mathematical models for λ(τ) and µ(τ).
• Basic assumptions in developing a reliability model
– Faults in the program are independent.
– Execution time between failures is large w.r.t. instruction execution time.
– Potential test space covers its use space.
– The set of inputs per test run is randomly chosen.
– The fault causing a failure is immediately fixed or else its re-occurrence is not
counted again.
Software Testing and QA Theory and Practice (Chapter 15: Software Reliability) © Naik & Tripathy 13
Reliability Models
• Intuitive idea
– As we observe another system failure and the corresponding fault is fixed,
there will be fewer number of faults remaining in the system and the failure
intensity will be smaller with each fault fixed.
– In other words, as the cumulative failure count increases, the failure intensity
decreases.
• Two decrement processes
– Decrement process 1
• The decrease in failure intensity after observing a failure and fixing the
corresponding fault is constant.
– This gives us the Basic model.
– Decrement process 2
• The decrease in failure intensity after observing a failure and fixing the
corresponding fault is smaller than the previous decrease.
– This gives us the Logarithmic model.
Software Testing and QA Theory and Practice (Chapter 15: Software Reliability) © Naik & Tripathy 14
Reliability Models
• Parameters of the models
– λ0: The initial failure intensity
observed at the beginning of
system testing.
– v0: The total number of
system failures that we expect
to observe over infinite time
starting from the beginning of
system testing.
θ: A parameter representing
n0n-linear drop in failure
intensity in the Logarithmic
model.
Figure 15.3: Failure intensity λ as a function of
cumulative failures µ.
Software Testing and QA Theory and Practice (Chapter 15: Software Reliability) © Naik & Tripathy 15
Reliability Models
• Basic model
Assumption: λ(µ) = λ0 (1 - µ/v0)
dµ(τ)/dτ = λ0 (1 - µ(τ)/v0)
µ(τ) = λ0(1 - µ/v0)
λ(τ) = λ0.e -λ0 τ/v0
• Logarithmic model
Assumption: λ(µ) = λ0e-θµ
dµ(τ)/dτ = λ0e-θµ(τ)
µ(τ) = ln(λ0θτ + 1)/θ
λ(τ) = λ0/(λ0θτ + 1)
Figure 15.4: Failure intensity λ as a function of
execution time τ (λ0= 9 failures/unit time,v0=
500 failures, θ = 0.0075).
Software Testing and QA Theory and Practice (Chapter 15: Software Reliability) © Naik & Tripathy 16
Reliability Models
Figure 15.4: Cumulative failure µ as a function of execution time τ (λ0=
9 failures/unit time,v0 = 500 failures, θ = 0.0075).
Software Testing and QA Theory and Practice (Chapter 15: Software Reliability) © Naik & Tripathy 17
Reliability Models
• Example
Assume that a software system is undergoing system level testing. The initial
failure intensity of the system was 25 failures/CPU hours, and the current
failure intensity is 5 failures/CPU hour. It has been decided by the project
manager that the system will be released only after the system reaches a
reliability level of at most 0.001 failures/CPU hour. From their experience the
management team estimates that the system will experience a total of 1200
failures over infinite time. Calculate the additional length of system testing
required before the system can be released.
– The system will experience a total of 1200 failures over infinite time. Thus, we
use the Basic model.
– λc and λr are the current failure intensity and the failure intensity at the time of
release.
– Assume that the current failure intensity has been achieved after executing the
system for τc hours.
– Let λr be achieved after testing the system for a total of τr hours.
Software Testing and QA Theory and Practice (Chapter 15: Software Reliability) © Naik & Tripathy 18
Reliability Models
• (Example continued)
– (τr - τc) denotes the additional execution time requires to achieve λr.
We can write λc and λr as follows.
λc = λ0.e -λ0 τc/v0
λr = λ0.e -λ0 τr/v0
λc/ λr = (λ0.e -λ0τc/v0
)/(λ0.e -λ0 τr/v0
)
= e (τr - τc) λ0/v0
ln(λc/ λr) = (τr - τc) λ0/v0
(τr - τc)= (v0/ λ0)ln(λc/ λr)
= (1200/25)ln(5/0.001)
= 408.825 hours
It is required to test the system for more time so that the CPU runs for another 408.825
hours to achieve the reliability level of 0.001 failures/hour.
Software Testing and QA Theory and Practice (Chapter 15: Software Reliability) © Naik & Tripathy 19
Summary
• Reliability is a user-oriented quality
factor relating to system operation.
• The chapter introduced the following.
– Fault and failure
– Execution and calendar time
– Time interval between failures
– Failures in periodic intervals
– Failure intensity
• Software reliability was defined in
two ways.
– The probability of failure-free
operation of a system for a specified
time in a given environment.
– Failure intensity is a measure of
reliability.
• User’s perception of reliability:
– The number of faults in a system.
– How a user operates a system.
• The number of faults in a system is
influenced by the following:
– Size and complexity of code.
– Development process.
– Personnel quality.
– Operational environment
• Operational profile
– A quantitative characterization of how
actual users operate a system.
– Tabular and graphical representation
• Applications of reliability metric
• Reliability models
– Six assumptions
– Two models
• Basic
• Logarithmic

Weitere ähnliche Inhalte

Was ist angesagt?

Planning for software quality assurance lecture 6
Planning for software quality assurance lecture 6Planning for software quality assurance lecture 6
Planning for software quality assurance lecture 6Abdul Basit
 
System Modelling
System ModellingSystem Modelling
System ModellingIanBriton
 
Testing concepts ppt
Testing concepts pptTesting concepts ppt
Testing concepts pptRathna Priya
 
Software Engineering (Software Quality Assurance)
Software Engineering (Software Quality Assurance)Software Engineering (Software Quality Assurance)
Software Engineering (Software Quality Assurance)ShudipPal
 
Design Concept software engineering
Design Concept software engineeringDesign Concept software engineering
Design Concept software engineeringDarshit Metaliya
 
testing strategies and tactics
 testing strategies and tactics testing strategies and tactics
testing strategies and tacticsPreeti Mishra
 
Regression testing
Regression testingRegression testing
Regression testingMohua Amin
 
source code metrics and other maintenance tools and techniques
source code metrics and other maintenance tools and techniquessource code metrics and other maintenance tools and techniques
source code metrics and other maintenance tools and techniquesSiva Priya
 
formal verification
formal verificationformal verification
formal verificationToseef Aslam
 
Software Testing Techniques
Software Testing TechniquesSoftware Testing Techniques
Software Testing TechniquesKiran Kumar
 
PRESCRIPTIVE PROCESS MODEL(SOFTWARE ENGINEERING)
PRESCRIPTIVE PROCESS MODEL(SOFTWARE ENGINEERING)PRESCRIPTIVE PROCESS MODEL(SOFTWARE ENGINEERING)
PRESCRIPTIVE PROCESS MODEL(SOFTWARE ENGINEERING)IrtazaAfzal3
 
Predict Software Reliability Before the Code is Written
Predict Software Reliability Before the Code is WrittenPredict Software Reliability Before the Code is Written
Predict Software Reliability Before the Code is WrittenAnn Marie Neufelder
 
Revised IEEE 1633 Recommended Practices for Software Reliability
Revised IEEE 1633 Recommended Practices for Software ReliabilityRevised IEEE 1633 Recommended Practices for Software Reliability
Revised IEEE 1633 Recommended Practices for Software ReliabilityAnn Marie Neufelder
 
Chapter 6 software metrics
Chapter 6 software metricsChapter 6 software metrics
Chapter 6 software metricsdespicable me
 
Software Engineering unit 4
Software Engineering unit 4Software Engineering unit 4
Software Engineering unit 4Abhimanyu Mishra
 
Software reliability models error seeding model and failure model-iv
Software reliability models error seeding model and failure model-ivSoftware reliability models error seeding model and failure model-iv
Software reliability models error seeding model and failure model-ivGurbakash Phonsa
 

Was ist angesagt? (20)

Planning for software quality assurance lecture 6
Planning for software quality assurance lecture 6Planning for software quality assurance lecture 6
Planning for software quality assurance lecture 6
 
System Modelling
System ModellingSystem Modelling
System Modelling
 
Testing concepts ppt
Testing concepts pptTesting concepts ppt
Testing concepts ppt
 
Software Engineering (Software Quality Assurance)
Software Engineering (Software Quality Assurance)Software Engineering (Software Quality Assurance)
Software Engineering (Software Quality Assurance)
 
Design Concept software engineering
Design Concept software engineeringDesign Concept software engineering
Design Concept software engineering
 
testing strategies and tactics
 testing strategies and tactics testing strategies and tactics
testing strategies and tactics
 
RTOS Basic Concepts
RTOS Basic ConceptsRTOS Basic Concepts
RTOS Basic Concepts
 
Regression testing
Regression testingRegression testing
Regression testing
 
source code metrics and other maintenance tools and techniques
source code metrics and other maintenance tools and techniquessource code metrics and other maintenance tools and techniques
source code metrics and other maintenance tools and techniques
 
formal verification
formal verificationformal verification
formal verification
 
Rayleigh model
Rayleigh modelRayleigh model
Rayleigh model
 
Os services
Os servicesOs services
Os services
 
Software Testing Techniques
Software Testing TechniquesSoftware Testing Techniques
Software Testing Techniques
 
PRESCRIPTIVE PROCESS MODEL(SOFTWARE ENGINEERING)
PRESCRIPTIVE PROCESS MODEL(SOFTWARE ENGINEERING)PRESCRIPTIVE PROCESS MODEL(SOFTWARE ENGINEERING)
PRESCRIPTIVE PROCESS MODEL(SOFTWARE ENGINEERING)
 
Predict Software Reliability Before the Code is Written
Predict Software Reliability Before the Code is WrittenPredict Software Reliability Before the Code is Written
Predict Software Reliability Before the Code is Written
 
Revised IEEE 1633 Recommended Practices for Software Reliability
Revised IEEE 1633 Recommended Practices for Software ReliabilityRevised IEEE 1633 Recommended Practices for Software Reliability
Revised IEEE 1633 Recommended Practices for Software Reliability
 
Software Reliability and Safety.pdf
Software Reliability and Safety.pdfSoftware Reliability and Safety.pdf
Software Reliability and Safety.pdf
 
Chapter 6 software metrics
Chapter 6 software metricsChapter 6 software metrics
Chapter 6 software metrics
 
Software Engineering unit 4
Software Engineering unit 4Software Engineering unit 4
Software Engineering unit 4
 
Software reliability models error seeding model and failure model-iv
Software reliability models error seeding model and failure model-ivSoftware reliability models error seeding model and failure model-iv
Software reliability models error seeding model and failure model-iv
 

Ähnlich wie Software Reliability Models Explained

Software Reliability_CS-3059_VISHAL_PADME.pptx
Software Reliability_CS-3059_VISHAL_PADME.pptxSoftware Reliability_CS-3059_VISHAL_PADME.pptx
Software Reliability_CS-3059_VISHAL_PADME.pptxVishalPadme2
 
Software Testing and Quality Assurance Assignment 2
Software Testing and Quality Assurance Assignment 2Software Testing and Quality Assurance Assignment 2
Software Testing and Quality Assurance Assignment 2Gurpreet singh
 
Ch13 system testexecution
Ch13 system testexecutionCh13 system testexecution
Ch13 system testexecutionabcxyz_abc
 
Software reliability & quality
Software reliability & qualitySoftware reliability & quality
Software reliability & qualityNur Islam
 
Some Commonly Asked Question For Software Testing
Some Commonly Asked Question For Software TestingSome Commonly Asked Question For Software Testing
Some Commonly Asked Question For Software TestingKumari Warsha Goel
 
Optimal Selection of Software Reliability Growth Model-A Study
Optimal Selection of Software Reliability Growth Model-A StudyOptimal Selection of Software Reliability Growth Model-A Study
Optimal Selection of Software Reliability Growth Model-A StudyIJEEE
 
Performance testing interview questions and answers
Performance testing interview questions and answersPerformance testing interview questions and answers
Performance testing interview questions and answersGaruda Trainings
 
Software engineering quality assurance and testing
Software engineering quality assurance and testingSoftware engineering quality assurance and testing
Software engineering quality assurance and testingBipul Roy Bpl
 
Manual Tester Interview Questions(1).pdf
Manual Tester Interview Questions(1).pdfManual Tester Interview Questions(1).pdf
Manual Tester Interview Questions(1).pdfSupriyaDongare
 
software Engineering process
software Engineering processsoftware Engineering process
software Engineering processRaheel Aslam
 
What is Test Matrix?
What is Test Matrix?What is Test Matrix?
What is Test Matrix?QA InfoTech
 
An Introduction to Software Testing Life Cycle
An Introduction to Software Testing Life CycleAn Introduction to Software Testing Life Cycle
An Introduction to Software Testing Life CycleKMSSolutionsMarketin
 
Manual testing interview questions and answers
Manual testing interview questions and answersManual testing interview questions and answers
Manual testing interview questions and answersRajnish Sharma
 
Sech1920 1200112979886874-3
Sech1920 1200112979886874-3Sech1920 1200112979886874-3
Sech1920 1200112979886874-3Mateti Anilraja
 
What is Performance Testing?
What is Performance Testing?What is Performance Testing?
What is Performance Testing?QA InfoTech
 
Non Functional Testing
Non Functional TestingNon Functional Testing
Non Functional TestingNishant Worah
 
Software Engineering Important Short Question for Exams
Software Engineering Important Short Question for ExamsSoftware Engineering Important Short Question for Exams
Software Engineering Important Short Question for ExamsMuhammadTalha436
 
Software testing and introduction to quality
Software testing and introduction to qualitySoftware testing and introduction to quality
Software testing and introduction to qualityDhanashriAmbre
 

Ähnlich wie Software Reliability Models Explained (20)

Software Reliability_CS-3059_VISHAL_PADME.pptx
Software Reliability_CS-3059_VISHAL_PADME.pptxSoftware Reliability_CS-3059_VISHAL_PADME.pptx
Software Reliability_CS-3059_VISHAL_PADME.pptx
 
Software Testing and Quality Assurance Assignment 2
Software Testing and Quality Assurance Assignment 2Software Testing and Quality Assurance Assignment 2
Software Testing and Quality Assurance Assignment 2
 
Ch13 system testexecution
Ch13 system testexecutionCh13 system testexecution
Ch13 system testexecution
 
Software reliability & quality
Software reliability & qualitySoftware reliability & quality
Software reliability & quality
 
Some Commonly Asked Question For Software Testing
Some Commonly Asked Question For Software TestingSome Commonly Asked Question For Software Testing
Some Commonly Asked Question For Software Testing
 
Optimal Selection of Software Reliability Growth Model-A Study
Optimal Selection of Software Reliability Growth Model-A StudyOptimal Selection of Software Reliability Growth Model-A Study
Optimal Selection of Software Reliability Growth Model-A Study
 
Performance testing interview questions and answers
Performance testing interview questions and answersPerformance testing interview questions and answers
Performance testing interview questions and answers
 
Software engineering quality assurance and testing
Software engineering quality assurance and testingSoftware engineering quality assurance and testing
Software engineering quality assurance and testing
 
Manual Tester Interview Questions(1).pdf
Manual Tester Interview Questions(1).pdfManual Tester Interview Questions(1).pdf
Manual Tester Interview Questions(1).pdf
 
software Engineering process
software Engineering processsoftware Engineering process
software Engineering process
 
What is Test Matrix?
What is Test Matrix?What is Test Matrix?
What is Test Matrix?
 
Performance testing and rpt
Performance testing and rptPerformance testing and rpt
Performance testing and rpt
 
An Introduction to Software Testing Life Cycle
An Introduction to Software Testing Life CycleAn Introduction to Software Testing Life Cycle
An Introduction to Software Testing Life Cycle
 
Manual testing interview questions and answers
Manual testing interview questions and answersManual testing interview questions and answers
Manual testing interview questions and answers
 
Sech1920 1200112979886874-3
Sech1920 1200112979886874-3Sech1920 1200112979886874-3
Sech1920 1200112979886874-3
 
What is Performance Testing?
What is Performance Testing?What is Performance Testing?
What is Performance Testing?
 
Non Functional Testing
Non Functional TestingNon Functional Testing
Non Functional Testing
 
Metrics
MetricsMetrics
Metrics
 
Software Engineering Important Short Question for Exams
Software Engineering Important Short Question for ExamsSoftware Engineering Important Short Question for Exams
Software Engineering Important Short Question for Exams
 
Software testing and introduction to quality
Software testing and introduction to qualitySoftware testing and introduction to quality
Software testing and introduction to quality
 

Kürzlich hochgeladen

APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICS
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICSAPPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICS
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICSKurinjimalarL3
 
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...ranjana rawat
 
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLS
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLSMANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLS
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLSSIVASHANKAR N
 
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINEMANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINESIVASHANKAR N
 
Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...
Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...
Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...Christo Ananth
 
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escortsranjana rawat
 
Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...
Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...
Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...Christo Ananth
 
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130Suhani Kapoor
 
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICS
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICSHARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICS
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICSRajkumarAkumalla
 
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur High Profile
 
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...Dr.Costas Sachpazis
 
Introduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptxIntroduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptxupamatechverse
 
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...Soham Mondal
 
Call Girls Pimpri Chinchwad Call Me 7737669865 Budget Friendly No Advance Boo...
Call Girls Pimpri Chinchwad Call Me 7737669865 Budget Friendly No Advance Boo...Call Girls Pimpri Chinchwad Call Me 7737669865 Budget Friendly No Advance Boo...
Call Girls Pimpri Chinchwad Call Me 7737669865 Budget Friendly No Advance Boo...roncy bisnoi
 
KubeKraft presentation @CloudNativeHooghly
KubeKraft presentation @CloudNativeHooghlyKubeKraft presentation @CloudNativeHooghly
KubeKraft presentation @CloudNativeHooghlysanyuktamishra911
 
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...ranjana rawat
 
Porous Ceramics seminar and technical writing
Porous Ceramics seminar and technical writingPorous Ceramics seminar and technical writing
Porous Ceramics seminar and technical writingrakeshbaidya232001
 
result management system report for college project
result management system report for college projectresult management system report for college project
result management system report for college projectTonystark477637
 
The Most Attractive Pune Call Girls Manchar 8250192130 Will You Miss This Cha...
The Most Attractive Pune Call Girls Manchar 8250192130 Will You Miss This Cha...The Most Attractive Pune Call Girls Manchar 8250192130 Will You Miss This Cha...
The Most Attractive Pune Call Girls Manchar 8250192130 Will You Miss This Cha...ranjana rawat
 

Kürzlich hochgeladen (20)

APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICS
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICSAPPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICS
APPLICATIONS-AC/DC DRIVES-OPERATING CHARACTERISTICS
 
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(ANJALI) Dange Chowk Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
 
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLS
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLSMANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLS
MANUFACTURING PROCESS-II UNIT-5 NC MACHINE TOOLS
 
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINEMANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
MANUFACTURING PROCESS-II UNIT-2 LATHE MACHINE
 
Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...
Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...
Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...
 
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
(MEERA) Dapodi Call Girls Just Call 7001035870 [ Cash on Delivery ] Pune Escorts
 
Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...
Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...
Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...
 
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
VIP Call Girls Service Hitech City Hyderabad Call +91-8250192130
 
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICS
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICSHARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICS
HARDNESS, FRACTURE TOUGHNESS AND STRENGTH OF CERAMICS
 
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Meera Call 7001035870 Meet With Nagpur Escorts
 
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
Sheet Pile Wall Design and Construction: A Practical Guide for Civil Engineer...
 
DJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINE
DJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINEDJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINE
DJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINE
 
Introduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptxIntroduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptx
 
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
OSVC_Meta-Data based Simulation Automation to overcome Verification Challenge...
 
Call Girls Pimpri Chinchwad Call Me 7737669865 Budget Friendly No Advance Boo...
Call Girls Pimpri Chinchwad Call Me 7737669865 Budget Friendly No Advance Boo...Call Girls Pimpri Chinchwad Call Me 7737669865 Budget Friendly No Advance Boo...
Call Girls Pimpri Chinchwad Call Me 7737669865 Budget Friendly No Advance Boo...
 
KubeKraft presentation @CloudNativeHooghly
KubeKraft presentation @CloudNativeHooghlyKubeKraft presentation @CloudNativeHooghly
KubeKraft presentation @CloudNativeHooghly
 
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
 
Porous Ceramics seminar and technical writing
Porous Ceramics seminar and technical writingPorous Ceramics seminar and technical writing
Porous Ceramics seminar and technical writing
 
result management system report for college project
result management system report for college projectresult management system report for college project
result management system report for college project
 
The Most Attractive Pune Call Girls Manchar 8250192130 Will You Miss This Cha...
The Most Attractive Pune Call Girls Manchar 8250192130 Will You Miss This Cha...The Most Attractive Pune Call Girls Manchar 8250192130 Will You Miss This Cha...
The Most Attractive Pune Call Girls Manchar 8250192130 Will You Miss This Cha...
 

Software Reliability Models Explained

  • 1. Software Testing and QA Theory and Practice (Chapter 15: Software Reliability) © Naik & Tripathy 1 Software Testing and Quality Assurance Theory and Practice Chapter 15 Software Reliability Prof. Abraham Paul Assistant Prof. VIT
  • 2. Software Testing and QA Theory and Practice (Chapter 15: Software Reliability) © Naik & Tripathy 2 Outline of the Chapter • What is Reliability? • Definitions of Software Reliability • Factors Influencing Software Reliability • Applications of Software Reliability • Operational Profiles • Reliability Models • Summary
  • 3. Software Testing and QA Theory and Practice (Chapter 15: Software Reliability) © Naik & Tripathy 3 What is Reliability? • Reliability is a broad concept. – It is applied whenever we expect something to behave in a certain way. • Reliability is one of the metrics that are used to measure quality. • It is a user-oriented quality factor relating to system operation. – Intuitively, if the users of a system rarely experience failure, the system is considered to be more reliable than one that fails more often. • A system without faults is considered to be highly reliable. – Constructing a correct system is a difficult task. – Even an incorrect system may be considered to be reliable if the frequency of failure is “acceptable.” • Key concepts in discussing reliability: – Fault – Failure – Time – Three kinds of time intervals: MTTR, MTTF, MTBF
  • 4. Software Testing and QA Theory and Practice (Chapter 15: Software Reliability) © Naik & Tripathy 4 What is Reliability? • Failure – A failure is said to occur if the observable outcome of a program execution is different from the expected outcome. • Fault – The adjudged cause of failure is called a fault. – Example: A failure may be cause by a defective block of code. • Time – Time is a key concept in the formulation of reliability. If the time gap between two successive failures is short, we say that the system is less reliable. – Two forms of time are considered. • Execution time (τ) • Calendar time (t)
  • 5. Software Testing and QA Theory and Practice (Chapter 15: Software Reliability) © Naik & Tripathy 5 What is Reliability? • MTTF: Mean Time To Failure • MTTR: Mean Time To Repair • MTBF: Mean Time Between Failures (= MTTF + MTTR) Figure 15.1: Relationship between MTTR, MTTF, and MTBF.
  • 6. Software Testing and QA Theory and Practice (Chapter 15: Software Reliability) © Naik & Tripathy 6 What is Reliability? • Two ways to measure reliability – Counting failures in periodic intervals • Observer the trend of cumulative failure count - µ(τ). – Failure intensity • Observe the trend of number of failures per unit time – λ(τ). • µ(τ) – This denotes the total number of failures observed until execution time τ from the beginning of system execution. • λ(τ) – This denotes the number of failures observed per unit time after τ time units of executing the system from the beginning. This is also called the failure intensity at time τ. • Relationship between λ(τ) and µ(τ) – λ(τ) = dµ(τ)/dτ
  • 7. Software Testing and QA Theory and Practice (Chapter 15: Software Reliability) © Naik & Tripathy 7 Definitions of Software Reliability • First definition – Software reliability is defined as the probability of failure-free operation of a software system for a specified time in a specified environment. • Key elements of the above definition – Probability of failure-free operation – Length of time of failure-free operation – A given execution environment • Example – The probability that a PC in a store is up and running for eight hours without crash is 0.99. • Second definition – Failure intensity is a measure of the reliability of a software system operating in a given environment. • Example: An air traffic control system fails once in two years. • Comparing the two – The first puts emphasis on MTTF, whereas the second on count.
  • 8. Software Testing and QA Theory and Practice (Chapter 15: Software Reliability) © Naik & Tripathy 8 Factors Influencing Software Reliability • A user’s perception of the reliability of a software depends upon two categories of information. – The number of faults present in the software. – The ways users operate the system. • This is known as the operational profile. • The fault count in a system is influenced by the following. – Size and complexity of code – Characteristics of the development process used – Education, experience, and training of development personnel – Operational environment
  • 9. Software Testing and QA Theory and Practice (Chapter 15: Software Reliability) © Naik & Tripathy 9 Applications of Software Reliability • Comparison of software engineering technologies – What is the cost of adopting a technology? – What is the return from the technology -- in terms of cost and quality? • Measuring the progress of system testing – Key question: How of testing has been done? – The failure intensity measure tells us about the present quality of the system: high intensity means more tests are to be performed. • Controlling the system in operation – The amount of change to a software for maintenance affects its reliability. Thus the amount of change to be effected in one go is determined by how much reliability we are ready to potentially lose. • Better insight into software development processes – Quantification of quality gives us a better insight into the development processes.
  • 10. Software Testing and QA Theory and Practice (Chapter 15: Software Reliability) © Naik & Tripathy 10 Operational Profiles • Developed at AT&T Bell Labs. • An OP describes how actual users operate a system. – An OP is a quantitative characterization of how a system will be used. • Two ways to represent operational profiles – Tabular – Graphical Table 15.1: An example of operational profile of a library information system. Figure 15.2: Graphical representation of operational profile of a library information system.
  • 11. Software Testing and QA Theory and Practice (Chapter 15: Software Reliability) © Naik & Tripathy 11 Operational Profiles • Use of operational profiles – For accurate estimation of the reliability of a system, test the system in the same way it will be actually used in the field. • Other uses of operational profiles – Use an OP as a guiding document in designing user interfaces. • The more frequently used operations should be easy to use. – Use an OP to design an early version of a software for release. • This contains the more frequently used operations. – Use an OP to determine where to put more resources.
  • 12. Software Testing and QA Theory and Practice (Chapter 15: Software Reliability) © Naik & Tripathy 12 Reliability Models • Main idea – We develop mathematical models for λ(τ) and µ(τ). • Basic assumptions in developing a reliability model – Faults in the program are independent. – Execution time between failures is large w.r.t. instruction execution time. – Potential test space covers its use space. – The set of inputs per test run is randomly chosen. – The fault causing a failure is immediately fixed or else its re-occurrence is not counted again.
  • 13. Software Testing and QA Theory and Practice (Chapter 15: Software Reliability) © Naik & Tripathy 13 Reliability Models • Intuitive idea – As we observe another system failure and the corresponding fault is fixed, there will be fewer number of faults remaining in the system and the failure intensity will be smaller with each fault fixed. – In other words, as the cumulative failure count increases, the failure intensity decreases. • Two decrement processes – Decrement process 1 • The decrease in failure intensity after observing a failure and fixing the corresponding fault is constant. – This gives us the Basic model. – Decrement process 2 • The decrease in failure intensity after observing a failure and fixing the corresponding fault is smaller than the previous decrease. – This gives us the Logarithmic model.
  • 14. Software Testing and QA Theory and Practice (Chapter 15: Software Reliability) © Naik & Tripathy 14 Reliability Models • Parameters of the models – λ0: The initial failure intensity observed at the beginning of system testing. – v0: The total number of system failures that we expect to observe over infinite time starting from the beginning of system testing. θ: A parameter representing n0n-linear drop in failure intensity in the Logarithmic model. Figure 15.3: Failure intensity λ as a function of cumulative failures µ.
  • 15. Software Testing and QA Theory and Practice (Chapter 15: Software Reliability) © Naik & Tripathy 15 Reliability Models • Basic model Assumption: λ(µ) = λ0 (1 - µ/v0) dµ(τ)/dτ = λ0 (1 - µ(τ)/v0) µ(τ) = λ0(1 - µ/v0) λ(τ) = λ0.e -λ0 τ/v0 • Logarithmic model Assumption: λ(µ) = λ0e-θµ dµ(τ)/dτ = λ0e-θµ(τ) µ(τ) = ln(λ0θτ + 1)/θ λ(τ) = λ0/(λ0θτ + 1) Figure 15.4: Failure intensity λ as a function of execution time τ (λ0= 9 failures/unit time,v0= 500 failures, θ = 0.0075).
  • 16. Software Testing and QA Theory and Practice (Chapter 15: Software Reliability) © Naik & Tripathy 16 Reliability Models Figure 15.4: Cumulative failure µ as a function of execution time τ (λ0= 9 failures/unit time,v0 = 500 failures, θ = 0.0075).
  • 17. Software Testing and QA Theory and Practice (Chapter 15: Software Reliability) © Naik & Tripathy 17 Reliability Models • Example Assume that a software system is undergoing system level testing. The initial failure intensity of the system was 25 failures/CPU hours, and the current failure intensity is 5 failures/CPU hour. It has been decided by the project manager that the system will be released only after the system reaches a reliability level of at most 0.001 failures/CPU hour. From their experience the management team estimates that the system will experience a total of 1200 failures over infinite time. Calculate the additional length of system testing required before the system can be released. – The system will experience a total of 1200 failures over infinite time. Thus, we use the Basic model. – λc and λr are the current failure intensity and the failure intensity at the time of release. – Assume that the current failure intensity has been achieved after executing the system for τc hours. – Let λr be achieved after testing the system for a total of τr hours.
  • 18. Software Testing and QA Theory and Practice (Chapter 15: Software Reliability) © Naik & Tripathy 18 Reliability Models • (Example continued) – (τr - τc) denotes the additional execution time requires to achieve λr. We can write λc and λr as follows. λc = λ0.e -λ0 τc/v0 λr = λ0.e -λ0 τr/v0 λc/ λr = (λ0.e -λ0τc/v0 )/(λ0.e -λ0 τr/v0 ) = e (τr - τc) λ0/v0 ln(λc/ λr) = (τr - τc) λ0/v0 (τr - τc)= (v0/ λ0)ln(λc/ λr) = (1200/25)ln(5/0.001) = 408.825 hours It is required to test the system for more time so that the CPU runs for another 408.825 hours to achieve the reliability level of 0.001 failures/hour.
  • 19. Software Testing and QA Theory and Practice (Chapter 15: Software Reliability) © Naik & Tripathy 19 Summary • Reliability is a user-oriented quality factor relating to system operation. • The chapter introduced the following. – Fault and failure – Execution and calendar time – Time interval between failures – Failures in periodic intervals – Failure intensity • Software reliability was defined in two ways. – The probability of failure-free operation of a system for a specified time in a given environment. – Failure intensity is a measure of reliability. • User’s perception of reliability: – The number of faults in a system. – How a user operates a system. • The number of faults in a system is influenced by the following: – Size and complexity of code. – Development process. – Personnel quality. – Operational environment • Operational profile – A quantitative characterization of how actual users operate a system. – Tabular and graphical representation • Applications of reliability metric • Reliability models – Six assumptions – Two models • Basic • Logarithmic

Hinweis der Redaktion

  1. ------------------------------------------------------------------ ------------------------------------------------------------------ ------------------------------------------------------------------- --------------------------------------------------------------------