SlideShare a Scribd company logo
A
SEMINAR
ON
SOFTWARE RELIABILITY MODELING
By:
Poonam Panwar
Regd. No. 951011002
Under The Supervision of:
Dr. Arvind Kumar Lal
Associate Professor
School of Mathematics & Computer Applications
Thapar University, Patiala-147004 (Punjab)
TOPICS COVERED
 What is Software Reliability?
 Software Failure Mechanisms
 Hardware vs Software
 Measuring Software Reliability
 Software Reliability Models
 Statistical Testing
 Conclusion
2
WHAT IS SOFTWARE RELİABİLİTY?
 Precisely it may be defined as a product’s
trustworthiness or dependability.
 The probability of failure-free software operation for a
specified period of time in a specified environment.
 Probability of the product working “correctly” over a
given period of time in a specified environment.
3
AREAS OF S/W RELIABILITY
 Software Reliability Modeling
 Prediction Analysis
 Reliability Measurement
 Defect Classification
 Trend Analysis
 Field Data Analysis
 Software Metrics
 Software Testing and Reliability
 Fault-Tolerance
 Fault Trees
 Software Reliability Simulation
 Software Reliability Tools
4
SOFTWARE CHARACTERISTICS
 Failure cause: Software defects are mainly design defects.
 Wear-out: Software does not have wear-out phase.
 Repairable system concept: Periodic restarts can help fix
software problems.
 Time dependency and life cycle: Software reliability is not a
function of operational time.
 Environmental factors: Do not affect Software reliability, except
it might affect program inputs.
 Reliability prediction: Software reliability can not be predicted
from any physical basis, since it depends completely on human
factors in design.
 Redundancy: Can not improve Software reliability if identical
software components are used.
 Interfaces: Software interfaces are purely conceptual rather
visual.
 Built with standard components: Well-understood and
extensively-tested standard parts will help improve
maintainability and reliability. But in software industry, this trend
is not observed. Code reuse has been around for some time, but to a
very limited extent. Strictly speaking there are no standard parts
for software, except some standardized logic structures.
5
SOFTWARE FAİLURE MECHANİSMS
 Design Faults: Software faults are mainly design faults
which are harder to visualize, classify, detect, and correct.
 Interfaces: Software can fail if interfaces are not correct.
(Interfaces are conceptual rather than visual in case of
software.)
 Errors, Ambiguities, Oversights or Misinterpretation
in the software requirement specification.
 Carelessness or Incompetence in writing code.
 Inadequate testing.
 Incorrect or Unexpected usage of the software.
 Other unforeseen problems.
6
HARDWARE RELIABILITY CURVE
7
SOFTWARE RELIABILITY CURVE
8
MEASURİNG SOFTWARE
RELİABİLİTY
 Current approaches for measuring software reliability are
basically parallel to those used for hardware reliability
assessment with appropriate modifications in account for
the inherent differences between software and hardware.
 A number of Software reliability models have been
proposed to address the problem of software reliability
measurement. These approaches are based mainly on the
failure history of software and can be classified according to
the nature of the failure process.
 Assessed value of the software reliability measure is always
relative to a given use environment. Two users exercising
two different sets of paths in the same software are likely to
have different values of software reliability.
 Measuring software reliability remains a difficult problem
because we don't have a good understanding of the nature
of software. 9
o Transient: Transient failures occur only for
certain inputs.
o Permanent: Permanent failures occur for all
input values.
o Recoverable: When recoverable failures occur
the system recovers with or without operator
intervention.
o Unrecoverable: the system may have to be
restarted.
o Cosmetic: May cause minor irritations. Do not
lead to incorrect results. Eg. mouse button has to
be clicked twice instead of once to invoke a GUI
function.
FAİLURE CLASSES
10
SOFTWARE RELİABİLİTY
MODELING TECHNIQUES
 Software reliability modeling techniques
can be divided into two subcategories:
Prediction Modeling
Estimation Modeling.
 Both kinds of modeling techniques are
based on observing and accumulating
failure data and analyzing with statistical
inference.
11
COMPARISON OF SOFTWARE
RELİABİLİTY MODELING TECHNIQUES
ISSUES PREDICTION MODELS ESTIMATION MODELS
DATA REFERENCE Uses historical data Uses data from the
current software
development effort
WHEN USED IN
DEVELOPMENT
CYCLE
Usually made prior to
development or test
phases; is available as
early as concept phase
Usually made later in life
cycle(after some data
have been collected);
cannot be used in
concept or development
phases
TIME FRAME Predict reliability for
future time.
Estimate reliability at
either present or future
time
SOFTWARE RELİABİLİTY MODELS
 A software reliability model specifies the form of a
random process that describes the behavior of
software failures with respect to time.
 Software reliability models have emerged as
people try to understand the characteristics of how
and why software fails, and try to quantify
software reliability.
 Over 200 models have been developed since the
early 1970s, but how to quantify software
reliability still remains largely unresolved.
 There is no single model that can be used in all
situations. No model is complete or even
representative.
13
CATEGORIES OF SOFTWARE
RELIABILITY MODELS WITH KEY
ASSUMPTIONS
 Times Between Failures (TBF) Models
* Independent times between failures.
* Equal probability of the exposure of each fault.
* Embedded faults are independent of each other.
* Faults are removed after each occurrence.
* No new faults introduced during correction, i.e., perfect fault removal.
 Fault Count (FC) Models
* Testing intervals are independent of each other.
* Testing during intervals is reasonably homogeneous.
* Numbers of faults detected during non overlapping intervals are
independent of each other.
 Fault Seeding (FS) Models
* Seeded faults are randomly distributed in the program.
* Indigenous and seeded faults have equal probabilities of being detected.
 Input Domain Based (IDB) Models
* Input profile distribution is known.
* Random testing is used.
* Input domain can be partitioned into equivalent classes. 14
SOFTWARE RELIABILITY MODELS
15
16
17
COMPONENTS OF A SOFTWARE
RELİABİLİTY MODEL
 Most software models contain  the
following parts:
Assumptions,
Factors,
A mathematical function which relates
the reliability with the factors, which is
usually a higher order exponential or
logarithmic function.
18
SOME WELL KNOWN SOFTWARE
RELIABILITY MODELS
 Jelinsky and Moranda Model
 Basic Execution Time Model
 Logarithmic Poisson Time Model
 The Bug Seeding Model
 Shooman Model
 Littlewood-Verrall Model
 Goel-Okumoto Model
 Musa-Okumoto Model
19
This model is the earliest and probably the best known
reliability model. It proposed a failure intensity function
in the form:
λ(t)=φ(N-i+1)
Where
φ= constant of proportionality
N= total number of errors present
i= number of errors found by time interval ti
In this model each time an error is repaired reliability
does not increase by a constant amount.
Reliability improvement due to fixing of an error is
assumed to be proportional to the number of errors
present in the system at that time.
JELINSKI AND MORANDA MODEL
20
BASIC EXECUTION TIME MODEL
 This model was developed by J.D. Musa in 1979 and is
based on execution time.
 In this model, the decrease in failure intensity, as a
function of the number of failures observed, is
constant and is given as:
 Where λo: Initial Failure Intensity
 Vo: Number of failures experienced, if a program is
executed for infinite time period.
 µ: Average or expected number of failures experienced
at a given period of time.
 τ: execution time.
21
LOGARITHMIC POISSON TIME
MODEL
 This model is also developed by Musa et. al.
[MUSA79].
 The failure intensity function is different here as
compared to basic model. In this case the failure
intensity function decreases exponentially whereas it is
constant for basic model.
λ(µ)= λo exp(-θ µ)
Where
θ: called the failure intensity decay parameter. (represents the
relative change of failure intensity per failure experienced)
 The expected number of failures for this model is
always infinite at infinite time.
 At larger value of execution time, the logarithmic
poison time model will have larger value of failure
intensity than the basic model.
22
There is no universally applicable software
reliability model. So the given process is followed
to deploy a model.
SELECTION OF MODEL
After fitting a model
describing the failure
process, the total
number of faults in the
code, future failure
intensity and additional
time required to achieve
a failure intensity
objective can be
estimated.
23
UNCERTAINTIES IN SOFTWARE
RELİABİLİTY MODELING
TECHNIQUES
 There are two main types of uncertainties
which render any reliability measurement
inaccurate:
 Type 1 Uncertainty:
 our lack of knowledge about how the system will be
used, i.e. its operational profile
 Type 2 Uncertainty:
 reflects our lack of knowledge about the effect of
fault removal.
 When we fix a fault we are not sure if the corrections are
complete and successful and no other faults are
introduced
 Even if the faults are fixed properly we do not know how
much will be the improvement to inter-failure time. 24
STATİSTİCAL TESTİNG
 Statistical testing is a technique in which a
model of the statistical distribution of the input
is used to construct representative test cases.
 The objective of statistical testing is to determine
reliability rather than discover errors.
 It is different from defect testing.
 Different users have different operational profile
i.e. they use the system in different ways
(formally, operational profile).
 In statistical testing the input data is divided
into a number of input classes e.g. create, edit,
print, file operations, etc.
25
PERFORMING A STATISTICAL TEST
 Determine the operational profile of the software:
This can be determined by analyzing the usage
pattern.
 Manually select or automatically generate a set
of test data:
corresponding to the operational profile.
 Apply test cases to the program:
record execution time between each failure
it may not be appropriate to use raw execution
time
 After a statistically significant number of failures
have been observed:
reliability can be computed. 26
CONCLUSİONS
 Software reliability is a key part in
software quality.
 Software reliability improvement is hard.
 There are no generic models.
 Measurement is very important for
finding the correct model.
 Statistical testing should be used but it is
not easy.
 Software Reliability Modelling is not
simple.
27
1. Jintao Zeng, Jinzhong Li, Xiaohui Zeng, Wenlang Luo “A Prototype System of
Software Reliability Prediction and estimation” ,third International
symposium on Intelligent Information Technology and Security Informatics by
IEEE Computer Society, 2010.
2. Michael R. Lyu “Software Reliability Engineering: A Roadmap”, Future of
Software Engineering(FOSE’07) by IEEE, 2007.
3. Bing Chao, XiaoDong Zhu, Qiang Li, AnCe Huang “ Reliability Management
in Software Requirement Analysis”, IEEE International Conference on
Management of Innovation and Technology, 2006.
4. Rajesh Kumar Bawa, Arvind Kumar Lal and Navdeep Singh Jaggi “A Model
for Analysis of Software Reliability and Availability”, Proceedings of RPN
March 2004.
5. K K Aggarwal & Yogesh Singh “Software Engineering” 3rd
Edition, New Age
International Publishers, 2008.
6. Michael R. Lyu “Handbook of Software Reliability Engineering”, Computer
Society Press, 2006.
7. J.D. Musa “Software Reliability Engineering: More Reliable Software Faster
and Cheaper” 2nd Edition, AuthorHouse, 2004 .
8. K. S. Trivedi “Probability and Statistics with Reliability, Queuing and
Computer Science Applications” 2nd Edition, John Wiley and Sons, 2002.
References:
28

More Related Content

What's hot

Software maintenance Unit5
Software maintenance  Unit5Software maintenance  Unit5
Software maintenance Unit5
Mohammad Faizan
 
Software reliability growth model
Software reliability growth modelSoftware reliability growth model
Software reliability growth model
Himanshu
 
Software Metrics - Software Engineering
Software Metrics - Software EngineeringSoftware Metrics - Software Engineering
Software Metrics - Software Engineering
Drishti Bhalla
 
Software quality assurance
Software quality assuranceSoftware quality assurance
Software quality assurance
Aman Adhikari
 
Software testing
Software testingSoftware testing
software characteristics
software characteristicssoftware characteristics
software characteristics
Muhammad Sikandar Mustafa
 
Rayleigh model
Rayleigh modelRayleigh model
Rayleigh model
Roy Antony Arnold G
 
Software design, software engineering
Software design, software engineeringSoftware design, software engineering
Software design, software engineering
Rupesh Vaishnav
 
Programming team structure
Programming team structureProgramming team structure
Programming team structure
NancyBeaulah_R
 
Project Planning in Software Engineering
Project Planning in Software EngineeringProject Planning in Software Engineering
Project Planning in Software Engineering
Fáber D. Giraldo
 
V model presentation
V model presentationV model presentation
V model presentation
Niat Murad
 
Software quality
Software qualitySoftware quality
Software qualityjagadeesan
 
Software Engineering (Project Scheduling)
Software Engineering (Project Scheduling)Software Engineering (Project Scheduling)
Software Engineering (Project Scheduling)
ShudipPal
 
Software Testing Fundamentals
Software Testing FundamentalsSoftware Testing Fundamentals
Software Testing FundamentalsChankey Pathak
 
Software testing principles
Software testing principlesSoftware testing principles
Software testing principles
Donato Di Pierro
 
Software development process models
Software development process modelsSoftware development process models
Software development process models
Muhammed Afsal Villan
 
Software development methodologies
Software development methodologiesSoftware development methodologies
Software development methodologies
Ankita Lachhwani
 
Software Engineering (Software Quality Assurance)
Software Engineering (Software Quality Assurance)Software Engineering (Software Quality Assurance)
Software Engineering (Software Quality Assurance)
ShudipPal
 

What's hot (20)

Software maintenance Unit5
Software maintenance  Unit5Software maintenance  Unit5
Software maintenance Unit5
 
Software reliability growth model
Software reliability growth modelSoftware reliability growth model
Software reliability growth model
 
Software Metrics - Software Engineering
Software Metrics - Software EngineeringSoftware Metrics - Software Engineering
Software Metrics - Software Engineering
 
Software quality assurance
Software quality assuranceSoftware quality assurance
Software quality assurance
 
Software testing
Software testingSoftware testing
Software testing
 
software characteristics
software characteristicssoftware characteristics
software characteristics
 
Rayleigh model
Rayleigh modelRayleigh model
Rayleigh model
 
Software design, software engineering
Software design, software engineeringSoftware design, software engineering
Software design, software engineering
 
Programming team structure
Programming team structureProgramming team structure
Programming team structure
 
Software quality
Software qualitySoftware quality
Software quality
 
Project Planning in Software Engineering
Project Planning in Software EngineeringProject Planning in Software Engineering
Project Planning in Software Engineering
 
V model presentation
V model presentationV model presentation
V model presentation
 
Chapter 15
Chapter 15Chapter 15
Chapter 15
 
Software quality
Software qualitySoftware quality
Software quality
 
Software Engineering (Project Scheduling)
Software Engineering (Project Scheduling)Software Engineering (Project Scheduling)
Software Engineering (Project Scheduling)
 
Software Testing Fundamentals
Software Testing FundamentalsSoftware Testing Fundamentals
Software Testing Fundamentals
 
Software testing principles
Software testing principlesSoftware testing principles
Software testing principles
 
Software development process models
Software development process modelsSoftware development process models
Software development process models
 
Software development methodologies
Software development methodologiesSoftware development methodologies
Software development methodologies
 
Software Engineering (Software Quality Assurance)
Software Engineering (Software Quality Assurance)Software Engineering (Software Quality Assurance)
Software Engineering (Software Quality Assurance)
 

Viewers also liked

Chapter 7 software reliability
Chapter 7 software reliabilityChapter 7 software reliability
Chapter 7 software reliability
despicable me
 
Software reliability engineering
Software reliability engineeringSoftware reliability engineering
Software reliability engineeringMark Turner CRP
 
Reliability growth models
Reliability growth modelsReliability growth models
Reliability growth models
Roy Antony Arnold G
 
Reliability growth models for quality management
Reliability growth models for quality managementReliability growth models for quality management
Reliability growth models for quality management
Roy Antony Arnold G
 
Software and Hardware Reliability
Software and Hardware ReliabilitySoftware and Hardware Reliability
Software and Hardware ReliabilitySandeep Patalay
 
Software Reliability Engineering
Software Reliability EngineeringSoftware Reliability Engineering
Software Reliability Engineering
guest90cec6
 
TESEM: A Tool for Verifying Security Design Pattern Applications
TESEM: A Tool for Verifying Security Design Pattern ApplicationsTESEM: A Tool for Verifying Security Design Pattern Applications
TESEM: A Tool for Verifying Security Design Pattern Applications
Hironori Washizaki
 
Successive Software Reliability Growth Model: A Modular Approach
Successive Software Reliability Growth Model: A Modular ApproachSuccessive Software Reliability Growth Model: A Modular Approach
Successive Software Reliability Growth Model: A Modular Approach
ajeetmnnit
 
Information20121017
Information20121017Information20121017
Information20121017b-slash
 
Fault avoidance and fault tolerance
Fault avoidance and fault toleranceFault avoidance and fault tolerance
Fault avoidance and fault tolerance
Jabez Winston
 
ラーニング・バイ・コンテスト (Learning by Contest) ~ プログラミング学習のシフト ~
ラーニング・バイ・コンテスト(Learning by Contest)~ プログラミング学習のシフト ~ラーニング・バイ・コンテスト(Learning by Contest)~ プログラミング学習のシフト ~
ラーニング・バイ・コンテスト (Learning by Contest) ~ プログラミング学習のシフト ~
Hironori Washizaki
 
Software reliability engineering process
Software reliability engineering processSoftware reliability engineering process
Software reliability engineering process
Himanshu
 
Rayleigh model
Rayleigh modelRayleigh model
Rayleigh model
Roy Antony Arnold G
 
A Bug Tracking System Is A Software Application
A Bug Tracking System Is A Software ApplicationA Bug Tracking System Is A Software Application
A Bug Tracking System Is A Software Application
Abhishek Pasricha
 
ATAGTR2017 Differentiation using Testing Tools and Automation in the BFS COTS...
ATAGTR2017 Differentiation using Testing Tools and Automation in the BFS COTS...ATAGTR2017 Differentiation using Testing Tools and Automation in the BFS COTS...
ATAGTR2017 Differentiation using Testing Tools and Automation in the BFS COTS...
Agile Testing Alliance
 
ATAGTR2017 Keeping pace with Product Evolution: UI Automation Framework Guide...
ATAGTR2017 Keeping pace with Product Evolution: UI Automation Framework Guide...ATAGTR2017 Keeping pace with Product Evolution: UI Automation Framework Guide...
ATAGTR2017 Keeping pace with Product Evolution: UI Automation Framework Guide...
Agile Testing Alliance
 
ATAGTR2017 Cost-effective Security Testing Approaches for Web, Mobile & Enter...
ATAGTR2017 Cost-effective Security Testing Approaches for Web, Mobile & Enter...ATAGTR2017 Cost-effective Security Testing Approaches for Web, Mobile & Enter...
ATAGTR2017 Cost-effective Security Testing Approaches for Web, Mobile & Enter...
Agile Testing Alliance
 
Testing Frameworks And Methodologies
Testing Frameworks And MethodologiesTesting Frameworks And Methodologies
Testing Frameworks And MethodologiesSteven Cahill
 

Viewers also liked (19)

Chapter 7 software reliability
Chapter 7 software reliabilityChapter 7 software reliability
Chapter 7 software reliability
 
Software reliability engineering
Software reliability engineeringSoftware reliability engineering
Software reliability engineering
 
Quality & Reliability in Software Engineering
Quality & Reliability in Software EngineeringQuality & Reliability in Software Engineering
Quality & Reliability in Software Engineering
 
Reliability growth models
Reliability growth modelsReliability growth models
Reliability growth models
 
Reliability growth models for quality management
Reliability growth models for quality managementReliability growth models for quality management
Reliability growth models for quality management
 
Software and Hardware Reliability
Software and Hardware ReliabilitySoftware and Hardware Reliability
Software and Hardware Reliability
 
Software Reliability Engineering
Software Reliability EngineeringSoftware Reliability Engineering
Software Reliability Engineering
 
TESEM: A Tool for Verifying Security Design Pattern Applications
TESEM: A Tool for Verifying Security Design Pattern ApplicationsTESEM: A Tool for Verifying Security Design Pattern Applications
TESEM: A Tool for Verifying Security Design Pattern Applications
 
Successive Software Reliability Growth Model: A Modular Approach
Successive Software Reliability Growth Model: A Modular ApproachSuccessive Software Reliability Growth Model: A Modular Approach
Successive Software Reliability Growth Model: A Modular Approach
 
Information20121017
Information20121017Information20121017
Information20121017
 
Fault avoidance and fault tolerance
Fault avoidance and fault toleranceFault avoidance and fault tolerance
Fault avoidance and fault tolerance
 
ラーニング・バイ・コンテスト (Learning by Contest) ~ プログラミング学習のシフト ~
ラーニング・バイ・コンテスト(Learning by Contest)~ プログラミング学習のシフト ~ラーニング・バイ・コンテスト(Learning by Contest)~ プログラミング学習のシフト ~
ラーニング・バイ・コンテスト (Learning by Contest) ~ プログラミング学習のシフト ~
 
Software reliability engineering process
Software reliability engineering processSoftware reliability engineering process
Software reliability engineering process
 
Rayleigh model
Rayleigh modelRayleigh model
Rayleigh model
 
A Bug Tracking System Is A Software Application
A Bug Tracking System Is A Software ApplicationA Bug Tracking System Is A Software Application
A Bug Tracking System Is A Software Application
 
ATAGTR2017 Differentiation using Testing Tools and Automation in the BFS COTS...
ATAGTR2017 Differentiation using Testing Tools and Automation in the BFS COTS...ATAGTR2017 Differentiation using Testing Tools and Automation in the BFS COTS...
ATAGTR2017 Differentiation using Testing Tools and Automation in the BFS COTS...
 
ATAGTR2017 Keeping pace with Product Evolution: UI Automation Framework Guide...
ATAGTR2017 Keeping pace with Product Evolution: UI Automation Framework Guide...ATAGTR2017 Keeping pace with Product Evolution: UI Automation Framework Guide...
ATAGTR2017 Keeping pace with Product Evolution: UI Automation Framework Guide...
 
ATAGTR2017 Cost-effective Security Testing Approaches for Web, Mobile & Enter...
ATAGTR2017 Cost-effective Security Testing Approaches for Web, Mobile & Enter...ATAGTR2017 Cost-effective Security Testing Approaches for Web, Mobile & Enter...
ATAGTR2017 Cost-effective Security Testing Approaches for Web, Mobile & Enter...
 
Testing Frameworks And Methodologies
Testing Frameworks And MethodologiesTesting Frameworks And Methodologies
Testing Frameworks And Methodologies
 

Similar to Software Reliability

A Review on Parameter Estimation Techniques of Software Reliability Growth Mo...
A Review on Parameter Estimation Techniques of Software Reliability Growth Mo...A Review on Parameter Estimation Techniques of Software Reliability Growth Mo...
A Review on Parameter Estimation Techniques of Software Reliability Growth Mo...
Editor IJCATR
 
Spm unit v-software reliability-
Spm unit v-software reliability-Spm unit v-software reliability-
Spm unit v-software reliability-
Kanchana Devi
 
Volume 2-issue-6-1983-1986
Volume 2-issue-6-1983-1986Volume 2-issue-6-1983-1986
Volume 2-issue-6-1983-1986Editor IJARCET
 
Volume 2-issue-6-1983-1986
Volume 2-issue-6-1983-1986Volume 2-issue-6-1983-1986
Volume 2-issue-6-1983-1986Editor IJARCET
 
A Survey of Software Reliability factor
A Survey of Software Reliability factorA Survey of Software Reliability factor
A Survey of Software Reliability factor
IOSR Journals
 
A Combined Approach of Software Metrics and Software Fault Analysis to Estima...
A Combined Approach of Software Metrics and Software Fault Analysis to Estima...A Combined Approach of Software Metrics and Software Fault Analysis to Estima...
A Combined Approach of Software Metrics and Software Fault Analysis to Estima...
IOSR Journals
 
IJCER (www.ijceronline.com) International Journal of computational Engineerin...
IJCER (www.ijceronline.com) International Journal of computational Engineerin...IJCER (www.ijceronline.com) International Journal of computational Engineerin...
IJCER (www.ijceronline.com) International Journal of computational Engineerin...ijceronline
 
IJCER (www.ijceronline.com) International Journal of computational Engineerin...
IJCER (www.ijceronline.com) International Journal of computational Engineerin...IJCER (www.ijceronline.com) International Journal of computational Engineerin...
IJCER (www.ijceronline.com) International Journal of computational Engineerin...
ijceronline
 
J034057065
J034057065J034057065
J034057065
ijceronline
 
A Novel Approach to Derive the Average-Case Behavior of Distributed Embedded ...
A Novel Approach to Derive the Average-Case Behavior of Distributed Embedded ...A Novel Approach to Derive the Average-Case Behavior of Distributed Embedded ...
A Novel Approach to Derive the Average-Case Behavior of Distributed Embedded ...
ijccmsjournal
 
SRGM Analyzers Tool of SDLC for Software Improving Quality
SRGM Analyzers Tool of SDLC for Software Improving QualitySRGM Analyzers Tool of SDLC for Software Improving Quality
SRGM Analyzers Tool of SDLC for Software Improving Quality
IJERA Editor
 
Developing software analyzers tool using software reliability growth model
Developing software analyzers tool using software reliability growth modelDeveloping software analyzers tool using software reliability growth model
Developing software analyzers tool using software reliability growth modelIAEME Publication
 
Developing software analyzers tool using software reliability growth model
Developing software analyzers tool using software reliability growth modelDeveloping software analyzers tool using software reliability growth model
Developing software analyzers tool using software reliability growth modelIAEME Publication
 
Software Fault Tolerance
Software Fault ToleranceSoftware Fault Tolerance
Software Fault Tolerance
Ankit Singh
 
Parameter Estimation of GOEL-OKUMOTO Model by Comparing ACO with MLE Method
Parameter Estimation of GOEL-OKUMOTO Model by Comparing ACO with MLE MethodParameter Estimation of GOEL-OKUMOTO Model by Comparing ACO with MLE Method
Parameter Estimation of GOEL-OKUMOTO Model by Comparing ACO with MLE Method
IRJET Journal
 
D0423022028
D0423022028D0423022028
D0423022028
ijceronline
 
A survey of predicting software reliability using machine learning methods
A survey of predicting software reliability using machine learning methodsA survey of predicting software reliability using machine learning methods
A survey of predicting software reliability using machine learning methods
IAESIJAI
 
Software testing
Software testingSoftware testing
Software testing
Rico-j Laurente
 
A Novel Approach to Improve Software Defect Prediction Accuracy Using Machine...
A Novel Approach to Improve Software Defect Prediction Accuracy Using Machine...A Novel Approach to Improve Software Defect Prediction Accuracy Using Machine...
A Novel Approach to Improve Software Defect Prediction Accuracy Using Machine...
Shakas Technologies
 
IRJET- A Study on Software Reliability Models
IRJET-  	  A Study on Software Reliability ModelsIRJET-  	  A Study on Software Reliability Models
IRJET- A Study on Software Reliability Models
IRJET Journal
 

Similar to Software Reliability (20)

A Review on Parameter Estimation Techniques of Software Reliability Growth Mo...
A Review on Parameter Estimation Techniques of Software Reliability Growth Mo...A Review on Parameter Estimation Techniques of Software Reliability Growth Mo...
A Review on Parameter Estimation Techniques of Software Reliability Growth Mo...
 
Spm unit v-software reliability-
Spm unit v-software reliability-Spm unit v-software reliability-
Spm unit v-software reliability-
 
Volume 2-issue-6-1983-1986
Volume 2-issue-6-1983-1986Volume 2-issue-6-1983-1986
Volume 2-issue-6-1983-1986
 
Volume 2-issue-6-1983-1986
Volume 2-issue-6-1983-1986Volume 2-issue-6-1983-1986
Volume 2-issue-6-1983-1986
 
A Survey of Software Reliability factor
A Survey of Software Reliability factorA Survey of Software Reliability factor
A Survey of Software Reliability factor
 
A Combined Approach of Software Metrics and Software Fault Analysis to Estima...
A Combined Approach of Software Metrics and Software Fault Analysis to Estima...A Combined Approach of Software Metrics and Software Fault Analysis to Estima...
A Combined Approach of Software Metrics and Software Fault Analysis to Estima...
 
IJCER (www.ijceronline.com) International Journal of computational Engineerin...
IJCER (www.ijceronline.com) International Journal of computational Engineerin...IJCER (www.ijceronline.com) International Journal of computational Engineerin...
IJCER (www.ijceronline.com) International Journal of computational Engineerin...
 
IJCER (www.ijceronline.com) International Journal of computational Engineerin...
IJCER (www.ijceronline.com) International Journal of computational Engineerin...IJCER (www.ijceronline.com) International Journal of computational Engineerin...
IJCER (www.ijceronline.com) International Journal of computational Engineerin...
 
J034057065
J034057065J034057065
J034057065
 
A Novel Approach to Derive the Average-Case Behavior of Distributed Embedded ...
A Novel Approach to Derive the Average-Case Behavior of Distributed Embedded ...A Novel Approach to Derive the Average-Case Behavior of Distributed Embedded ...
A Novel Approach to Derive the Average-Case Behavior of Distributed Embedded ...
 
SRGM Analyzers Tool of SDLC for Software Improving Quality
SRGM Analyzers Tool of SDLC for Software Improving QualitySRGM Analyzers Tool of SDLC for Software Improving Quality
SRGM Analyzers Tool of SDLC for Software Improving Quality
 
Developing software analyzers tool using software reliability growth model
Developing software analyzers tool using software reliability growth modelDeveloping software analyzers tool using software reliability growth model
Developing software analyzers tool using software reliability growth model
 
Developing software analyzers tool using software reliability growth model
Developing software analyzers tool using software reliability growth modelDeveloping software analyzers tool using software reliability growth model
Developing software analyzers tool using software reliability growth model
 
Software Fault Tolerance
Software Fault ToleranceSoftware Fault Tolerance
Software Fault Tolerance
 
Parameter Estimation of GOEL-OKUMOTO Model by Comparing ACO with MLE Method
Parameter Estimation of GOEL-OKUMOTO Model by Comparing ACO with MLE MethodParameter Estimation of GOEL-OKUMOTO Model by Comparing ACO with MLE Method
Parameter Estimation of GOEL-OKUMOTO Model by Comparing ACO with MLE Method
 
D0423022028
D0423022028D0423022028
D0423022028
 
A survey of predicting software reliability using machine learning methods
A survey of predicting software reliability using machine learning methodsA survey of predicting software reliability using machine learning methods
A survey of predicting software reliability using machine learning methods
 
Software testing
Software testingSoftware testing
Software testing
 
A Novel Approach to Improve Software Defect Prediction Accuracy Using Machine...
A Novel Approach to Improve Software Defect Prediction Accuracy Using Machine...A Novel Approach to Improve Software Defect Prediction Accuracy Using Machine...
A Novel Approach to Improve Software Defect Prediction Accuracy Using Machine...
 
IRJET- A Study on Software Reliability Models
IRJET-  	  A Study on Software Reliability ModelsIRJET-  	  A Study on Software Reliability Models
IRJET- A Study on Software Reliability Models
 

More from ranapoonam1

A Powerpoint Presentation on DevOps and DevOps Tools
A Powerpoint Presentation on DevOps and DevOps ToolsA Powerpoint Presentation on DevOps and DevOps Tools
A Powerpoint Presentation on DevOps and DevOps Tools
ranapoonam1
 
Jenkins introduction and creating a pipeline in Jenkins
Jenkins introduction and creating a pipeline in JenkinsJenkins introduction and creating a pipeline in Jenkins
Jenkins introduction and creating a pipeline in Jenkins
ranapoonam1
 
An Introduction to Jenkins in Devops Process
An Introduction to Jenkins in Devops ProcessAn Introduction to Jenkins in Devops Process
An Introduction to Jenkins in Devops Process
ranapoonam1
 
Software Development Life Cycle Models (SDLC)
Software Development Life Cycle Models (SDLC)Software Development Life Cycle Models (SDLC)
Software Development Life Cycle Models (SDLC)
ranapoonam1
 
Introduction to DevOps and its Applications
Introduction to DevOps and its ApplicationsIntroduction to DevOps and its Applications
Introduction to DevOps and its Applications
ranapoonam1
 
Amazon web services and their applications
Amazon web services and their applicationsAmazon web services and their applications
Amazon web services and their applications
ranapoonam1
 
Understanding Cloud Computing by BS Infotech
Understanding Cloud Computing by BS InfotechUnderstanding Cloud Computing by BS Infotech
Understanding Cloud Computing by BS Infotech
ranapoonam1
 
Software Testing strategies, their types and Levels
Software Testing strategies, their types and LevelsSoftware Testing strategies, their types and Levels
Software Testing strategies, their types and Levels
ranapoonam1
 
INTRODUCTION AND HISTORY OF R PROGRAMMING.pdf
INTRODUCTION AND HISTORY OF R PROGRAMMING.pdfINTRODUCTION AND HISTORY OF R PROGRAMMING.pdf
INTRODUCTION AND HISTORY OF R PROGRAMMING.pdf
ranapoonam1
 
2_SDLC.pptx
2_SDLC.pptx2_SDLC.pptx
2_SDLC.pptx
ranapoonam1
 
1_Introduction.pptx
1_Introduction.pptx1_Introduction.pptx
1_Introduction.pptx
ranapoonam1
 
2_MACHINE LEARNING.pptx
2_MACHINE LEARNING.pptx2_MACHINE LEARNING.pptx
2_MACHINE LEARNING.pptx
ranapoonam1
 
1_Introduction.pptx
1_Introduction.pptx1_Introduction.pptx
1_Introduction.pptx
ranapoonam1
 
Chapter 11-PCP.pdf
Chapter 11-PCP.pdfChapter 11-PCP.pdf
Chapter 11-PCP.pdf
ranapoonam1
 
8_Internet.pdf
8_Internet.pdf8_Internet.pdf
8_Internet.pdf
ranapoonam1
 
2_ICT.pdf
2_ICT.pdf2_ICT.pdf
2_ICT.pdf
ranapoonam1
 
Linux lecture5
Linux lecture5Linux lecture5
Linux lecture5
ranapoonam1
 

More from ranapoonam1 (17)

A Powerpoint Presentation on DevOps and DevOps Tools
A Powerpoint Presentation on DevOps and DevOps ToolsA Powerpoint Presentation on DevOps and DevOps Tools
A Powerpoint Presentation on DevOps and DevOps Tools
 
Jenkins introduction and creating a pipeline in Jenkins
Jenkins introduction and creating a pipeline in JenkinsJenkins introduction and creating a pipeline in Jenkins
Jenkins introduction and creating a pipeline in Jenkins
 
An Introduction to Jenkins in Devops Process
An Introduction to Jenkins in Devops ProcessAn Introduction to Jenkins in Devops Process
An Introduction to Jenkins in Devops Process
 
Software Development Life Cycle Models (SDLC)
Software Development Life Cycle Models (SDLC)Software Development Life Cycle Models (SDLC)
Software Development Life Cycle Models (SDLC)
 
Introduction to DevOps and its Applications
Introduction to DevOps and its ApplicationsIntroduction to DevOps and its Applications
Introduction to DevOps and its Applications
 
Amazon web services and their applications
Amazon web services and their applicationsAmazon web services and their applications
Amazon web services and their applications
 
Understanding Cloud Computing by BS Infotech
Understanding Cloud Computing by BS InfotechUnderstanding Cloud Computing by BS Infotech
Understanding Cloud Computing by BS Infotech
 
Software Testing strategies, their types and Levels
Software Testing strategies, their types and LevelsSoftware Testing strategies, their types and Levels
Software Testing strategies, their types and Levels
 
INTRODUCTION AND HISTORY OF R PROGRAMMING.pdf
INTRODUCTION AND HISTORY OF R PROGRAMMING.pdfINTRODUCTION AND HISTORY OF R PROGRAMMING.pdf
INTRODUCTION AND HISTORY OF R PROGRAMMING.pdf
 
2_SDLC.pptx
2_SDLC.pptx2_SDLC.pptx
2_SDLC.pptx
 
1_Introduction.pptx
1_Introduction.pptx1_Introduction.pptx
1_Introduction.pptx
 
2_MACHINE LEARNING.pptx
2_MACHINE LEARNING.pptx2_MACHINE LEARNING.pptx
2_MACHINE LEARNING.pptx
 
1_Introduction.pptx
1_Introduction.pptx1_Introduction.pptx
1_Introduction.pptx
 
Chapter 11-PCP.pdf
Chapter 11-PCP.pdfChapter 11-PCP.pdf
Chapter 11-PCP.pdf
 
8_Internet.pdf
8_Internet.pdf8_Internet.pdf
8_Internet.pdf
 
2_ICT.pdf
2_ICT.pdf2_ICT.pdf
2_ICT.pdf
 
Linux lecture5
Linux lecture5Linux lecture5
Linux lecture5
 

Recently uploaded

space technology lecture notes on satellite
space technology lecture notes on satellitespace technology lecture notes on satellite
space technology lecture notes on satellite
ongomchris
 
Pile Foundation by Venkatesh Taduvai (Sub Geotechnical Engineering II)-conver...
Pile Foundation by Venkatesh Taduvai (Sub Geotechnical Engineering II)-conver...Pile Foundation by Venkatesh Taduvai (Sub Geotechnical Engineering II)-conver...
Pile Foundation by Venkatesh Taduvai (Sub Geotechnical Engineering II)-conver...
AJAYKUMARPUND1
 
DESIGN A COTTON SEED SEPARATION MACHINE.docx
DESIGN A COTTON SEED SEPARATION MACHINE.docxDESIGN A COTTON SEED SEPARATION MACHINE.docx
DESIGN A COTTON SEED SEPARATION MACHINE.docx
FluxPrime1
 
HYDROPOWER - Hydroelectric power generation
HYDROPOWER - Hydroelectric power generationHYDROPOWER - Hydroelectric power generation
HYDROPOWER - Hydroelectric power generation
Robbie Edward Sayers
 
Standard Reomte Control Interface - Neometrix
Standard Reomte Control Interface - NeometrixStandard Reomte Control Interface - Neometrix
Standard Reomte Control Interface - Neometrix
Neometrix_Engineering_Pvt_Ltd
 
Hybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdf
Hybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdfHybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdf
Hybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdf
fxintegritypublishin
 
ML for identifying fraud using open blockchain data.pptx
ML for identifying fraud using open blockchain data.pptxML for identifying fraud using open blockchain data.pptx
ML for identifying fraud using open blockchain data.pptx
Vijay Dialani, PhD
 
H.Seo, ICLR 2024, MLILAB, KAIST AI.pdf
H.Seo,  ICLR 2024, MLILAB,  KAIST AI.pdfH.Seo,  ICLR 2024, MLILAB,  KAIST AI.pdf
H.Seo, ICLR 2024, MLILAB, KAIST AI.pdf
MLILAB
 
Immunizing Image Classifiers Against Localized Adversary Attacks
Immunizing Image Classifiers Against Localized Adversary AttacksImmunizing Image Classifiers Against Localized Adversary Attacks
Immunizing Image Classifiers Against Localized Adversary Attacks
gerogepatton
 
Planning Of Procurement o different goods and services
Planning Of Procurement o different goods and servicesPlanning Of Procurement o different goods and services
Planning Of Procurement o different goods and services
JoytuBarua2
 
Gen AI Study Jams _ For the GDSC Leads in India.pdf
Gen AI Study Jams _ For the GDSC Leads in India.pdfGen AI Study Jams _ For the GDSC Leads in India.pdf
Gen AI Study Jams _ For the GDSC Leads in India.pdf
gdsczhcet
 
road safety engineering r s e unit 3.pdf
road safety engineering  r s e unit 3.pdfroad safety engineering  r s e unit 3.pdf
road safety engineering r s e unit 3.pdf
VENKATESHvenky89705
 
Design and Analysis of Algorithms-DP,Backtracking,Graphs,B&B
Design and Analysis of Algorithms-DP,Backtracking,Graphs,B&BDesign and Analysis of Algorithms-DP,Backtracking,Graphs,B&B
Design and Analysis of Algorithms-DP,Backtracking,Graphs,B&B
Sreedhar Chowdam
 
The role of big data in decision making.
The role of big data in decision making.The role of big data in decision making.
The role of big data in decision making.
ankuprajapati0525
 
block diagram and signal flow graph representation
block diagram and signal flow graph representationblock diagram and signal flow graph representation
block diagram and signal flow graph representation
Divya Somashekar
 
Water Industry Process Automation and Control Monthly - May 2024.pdf
Water Industry Process Automation and Control Monthly - May 2024.pdfWater Industry Process Automation and Control Monthly - May 2024.pdf
Water Industry Process Automation and Control Monthly - May 2024.pdf
Water Industry Process Automation & Control
 
WATER CRISIS and its solutions-pptx 1234
WATER CRISIS and its solutions-pptx 1234WATER CRISIS and its solutions-pptx 1234
WATER CRISIS and its solutions-pptx 1234
AafreenAbuthahir2
 
AKS UNIVERSITY Satna Final Year Project By OM Hardaha.pdf
AKS UNIVERSITY Satna Final Year Project By OM Hardaha.pdfAKS UNIVERSITY Satna Final Year Project By OM Hardaha.pdf
AKS UNIVERSITY Satna Final Year Project By OM Hardaha.pdf
SamSarthak3
 
Industrial Training at Shahjalal Fertilizer Company Limited (SFCL)
Industrial Training at Shahjalal Fertilizer Company Limited (SFCL)Industrial Training at Shahjalal Fertilizer Company Limited (SFCL)
Industrial Training at Shahjalal Fertilizer Company Limited (SFCL)
MdTanvirMahtab2
 
The Benefits and Techniques of Trenchless Pipe Repair.pdf
The Benefits and Techniques of Trenchless Pipe Repair.pdfThe Benefits and Techniques of Trenchless Pipe Repair.pdf
The Benefits and Techniques of Trenchless Pipe Repair.pdf
Pipe Restoration Solutions
 

Recently uploaded (20)

space technology lecture notes on satellite
space technology lecture notes on satellitespace technology lecture notes on satellite
space technology lecture notes on satellite
 
Pile Foundation by Venkatesh Taduvai (Sub Geotechnical Engineering II)-conver...
Pile Foundation by Venkatesh Taduvai (Sub Geotechnical Engineering II)-conver...Pile Foundation by Venkatesh Taduvai (Sub Geotechnical Engineering II)-conver...
Pile Foundation by Venkatesh Taduvai (Sub Geotechnical Engineering II)-conver...
 
DESIGN A COTTON SEED SEPARATION MACHINE.docx
DESIGN A COTTON SEED SEPARATION MACHINE.docxDESIGN A COTTON SEED SEPARATION MACHINE.docx
DESIGN A COTTON SEED SEPARATION MACHINE.docx
 
HYDROPOWER - Hydroelectric power generation
HYDROPOWER - Hydroelectric power generationHYDROPOWER - Hydroelectric power generation
HYDROPOWER - Hydroelectric power generation
 
Standard Reomte Control Interface - Neometrix
Standard Reomte Control Interface - NeometrixStandard Reomte Control Interface - Neometrix
Standard Reomte Control Interface - Neometrix
 
Hybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdf
Hybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdfHybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdf
Hybrid optimization of pumped hydro system and solar- Engr. Abdul-Azeez.pdf
 
ML for identifying fraud using open blockchain data.pptx
ML for identifying fraud using open blockchain data.pptxML for identifying fraud using open blockchain data.pptx
ML for identifying fraud using open blockchain data.pptx
 
H.Seo, ICLR 2024, MLILAB, KAIST AI.pdf
H.Seo,  ICLR 2024, MLILAB,  KAIST AI.pdfH.Seo,  ICLR 2024, MLILAB,  KAIST AI.pdf
H.Seo, ICLR 2024, MLILAB, KAIST AI.pdf
 
Immunizing Image Classifiers Against Localized Adversary Attacks
Immunizing Image Classifiers Against Localized Adversary AttacksImmunizing Image Classifiers Against Localized Adversary Attacks
Immunizing Image Classifiers Against Localized Adversary Attacks
 
Planning Of Procurement o different goods and services
Planning Of Procurement o different goods and servicesPlanning Of Procurement o different goods and services
Planning Of Procurement o different goods and services
 
Gen AI Study Jams _ For the GDSC Leads in India.pdf
Gen AI Study Jams _ For the GDSC Leads in India.pdfGen AI Study Jams _ For the GDSC Leads in India.pdf
Gen AI Study Jams _ For the GDSC Leads in India.pdf
 
road safety engineering r s e unit 3.pdf
road safety engineering  r s e unit 3.pdfroad safety engineering  r s e unit 3.pdf
road safety engineering r s e unit 3.pdf
 
Design and Analysis of Algorithms-DP,Backtracking,Graphs,B&B
Design and Analysis of Algorithms-DP,Backtracking,Graphs,B&BDesign and Analysis of Algorithms-DP,Backtracking,Graphs,B&B
Design and Analysis of Algorithms-DP,Backtracking,Graphs,B&B
 
The role of big data in decision making.
The role of big data in decision making.The role of big data in decision making.
The role of big data in decision making.
 
block diagram and signal flow graph representation
block diagram and signal flow graph representationblock diagram and signal flow graph representation
block diagram and signal flow graph representation
 
Water Industry Process Automation and Control Monthly - May 2024.pdf
Water Industry Process Automation and Control Monthly - May 2024.pdfWater Industry Process Automation and Control Monthly - May 2024.pdf
Water Industry Process Automation and Control Monthly - May 2024.pdf
 
WATER CRISIS and its solutions-pptx 1234
WATER CRISIS and its solutions-pptx 1234WATER CRISIS and its solutions-pptx 1234
WATER CRISIS and its solutions-pptx 1234
 
AKS UNIVERSITY Satna Final Year Project By OM Hardaha.pdf
AKS UNIVERSITY Satna Final Year Project By OM Hardaha.pdfAKS UNIVERSITY Satna Final Year Project By OM Hardaha.pdf
AKS UNIVERSITY Satna Final Year Project By OM Hardaha.pdf
 
Industrial Training at Shahjalal Fertilizer Company Limited (SFCL)
Industrial Training at Shahjalal Fertilizer Company Limited (SFCL)Industrial Training at Shahjalal Fertilizer Company Limited (SFCL)
Industrial Training at Shahjalal Fertilizer Company Limited (SFCL)
 
The Benefits and Techniques of Trenchless Pipe Repair.pdf
The Benefits and Techniques of Trenchless Pipe Repair.pdfThe Benefits and Techniques of Trenchless Pipe Repair.pdf
The Benefits and Techniques of Trenchless Pipe Repair.pdf
 

Software Reliability

  • 1. A SEMINAR ON SOFTWARE RELIABILITY MODELING By: Poonam Panwar Regd. No. 951011002 Under The Supervision of: Dr. Arvind Kumar Lal Associate Professor School of Mathematics & Computer Applications Thapar University, Patiala-147004 (Punjab)
  • 2. TOPICS COVERED  What is Software Reliability?  Software Failure Mechanisms  Hardware vs Software  Measuring Software Reliability  Software Reliability Models  Statistical Testing  Conclusion 2
  • 3. WHAT IS SOFTWARE RELİABİLİTY?  Precisely it may be defined as a product’s trustworthiness or dependability.  The probability of failure-free software operation for a specified period of time in a specified environment.  Probability of the product working “correctly” over a given period of time in a specified environment. 3
  • 4. AREAS OF S/W RELIABILITY  Software Reliability Modeling  Prediction Analysis  Reliability Measurement  Defect Classification  Trend Analysis  Field Data Analysis  Software Metrics  Software Testing and Reliability  Fault-Tolerance  Fault Trees  Software Reliability Simulation  Software Reliability Tools 4
  • 5. SOFTWARE CHARACTERISTICS  Failure cause: Software defects are mainly design defects.  Wear-out: Software does not have wear-out phase.  Repairable system concept: Periodic restarts can help fix software problems.  Time dependency and life cycle: Software reliability is not a function of operational time.  Environmental factors: Do not affect Software reliability, except it might affect program inputs.  Reliability prediction: Software reliability can not be predicted from any physical basis, since it depends completely on human factors in design.  Redundancy: Can not improve Software reliability if identical software components are used.  Interfaces: Software interfaces are purely conceptual rather visual.  Built with standard components: Well-understood and extensively-tested standard parts will help improve maintainability and reliability. But in software industry, this trend is not observed. Code reuse has been around for some time, but to a very limited extent. Strictly speaking there are no standard parts for software, except some standardized logic structures. 5
  • 6. SOFTWARE FAİLURE MECHANİSMS  Design Faults: Software faults are mainly design faults which are harder to visualize, classify, detect, and correct.  Interfaces: Software can fail if interfaces are not correct. (Interfaces are conceptual rather than visual in case of software.)  Errors, Ambiguities, Oversights or Misinterpretation in the software requirement specification.  Carelessness or Incompetence in writing code.  Inadequate testing.  Incorrect or Unexpected usage of the software.  Other unforeseen problems. 6
  • 9. MEASURİNG SOFTWARE RELİABİLİTY  Current approaches for measuring software reliability are basically parallel to those used for hardware reliability assessment with appropriate modifications in account for the inherent differences between software and hardware.  A number of Software reliability models have been proposed to address the problem of software reliability measurement. These approaches are based mainly on the failure history of software and can be classified according to the nature of the failure process.  Assessed value of the software reliability measure is always relative to a given use environment. Two users exercising two different sets of paths in the same software are likely to have different values of software reliability.  Measuring software reliability remains a difficult problem because we don't have a good understanding of the nature of software. 9
  • 10. o Transient: Transient failures occur only for certain inputs. o Permanent: Permanent failures occur for all input values. o Recoverable: When recoverable failures occur the system recovers with or without operator intervention. o Unrecoverable: the system may have to be restarted. o Cosmetic: May cause minor irritations. Do not lead to incorrect results. Eg. mouse button has to be clicked twice instead of once to invoke a GUI function. FAİLURE CLASSES 10
  • 11. SOFTWARE RELİABİLİTY MODELING TECHNIQUES  Software reliability modeling techniques can be divided into two subcategories: Prediction Modeling Estimation Modeling.  Both kinds of modeling techniques are based on observing and accumulating failure data and analyzing with statistical inference. 11
  • 12. COMPARISON OF SOFTWARE RELİABİLİTY MODELING TECHNIQUES ISSUES PREDICTION MODELS ESTIMATION MODELS DATA REFERENCE Uses historical data Uses data from the current software development effort WHEN USED IN DEVELOPMENT CYCLE Usually made prior to development or test phases; is available as early as concept phase Usually made later in life cycle(after some data have been collected); cannot be used in concept or development phases TIME FRAME Predict reliability for future time. Estimate reliability at either present or future time
  • 13. SOFTWARE RELİABİLİTY MODELS  A software reliability model specifies the form of a random process that describes the behavior of software failures with respect to time.  Software reliability models have emerged as people try to understand the characteristics of how and why software fails, and try to quantify software reliability.  Over 200 models have been developed since the early 1970s, but how to quantify software reliability still remains largely unresolved.  There is no single model that can be used in all situations. No model is complete or even representative. 13
  • 14. CATEGORIES OF SOFTWARE RELIABILITY MODELS WITH KEY ASSUMPTIONS  Times Between Failures (TBF) Models * Independent times between failures. * Equal probability of the exposure of each fault. * Embedded faults are independent of each other. * Faults are removed after each occurrence. * No new faults introduced during correction, i.e., perfect fault removal.  Fault Count (FC) Models * Testing intervals are independent of each other. * Testing during intervals is reasonably homogeneous. * Numbers of faults detected during non overlapping intervals are independent of each other.  Fault Seeding (FS) Models * Seeded faults are randomly distributed in the program. * Indigenous and seeded faults have equal probabilities of being detected.  Input Domain Based (IDB) Models * Input profile distribution is known. * Random testing is used. * Input domain can be partitioned into equivalent classes. 14
  • 16. 16
  • 17. 17
  • 18. COMPONENTS OF A SOFTWARE RELİABİLİTY MODEL  Most software models contain  the following parts: Assumptions, Factors, A mathematical function which relates the reliability with the factors, which is usually a higher order exponential or logarithmic function. 18
  • 19. SOME WELL KNOWN SOFTWARE RELIABILITY MODELS  Jelinsky and Moranda Model  Basic Execution Time Model  Logarithmic Poisson Time Model  The Bug Seeding Model  Shooman Model  Littlewood-Verrall Model  Goel-Okumoto Model  Musa-Okumoto Model 19
  • 20. This model is the earliest and probably the best known reliability model. It proposed a failure intensity function in the form: λ(t)=φ(N-i+1) Where φ= constant of proportionality N= total number of errors present i= number of errors found by time interval ti In this model each time an error is repaired reliability does not increase by a constant amount. Reliability improvement due to fixing of an error is assumed to be proportional to the number of errors present in the system at that time. JELINSKI AND MORANDA MODEL 20
  • 21. BASIC EXECUTION TIME MODEL  This model was developed by J.D. Musa in 1979 and is based on execution time.  In this model, the decrease in failure intensity, as a function of the number of failures observed, is constant and is given as:  Where λo: Initial Failure Intensity  Vo: Number of failures experienced, if a program is executed for infinite time period.  µ: Average or expected number of failures experienced at a given period of time.  τ: execution time. 21
  • 22. LOGARITHMIC POISSON TIME MODEL  This model is also developed by Musa et. al. [MUSA79].  The failure intensity function is different here as compared to basic model. In this case the failure intensity function decreases exponentially whereas it is constant for basic model. λ(µ)= λo exp(-θ µ) Where θ: called the failure intensity decay parameter. (represents the relative change of failure intensity per failure experienced)  The expected number of failures for this model is always infinite at infinite time.  At larger value of execution time, the logarithmic poison time model will have larger value of failure intensity than the basic model. 22
  • 23. There is no universally applicable software reliability model. So the given process is followed to deploy a model. SELECTION OF MODEL After fitting a model describing the failure process, the total number of faults in the code, future failure intensity and additional time required to achieve a failure intensity objective can be estimated. 23
  • 24. UNCERTAINTIES IN SOFTWARE RELİABİLİTY MODELING TECHNIQUES  There are two main types of uncertainties which render any reliability measurement inaccurate:  Type 1 Uncertainty:  our lack of knowledge about how the system will be used, i.e. its operational profile  Type 2 Uncertainty:  reflects our lack of knowledge about the effect of fault removal.  When we fix a fault we are not sure if the corrections are complete and successful and no other faults are introduced  Even if the faults are fixed properly we do not know how much will be the improvement to inter-failure time. 24
  • 25. STATİSTİCAL TESTİNG  Statistical testing is a technique in which a model of the statistical distribution of the input is used to construct representative test cases.  The objective of statistical testing is to determine reliability rather than discover errors.  It is different from defect testing.  Different users have different operational profile i.e. they use the system in different ways (formally, operational profile).  In statistical testing the input data is divided into a number of input classes e.g. create, edit, print, file operations, etc. 25
  • 26. PERFORMING A STATISTICAL TEST  Determine the operational profile of the software: This can be determined by analyzing the usage pattern.  Manually select or automatically generate a set of test data: corresponding to the operational profile.  Apply test cases to the program: record execution time between each failure it may not be appropriate to use raw execution time  After a statistically significant number of failures have been observed: reliability can be computed. 26
  • 27. CONCLUSİONS  Software reliability is a key part in software quality.  Software reliability improvement is hard.  There are no generic models.  Measurement is very important for finding the correct model.  Statistical testing should be used but it is not easy.  Software Reliability Modelling is not simple. 27
  • 28. 1. Jintao Zeng, Jinzhong Li, Xiaohui Zeng, Wenlang Luo “A Prototype System of Software Reliability Prediction and estimation” ,third International symposium on Intelligent Information Technology and Security Informatics by IEEE Computer Society, 2010. 2. Michael R. Lyu “Software Reliability Engineering: A Roadmap”, Future of Software Engineering(FOSE’07) by IEEE, 2007. 3. Bing Chao, XiaoDong Zhu, Qiang Li, AnCe Huang “ Reliability Management in Software Requirement Analysis”, IEEE International Conference on Management of Innovation and Technology, 2006. 4. Rajesh Kumar Bawa, Arvind Kumar Lal and Navdeep Singh Jaggi “A Model for Analysis of Software Reliability and Availability”, Proceedings of RPN March 2004. 5. K K Aggarwal & Yogesh Singh “Software Engineering” 3rd Edition, New Age International Publishers, 2008. 6. Michael R. Lyu “Handbook of Software Reliability Engineering”, Computer Society Press, 2006. 7. J.D. Musa “Software Reliability Engineering: More Reliable Software Faster and Cheaper” 2nd Edition, AuthorHouse, 2004 . 8. K. S. Trivedi “Probability and Statistics with Reliability, Queuing and Computer Science Applications” 2nd Edition, John Wiley and Sons, 2002. References: 28