Software Test Termination

Slides:



Advertisements
Similar presentations
Software Reliability Engineering
Advertisements

Software Quality Assurance (SQA). Recap SQA goal, attributes and metrics SQA plan Formal Technical Review (FTR) Statistical SQA – Six Sigma – Identifying.
5/18/2015CPE 731, 4-Principles 1 Define and quantify dependability (1/3) How decide when a system is operating properly? Infrastructure providers now offer.
Reliability 1. Probability a product will perform as promoted for a given time period under given conditions Functional Failure: does not operate as designed.
SE 450 Software Processes & Product Metrics Reliability: An Introduction.
Chapter 9 Testing the System, part 2. Testing  Unit testing White (glass) box Code walkthroughs and inspections  Integration testing Bottom-up Top-down.
Dependability Evaluation. Techniques for Dependability Evaluation The dependability evaluation of a system can be carried out either:  experimentally.
(c) 2007 Mauro Pezzè & Michal Young Ch 1, slide 1 Software Test and Analysis in a Nutshell.
CS 325: Software Engineering March 26, 2015 Software Quality Assurance Software Metrics Defect Injection Software Quality Lifecycle Measuring Progress.
3. Software product quality metrics The quality of a product: -the “totality of characteristics that bear on its ability to satisfy stated or implied needs”.
Software Testing and QA Theory and Practice (Chapter 15: Software Reliability) © Naik & Tripathy 1 Software Testing and Quality Assurance Theory and Practice.
Functional Testing Test cases derived from requirements specification document – Black box testing – Independent testers – Test both valid and invalid.
Overview Software Quality Assurance Reliability and Availability
Software faults & reliability Presented by: Presented by: Pooja Jain Pooja Jain.
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.
CSCI 5801: Software Engineering
Software Testing Verification and validation planning Software inspections Software Inspection vs. Testing Automated static analysis Cleanroom software.
Handouts Software Testing and Quality Assurance Theory and Practice Chapter 15 Software Reliability
Slide 6.1 CHAPTER 6 TESTING. Slide 6.2 Overview l Quality issues l Nonexecution-based testing l Execution-based testing l What should be tested? l Testing.
What is Software Engineering? the application of a systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software”
Software Reliability SEG3202 N. El Kadri.
Software testing basic. Main contents  Why is testing necessary?  What is testing?  Test Design techniques  Test level  Test type  How to write.
Software is:  Computer programs, procedures, and possibly associated documentation and data relates to the operation of a computer system. [IEEE_Std_ ]
Ch. 1.  High-profile failures ◦ Therac 25 ◦ Denver Intl Airport ◦ Also, Patriot Missle.
Maintenance Policies Corrective maintenance: It is usually referred to as repair. Its purpose is to bring the component back to functioning state as soon.
Reliability & Maintainability Engineering An Introduction Robert Brown Electrical & Computer Engineering Worcester Polytechnic Institute.
Software Reliability Research Pankaj Jalote Professor, CSE, IIT Kanpur, India.
Verification and Validation Assuring that a software system meets a user's needs.
CS 3043 Social Implications Of Computing 11/24/2015© 2004 Keith A. Pray 1 Class 12 Risks Keith A. Pray Instructor socialimps.keithpray.net.
Nonbehavioral Specifications Non-behavioral Characteristics Portability Portability Reliability Reliability Efficiency Efficiency Human Engineering.
Slide 6.1 CHAPTER 6 TESTING. Slide 6.2 Overview l Quality issues l Nonexecution-based testing l Execution-based testing l What should be tested? l Testing.
COP 5611 Operating Systems Spring 2010 Dan C. Marinescu Office: HEC 439 B Office hours: M-Wd 1:00-2:00 PM.
CS203 – Advanced Computer Architecture Dependability & Reliability.
Software Defects. What leads to what? ERROR FAULT FAILURE Observed by Introduced by.
1 Introduction to Engineering Spring 2007 Lecture 16: Reliability & Probability.
Software Defects Cmpe 550 Fall 2005
Software Metrics and Reliability
Software Quality Assurance
Hardware & Software Reliability
Software Quality Assurance
Faults and fault-tolerance
CSC 480 Software Engineering
Chapter 18 Maintaining Information Systems
Fault Tolerance & Reliability CDA 5140 Spring 2006
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.
Verification and Testing
Product reliability Measuring
An EXCEL Add-In for Comparing Two Exponential Distributions
Chapter 21 Software Quality Assurance
Verification & Validation
Software Reliability: 2 Alternate Definitions
Chapter 21 Software Quality Assurance
Interval Estimation.
COP 5611 Operating Systems Fall 2011
Probability & Statistics Probability Theory Mathematical Probability Models Event Relationships Distributions of Random Variables Continuous Random.
Critical Systems Validation
Fail Fail Poor Communication Lack of Documentation Poor Execution.
Faults and fault-tolerance
Software Reliability (Lecture 12)
By: David Hoang Martin Hoffman
Chapter 9 – Software Evolution and Maintenance
COP 5611 Operating Systems Spring 2010
Progression of Test Categories
THE MANAGEMENT AND CONTROL OF QUALITY, 5e, © 2002 South-Western/Thomson Learning TM 1 Chapter 13 Reliability.
The Organizational Impacts on Software Quality and Defect Estimation
Reliability.
Overview Dependability: "[..] the trustworthiness of a computing system which allows reliance to be justifiably placed on the service it delivers [..]"
Software Requirement and Specification
Chapter 7 Software Testing.
Presentation transcript:

Software Test Termination 1209

Testing is expensive

When do we terminate testing?

Finding all the bugs

Fault Seeding Seed (add) errors to code Use standard techniques to identify errors Estimate total errors based on fraction of seeded errors found

Fault Seeding ST: total seeded faults SD: Seeded faults detected NT: Total faults that were not seeded ND: Detected faults that were not seeded SD/ST = Fraction of seeded faults found ND/NT = Fraction of non-seeded faults found SD/ST = ND/NT

Example: We seed 20 faults in a system. The testing group finds 38 faults, 8 of which were seeded. How many unseeded faults remain?

Problems with this approach

Software is good enough

Measures of Software Quality: Usability Ship when product is usable enough based on customer usability studies

Measures of Software Quality: Reliability, Availability, Maintainability

Measures MTTF: Mean time to failure MTTR: Mean time to repair MTBF: Mean time between failure MTBF = MTTF + MTTR Failure Failure System repaired Time TTF TTR TBF

Software Reliability Models Statistical models of reliability Track the first N failures Look for a probability distribution that matches this data Example models include Basic execution time Logarithmic Poisson Execution Time

Failures, not faults Time Execution time (more accurate) Calendar time (more useful)

Non-static failure behavior Faults are repaired when the system fails The probability of failure changes over time

Developing models Track failures and execution time Time to failure Time between failure Fit to statistical distribution Estimate distribution parameters Estimate reliability for some future time

Need to Ship: Factors Market-driven need (need to be first to market) Business need Need to market product to generate revenue Lack of resources (money) to continue testing Cost/benefit analysis is positive Political factors

Retire the System “retirement” here may mean “terminate maintenance”