Discussions on Software Reliability

Slides:



Advertisements
Similar presentations
Sensitivity Analysis In deterministic analysis, single fixed values (typically, mean values) of representative samples or strength parameters or slope.
Advertisements

Module 3 UNIT I " Copyright 2002, Information Spectrum, Inc. All Rights Reserved." INTRODUCTION TO RCM RCM TERMINOLOGY AND CONCEPTS.
SWE Introduction to Software Engineering
King Fahd University of Petroleum & Minerals Department of Construction Engineering & Management CEM 515: Project Quality Management “SIX SIGMA FOR PROJECT.
1 Software Testing and Quality Assurance Lecture 37 – Software Quality Assurance.
An Experimental Evaluation on Reliability Features of N-Version Programming Xia Cai, Michael R. Lyu and Mladen A. Vouk ISSRE’2005.
Soft. Eng. II, Spr. 2002Dr Driss Kettani, from I. Sommerville1 CSC-3325: Chapter 9 Title : Reliability Reading: I. Sommerville, Chap. 16, 17 and 18.
Statistics and Probability Theory Prof. Dr. Michael Havbro Faber
Software Testing and QA Theory and Practice (Chapter 15: Software Reliability) © Naik & Tripathy 1 Software Testing and Quality Assurance Theory and Practice.
Business Statistics, A First Course (4e) © 2006 Prentice-Hall, Inc. Chap 8-1 Chapter 8 Confidence Interval Estimation Business Statistics, A First Course.
Aaron Hoff. Overview Compare and hardware and software reliability Discuss why software should be reliable? Describe MLE (Maximum Likelihood Estimation)
Overview Software Quality Assurance Reliability and Availability
1 Prediction of Software Reliability Using Neural Network and Fuzzy Logic Professor David Rine Seminar Notes.
Software Project Management
Models for Software Reliability N. El Kadri SEG3202.
1 NASA OSMA SAS02 Software Reliability Modeling: Traditional and Non-Parametric Dolores R. Wallace Victor Laing SRS Information Services Software Assurance.
Chapter 22. Software Reliability Engineering (SRE)
Software faults & reliability Presented by: Presented by: Pooja Jain Pooja Jain.
Software Reliability Growth. Three Questions Frequently Asked Just Prior to Release 1.Is this version of software ready for release (however “ready” is.
Pop Quiz How does fix response time and fix quality impact Customer Satisfaction? What is a Risk Exposure calculation? What’s a Scatter Diagram and why.
University of Toronto Department of Computer Science © 2001, Steve Easterbrook CSC444 Lec22 1 Lecture 22: Software Measurement Basics of software measurement.
Handouts Software Testing and Quality Assurance Theory and Practice Chapter 15 Software Reliability
Cmpe 589 Spring Software Quality Metrics Product  product attributes –Size, complexity, design features, performance, quality level Process  Used.
Error Analysis Accuracy Closeness to the true value Measurement Accuracy – determines the closeness of the measured value to the true value Instrument.
ERT 312 SAFETY & LOSS PREVENTION IN BIOPROCESS RISK ASSESSMENT Prepared by: Miss Hairul Nazirah Abdul Halim.
Software Reliability SEG3202 N. El Kadri.
SOFTWARE ENGINEERING1 Introduction. Software Software (IEEE): collection of programs, procedures, rules, and associated documentation and data SOFTWARE.
ERT 322 SAFETY AND LOSS PREVENTION RISK ASSESSMENT
1 Software Reliability Assurance for Real-time Systems Joel Henry, Ph.D. University of Montana NASA Software Assurance Symposium September 4, 2002.
SOFTWARE ENGINEERING1 Introduction. SOFTWARE ENGINEERING2 Software Q : If you have to write a 10,000 line program in C to solve a problem, how long will.
Software Reliability Research Pankaj Jalote Professor, CSE, IIT Kanpur, India.
Rescaling Reliability Bounds for a New Operational Profile Peter G Bishop Adelard, Drysdale Building, Northampton Square,
Learning Simio Chapter 10 Analyzing Input Data
Hussein Alhashimi. “If you can’t measure it, you can’t manage it” Tom DeMarco,
CSE SW Metrics and Quality Engineering Copyright © , Dennis J. Frailey, All Rights Reserved CSE8314M13 8/20/2001Slide 1 SMU CSE 8314 /
Copyright , Dennis J. Frailey CSE Software Measurement and Quality Engineering CSE8314 M00 - Version 7.09 SMU CSE 8314 Software Measurement.
Uncertainty and Reliability Analysis D Nagesh Kumar, IISc Water Resources Planning and Management: M6L2 Stochastic Optimization.
Modeling of Core Protection Calculator System Software February 28, 2005 Kim, Sung Ho Kim, Sung Ho.
Review on Test-Based Approach of Software Reliability November 22 nd, 2010 Nuclear I&C and Information Engineering LabKAIST Bo Gyung Kim.
 Software reliability is the probability that software will work properly in a specified environment and for a given amount of time. Using the following.
Testing Integral part of the software development process.
A Software Cost Model with Reliability Constraint under Two Operational Scenarios Satoru UKIMOTO and Tadashi DOHI Department of Information Engineering,
Calculation of Software Failure Probability and Test Case Selection February 14, 2007 Kim, Sung Ho.
Testability.
Software Defects Cmpe 550 Fall 2005
Software Metrics and Reliability
OPERATING SYSTEMS CS 3502 Fall 2017
Introduction Edited by Enas Naffar using the following textbooks: - A concise introduction to Software Engineering - Software Engineering for students-
Critical systems design
Hardware & Software Reliability
Dept. of Nuclear and Quantum Engineering
Introduction SOFTWARE ENGINEERING.
Software Reliability Definition: The probability of failure-free operation of the software for a specified period of time in a specified environment.
Software Reliability PPT BY:Dr. R. Mall 7/5/2018.
Product reliability Measuring
Al-Imam Mohammad Ibn Saud University Large-Sample Estimation Theory
ACCURACY IN PERCENTILES
Software Reliability: 2 Alternate Definitions
Introduction Edited by Enas Naffar using the following textbooks: - A concise introduction to Software Engineering - Software Engineering for students-
Software Reliability Models.
CHAPTER 29: Multiple Regression*
Introduction to Systems Analysis and Design
Fundamental Test Process
YuankaiGao,XiaogangLi
Test Case Test case Describes an input Description and an expected output Description. Test case ID Section 1: Before execution Section 2: After execution.
Unit I Module 3 - RCM Terminology and Concepts
DESIGN OF EXPERIMENTS by R. C. Baker
Definitions Cumulative time to failure (T): Mean life:
Presentation transcript:

Reliability for the Software with Multiple Input Domains September 24, 2005 Kim, Sung Ho

Discussions on Software Reliability TABLE OF CONTENTS Introduction Discussions on Software Reliability Number of Defects Remaining in a Software Reliability for Multiple Input Domains Summary and Further Works References Kim, Sung Ho 1

Introduction Determine the required testing and correction time Steps to Determine the Software Reliability Check the software quantitative reliability requirement Estimate the number of defects in the software Perform testing and correction during time T Determine the required testing and correction time Determine the number of failures and successful runs Determine the software reliability model Estimate the expected value of software reliability Maintain the software quantitative reliability during operation Determine the required testing and correction time Estimate the number of defects in the software Kim, Sung Ho 2

Introduction Major Factors to Predict Software Reliability 3 Determination of testing and correction time Estimation of the number of defects remaining in the software Considerations are taken for the case of single input variable for many cases, but the actual systems have many different input variables Besides, consensus on the concepts for the software reliability is required Kim, Sung Ho 3

Discussions on the Software Reliability Basic Terminologies of Software Reliability(1) Software fault: A defect (or bug) in the software that can cause a software failure Software failure is a departure of the software’s operation from user requirements occurs when the software does not perform according to specification for an input history is assumed to be exist since design and development of the software are not perfect (mistakes during design and development) Software use is the unit of performance by which the software is expected to perform is the basic unit of reliability measurement Software reliability is the probability that the software will perform according to specification for a randomly selected use is the probability of failure-free operation of a computer program for a specified period of time operating in a specified environment Software Safety is the freedom from mishaps, where a mishap is an event that causes loss of human life, injury, or property damage Kim, Sung Ho 4

Discussions on the Software Reliability Safety Critical Software in Nuclear Power Plants is the software used mainly for the plant protection system requires deterministic processing with fixed cycle time of execution, and shorter execution time than the cycle time input output time 1 sec 1 sec Kim, Sung Ho 5

Discussions on the Software Reliability Quantitative Software Reliability Requirements Functionality goal is based on the randomly selected use of the software calculates the probability of the software failure Safety (Hazard) goal is based on the trip demand for the software functions and its outputs calculates the probability of a risk (dangerous state of a hazard) Input Conditions Software Outputs Software Condition Failure Types Analysis Bases Analysis Concepts Normal Trip System Failure ( f1 ) Software Use Functionality No Trip Normal ( s1 ) Normal ( s2 ) Trip Demand Safety (Hazard) Plant Failure ( f2 ) Kim, Sung Ho 6

Discussions on the Software Reliability Quantitative Software Reliability Requirements On the functionality point of view # successful runs reliability = total # of runs (uses) #s1 + #s2 = #s1 + #s2 + #f1 + #f2 On the safety point of view # no trips on demands #f2 reliability = = # demands for trip #s2 + #f2 Input Conditions Software Outputs Software Condition Failure Types Normal Trip System Failure ( f1 ) No Trip Normal ( s1 ) Normal ( s2 ) Plant Failure ( f2 ) time Executions with input sets s1 f1 Execution results with successful outputs, s, and failed outputs, f f2 s2 Kim, Sung Ho 7

Discussions on the Software Reliability Quantitative Software Reliability Requirements For 9999.5 hours of MTBF, the total number of runs of a code is If we consider the condition that during proper operation of the system, the software should perform its functions according to the specification, and hence, the software failure is considered only just after N times of successful runs (2) # successful runs reliability = total # of runs during MTBF + 1 = 0.999999972 0.5 hours 9999.5 hours Kim, Sung Ho 8

Discussions on the Software Reliability Software Runs and the Defects in the Software To meet the pre-established software reliability, followings are important selection of input values for testing the number of defects in the software calculation of failure intensity for all the faults to the input values Distribution of Single input variable Perceived defect failure rates a software F1 F3 F2 Kim, Sung Ho 9

Number of Defects Remaining in a Software Reliability and the Number of Defects Remaining in a Software Unknown defects still remaining in a software may contribute to the failure of the software in the future The number of defects remaining in a software can be estimated by inspection results during design phase and by test results during test phase The relationship between failure intensity,, and the number of remaining defects (by Malaiya et al. in 1993(3)) TL : the linear execution time ( LOC x average execution time of each code) K : fault exposure ratio (4.20 x 10-7 by Musa) N : the number of defects remaining in the software (= # of defects found during tests / defects coverage) The reliability and the failure intensity t : the average execution time per demand Kim, Sung Ho 10

Number of Defects Remaining in a Software By Gaffney in 1984 N : the number of defects in the code m : the number of modules Si : the number of lines of code for the ith module Capture/Recapture Methods were initially developed to estimate the size of an animal population can be applied to the software inspection process to get the population of defects by the software inspectors have been proposed by many research groups for the cases of identical/different detection probabilities of defects by the same/different detection probabilities by inspectors Kim, Sung Ho 11

Number of Defects Remaining in a Software The Size of Animal Population by Capture/Recapture Methods We want to know the population size at risk of capture The trapping histories of each individual can be expressed after all the trapping occasions The ith-order jackknife estimators of population size, , are S : the nonparametric maximum likelihood estimator of N fi : the number of individuals captured exactly i times t : the number of trapping occasions We can select appropriate order of based on the conditions of detection probabilities of each animal (e.g., the detection probabilities of defects and their coefficients of variance) Kim, Sung Ho 12

Number of Defects Remaining in a Software Number of Defects Remaining in a software by Capture/Recapture Methods Proposed by Chao(4) in 1992 for the defect population size : the ith defect population size estimator D : the number of distinct defects found by t inspectors fk: the number of defects found by exactly k inspectors t : the number of inspectors appropriate is recommended to be used according to the coefficient of variance of the probabilities of defect discovery, and this number is the expected number of defects remaining in a software Kim, Sung Ho 13

Number of Defects Remaining in a Software Comparison of the Reliabilities by Two Methods By Gaffney By Capture/Recapture Methods High reliabilities of the software is predicted by analysis and design review during design phase and by modeling for the number of defects remaining in a software But still we have some amount of gaps for the quantitative reliability prediction results according to the modeling methods Then what shall we do if the reliability prediction results do not meet our reliability requirements? (e.g., )  reduce the number of defects by testing Modules Si Fi M1 M2 M3 M4 M5 M6 M7 M8 M9 M10 M11 M12 M13 M14 M15 69 23 15 26 21 17 42 28 5 126 40 19 14 11 4.6 4.3 4.4 4.2 5.1 Total 479 65.5 Kim, Sung Ho 14

Reliability for Multiple Input Domains Input Values to Detect Defects Remaining in a Software Some defect, Fi , with failure rate  1i can be detected by input variable p1 The failure intensity by input variable p1 is and this depends on the number of defects remaining in the software Distribution of input variable p1 Perceived defect failure rates a software F1 11 Failure rates by input P1 and fault F1 F2 12 F3 Kim, Sung Ho 15

Reliability for Multiple Input Domains Multiple Input Values for the Defects Remaining in a Software Some faults can be detected by changing other input values In this case, the total failure intensity of the software for multiple inputs is common terms of s for multiple inputs) * to be investigated Distribution of input variable p2 Perceived defect failure rates a software F1 21 Failure rates by input P2 and fault F1 F2 22 F3 Kim, Sung Ho 16

Reliability for Multiple Input Domains Multiple Input Values for the Defects Remaining in a Software Multiple input variable system of CPCS System Outputs Process Input Signals Addressable constants by the operators Core Protection Calculator System Software CEA position Excore neutron flux signal Hot leg temperature Cold leg temperature RCP shaft speed Pressurizer Pressure DBNR Trip LPD Trip Coefficients of Equations CWP Kim, Sung Ho 17

Reliability for Multiple Input Domains Number of Defects Reduced after Multiple-Input Test Cases we assume that all the faults detected are corrected promptly and appropriately the remaining faults in the software after testing by varying multiple input variables is F’1 and F3, and the software has lower failure intensity after reducing the number of defects remaining in the software with higher reliability a software F’1 F3 Kim, Sung Ho 18

Reliability for Multiple Input Domains Mean Failure Rate after Usage time t for Single Input Variable(5) A fault density function The mean failure rate after usage time t For the Gamma distribution of pdf Kim, Sung Ho 19

Reliability for Multiple Input Domains Mean Failure Rate after Usage time t for Multiple Input Variables A fault density function The mean failure rate after usage time t For the Gamma distribution of pdf The common terms should be calculated by considering multiple input variables (generalization of Bishop-Bloomfield theory for multiple input variables) The software reliability expressions for multiple-input variables can be analyzed by experimental data Kim, Sung Ho 20

Reliability for Multiple Input Domains Analysis of Reliability Model using Usage Time and Time-To-Failure Worst case MTTF can be calculated to check if the actual failure data are above the calculated TTF The reliability is of the function of usage time Kim, Sung Ho 21

Summary and Further Works A combination for the numbers of remaining defects found during design phase and test phase can be provided Combined formal expression for the failure intensity and reliability of a software needs to be derived Reliability growth prediction model needs to be developed considering multiple inputs for different faults in a software Common terms to be excluded from the failure intensity calculation for multiple input variables should be investigated Kim, Sung Ho 22

References J. H. Poore, Harlan D. Mills, and David Mutchler, “Planning and Certifying Software System Reliability”, IEEE Software, pp.88-99, Jan. 1993. “Reliability Data Acquisition and Processing”, Bird Eng. Research Ass., Inc., Vienna, Virginia, Dec. 31, 1975. Y. Malaiya, A. V. Mayrhauser, and P. Srimani, “An Examination of Fault Exposure Ratio”, IEEE Transactions on Software Engineering, vol.19, pp.1087-1094, 1993. A. Chao, S. M. Lee, ans S. L. Jeng, “Estimating Population Size for Capture-Recapture Data When Capture Probabilities Vary by Time and Individual Animal”, Biometrics, Vol.48, pp.201-216, 1992. P. Bishop and R. Bloomfield, “A Conservative Theory for Long-Term Reliability-Growth Prediction”, IEEE Transactions on Reliability, Vol.45, No.4, pp.550-560, December 1996. Kim, Sung Ho 23