SENG 637 Dependability Reliability & Dependability...

57
SENG 637 SENG 637 Dependability Reliability & Dependability Reliability & Dependability, Reliability & Dependability, Reliability & Testing of Software Testing of Software Systems Systems S ft R li bilit T l S ft R li bilit T l Software Reliability Tools Software Reliability Tools (Chapter 8) (Chapter 8) Department of Electrical & Computer Engineering, University of Calgary B.H. Far [email protected]http://www enel ucalgary ca/People/far/Lectures/SENG637/ [email protected] 1 http://www.enel.ucalgary .ca/People/far/Lectures/SENG637/

Transcript of SENG 637 Dependability Reliability & Dependability...

Page 1: SENG 637 Dependability Reliability & Dependability ...far/Lectures/SENG637/PDF/SENG637-08.pdfAvailable Options /1 Selection of a tool is one of the important decisions in performing

SENG 637SENG 637Dependability Reliability & Dependability Reliability & Dependability, Reliability & Dependability, Reliability & Testing of Software Testing of Software SystemsSystems

S ft R li bilit T lS ft R li bilit T lSoftware Reliability ToolsSoftware Reliability Tools(Chapter 8)(Chapter 8)

Department of Electrical & Computer Engineering, University of Calgary

B.H. Far ([email protected])http://www enel ucalgary ca/People/far/Lectures/SENG637/

[email protected] 1

http://www.enel.ucalgary.ca/People/far/Lectures/SENG637/

Page 2: SENG 637 Dependability Reliability & Dependability ...far/Lectures/SENG637/PDF/SENG637-08.pdfAvailable Options /1 Selection of a tool is one of the important decisions in performing

SRE: Process (Review)SRE: Process (Review)SRE: Process (Review)SRE: Process (Review)

5 steps in SRE pprocess: Define necessary Define necessary

Define NecessaryReliability

Develop Operational Profilereliabilityreliability

Develop operational profiles

Operational Profile

Prepare for Test

operational profiles Prepare for test Execute test

Execute Test

Apply Failure Data to Guide Decisions

Apply failure data to guide decisions

to Guide Decisions

[email protected] 2

Page 3: SENG 637 Dependability Reliability & Dependability ...far/Lectures/SENG637/PDF/SENG637-08.pdfAvailable Options /1 Selection of a tool is one of the important decisions in performing

Chapter 8Chapter 8 Part 1Part 1

S ft R li bilitS ft R li bilitSoftware Reliability Software Reliability Engineering ToolsEngineering Tools

[email protected] 3

Page 4: SENG 637 Dependability Reliability & Dependability ...far/Lectures/SENG637/PDF/SENG637-08.pdfAvailable Options /1 Selection of a tool is one of the important decisions in performing

SRE Tools: Reliability GrowthSRE Tools: Reliability GrowthSRE Tools: Reliability GrowthSRE Tools: Reliability Growth

Failure Output

SRETool

datap

data

Time(s) Cumulative Failures

Failures in interval

30 2 2

60 5 3

90 7 290 7 2

120 8 1

150 10 2

180 11 1

210 12 1

Failure Intensity210 12 1

240 13 1

270 14 1

[email protected] 4

Page 5: SENG 637 Dependability Reliability & Dependability ...far/Lectures/SENG637/PDF/SENG637-08.pdfAvailable Options /1 Selection of a tool is one of the important decisions in performing

Tasks Handled by SRE ToolsTasks Handled by SRE ToolsTasks Handled by SRE ToolsTasks Handled by SRE Tools

Collecting failure and test time information Calculating estimates of model parameters

using this informationusing this information Testing to fit a model against the collected

i f tiinformation Selecting a model to make predictions of

remaining faults, time to test, etc. Applying the model

[email protected] 5

Applying the model

Page 6: SENG 637 Dependability Reliability & Dependability ...far/Lectures/SENG637/PDF/SENG637-08.pdfAvailable Options /1 Selection of a tool is one of the important decisions in performing

Available Options /1Available Options /1Available Options /1Available Options /1 Selection of a tool is one of the important decisions in

performing the SRE studyperforming the SRE study. An inappropriate choice may not handle the type of data

collected for the project, or does not have a robust set of models that may fit to the project to make accurate predictions of important information.

Engineers may choose between: Engineers may choose between: Using a general-purpose application program such as a spreadsheet or

a statistical package such as SAS and developing their own models sing a general p rpose programming lang age s ch as JAVA or Cusing a general-purpose programming language such as JAVA or C.

Using a shareware, freeware or commercially available SRE tool.

[email protected] 6

Page 7: SENG 637 Dependability Reliability & Dependability ...far/Lectures/SENG637/PDF/SENG637-08.pdfAvailable Options /1 Selection of a tool is one of the important decisions in performing

Input Data Specification /1Input Data Specification /1Input Data Specification /1Input Data Specification /1 All of the SRE tools use one of two basic

types of input data: time-domain data (i.e., time-between-failures

data) interval-domain data (i.e., failure-count data)

[email protected] 10

Page 8: SENG 637 Dependability Reliability & Dependability ...far/Lectures/SENG637/PDF/SENG637-08.pdfAvailable Options /1 Selection of a tool is one of the important decisions in performing

Input Data Specification /2Input Data Specification /2Input Data Specification /2Input Data Specification /21) Time of failure Time based failure specification

2) Time interval between failures

Failure no.

Failure times (hours)

Failure interval (hours)

1 10 10

2 19 9

3) Cumulative failure up to a given time

2 19 9

3 32 13

4 43 11

5 58 15

6 70 12

4) Failures experienced in a ti i t l

6 70 12

7 88 18

8 103 15

9 125 22

10 150 25time interval 10 150 25

11 169 19

12 199 30

13 231 32

14 256 25

[email protected] 11

14 256 25

15 296 40

Page 9: SENG 637 Dependability Reliability & Dependability ...far/Lectures/SENG637/PDF/SENG637-08.pdfAvailable Options /1 Selection of a tool is one of the important decisions in performing

Input Data Specification /3Input Data Specification /3Input Data Specification /3Input Data Specification /31) Time of failure Failure based failure specification

2) Time interval between failures

Time(s) Cumulative Failures

Failures in interval

30 2 2

60 5 3

90 7 23) Cumulative failure up to a given time

90 7 2

120 8 1

150 10 2

180 11 1

210 12 14) Failures experienced in a ti i t l

210 12 1

240 13 1

270 14 1

time interval

[email protected] 12

Page 10: SENG 637 Dependability Reliability & Dependability ...far/Lectures/SENG637/PDF/SENG637-08.pdfAvailable Options /1 Selection of a tool is one of the important decisions in performing

SRE Tools SRE Tools SRE Tools SRE Tools CASRE SoftRel SoftRel SMERFS SoRel

SRE tool repository:

1 Open channel software:

SRMP ProConf

1. Open channel software:http://www.openchannelsoftware.org/discipline/Reliability_Analysis/

2. Univ of Maryland Relex MEADEP

(MEAsure and

2. Univ of Marylandhttp://www.enre.umd.edu/tool.htm

(MEAsure and DEPendability)

etc.

[email protected] 13

Page 11: SENG 637 Dependability Reliability & Dependability ...far/Lectures/SENG637/PDF/SENG637-08.pdfAvailable Options /1 Selection of a tool is one of the important decisions in performing

SRE Tools (cont’d)SRE Tools (cont’d)SRE Tools (cont d)SRE Tools (cont d) ACARA II: Availability, Cost, And Resource Allocation,

Version 2 (no charge per license)( g p ) ARAM: Automated Reliability/Availability/Maintainability,

Version 2.0 ($400 source code license) ETARA: Event Time Availability, Reliability Analysis ($200 y, y y ($

source code license) GO: Graphics Oriented Program ($150 source code license) HARP: Hybrid Automated Reliability Predictor Version 7 0 HARP: Hybrid Automated Reliability Predictor, Version 7.0

($500 source code license, for Unix or PC) HARPO: Hybrid Automated Reliability Predictor Output

Graphics Display ($150 source code license)Graphics Display ($150 source code license) SPRPM: Software Problem Report Metrics Program (no

charge per license, requires EXCEL)

[email protected] 14

Page 12: SENG 637 Dependability Reliability & Dependability ...far/Lectures/SENG637/PDF/SENG637-08.pdfAvailable Options /1 Selection of a tool is one of the important decisions in performing

More InfoMore InfoMore InfoMore Info Download tools:

IEEE S ft R li bilit E i i W ki G IEEE Software Reliability Engineering Working Group (SREWG) http://www.srewg.org/Tools/

SRE tools repository: Center for Reliability Engineering at the University of

MarylandMarylandhttp://www.enre.umd.edu/tool.htm

Open Channel Foundation http://www.openchannelsoftware.org/discipline/Reliability_Analysis

[email protected] 21

Page 13: SENG 637 Dependability Reliability & Dependability ...far/Lectures/SENG637/PDF/SENG637-08.pdfAvailable Options /1 Selection of a tool is one of the important decisions in performing

Chapter 8Chapter 8 Section 2Section 2

H t CASREH t CASREHow to use CASREHow to use CASRE

[email protected] 22

Page 14: SENG 637 Dependability Reliability & Dependability ...far/Lectures/SENG637/PDF/SENG637-08.pdfAvailable Options /1 Selection of a tool is one of the important decisions in performing

CASRE: IntroductionCASRE: IntroductionCASRE: IntroductionCASRE: Introduction Software Reliability Estimation tool running

on Windows CASRE extends the SMERFS package by p g y

adding a menu based GUI Uses ASCII text input data filesUses ASCII text input data files Displays results in tabular and/or graphical

formform Can use many different models

[email protected] 23

Page 15: SENG 637 Dependability Reliability & Dependability ...far/Lectures/SENG637/PDF/SENG637-08.pdfAvailable Options /1 Selection of a tool is one of the important decisions in performing

CASRE Program StructureCASRE Program StructureCASRE Program StructureCASRE Program Structure Main Window

The window where the input data file is loaded and displayed.

Menu options allow the user to apply models and filters to Menu options allow the user to apply models and filters to the input data.

Graphical Display Window Displays a plot of the input data, as well as the results of

any models applied to the data. Model Results Table Model Results Table

Displays the tabulated results from the models that were used in the calculation.

[email protected] 24

Page 16: SENG 637 Dependability Reliability & Dependability ...far/Lectures/SENG637/PDF/SENG637-08.pdfAvailable Options /1 Selection of a tool is one of the important decisions in performing

Main WindowMain WindowMain WindowMain Window The main window is the starting point for CASRE

sessions.This is the place where the user selects themodels and filters to apply to the input data.

Menu Options Menu Options File (Open, Save, Print, Exit) Edit (Change Data Type, External Application, Escape to DOS) Filters (Shaping and Scaling, Change time unit, etc. Model (Select and Run, Define Combination, Edit/Remove Models,

Parameter Estimation, Select Data Range, Predictions)S t Pl t H l Setup, Plot, Help

[email protected] 25

Page 17: SENG 637 Dependability Reliability & Dependability ...far/Lectures/SENG637/PDF/SENG637-08.pdfAvailable Options /1 Selection of a tool is one of the important decisions in performing

Graphical DisplayGraphical DisplayGraphical DisplayGraphical Display Provides the plots of the input and calculated data.

E h i di id l d t t l t h it i b l d l Each individual data set on a plot has its own unique symbol and colour. Menu Options

Plot (Save as, Draw from File, Setup Printer, Print Plot)Printer, Print Plot)

Results (Select Model Results, Model Results Table)

Display Graphs - Time between failures,

Failure counts, Failure intensity, Test interval lengths, Cumulative failures, ReliabilityM d l E l ti G d f fit Model Evaluation - Goodness-of-fit, Prequential likelihood, Relative accuracy, Bias, Bias trend, Bias scatter plot, Model noise, Model ranking

[email protected] 26

ranking Settings, Copy, Help

Page 18: SENG 637 Dependability Reliability & Dependability ...far/Lectures/SENG637/PDF/SENG637-08.pdfAvailable Options /1 Selection of a tool is one of the important decisions in performing

Model Results WindowModel Results WindowModel Results WindowModel Results Window Displays the detailed calculated results in a tabular format. Reliability estimates, parameter estimates, and convergence

information are all displayed in this table for a selected modelmodel.

Menu Options File Results – Select Results, Previous Model, Next Model Help

[email protected] 27

Page 19: SENG 637 Dependability Reliability & Dependability ...far/Lectures/SENG637/PDF/SENG637-08.pdfAvailable Options /1 Selection of a tool is one of the important decisions in performing

CASRE Data InputCASRE Data InputCASRE Data InputCASRE Data Input ASCII based text file with a .dat extension Two file formats

Time Between Failures (error #, time since last failure, failure severity class)failure severity class)

Failure Counts (interval #, # errors in interval, interval length, failure severity class)

The format of the file must be strictly adhered to No direct manipulation of the data file is allowed

b t CASRE h li k t t t ditbut CASRE has menu links to common text editors

[email protected] 28

Page 20: SENG 637 Dependability Reliability & Dependability ...far/Lectures/SENG637/PDF/SENG637-08.pdfAvailable Options /1 Selection of a tool is one of the important decisions in performing

Using CASRE /1Using CASRE /1Using CASRE /1Using CASRE /11. Prepare input data

Input data can be either failure count or failure per interval data

<failure number> <number of natural or time units since previous failure> <severity class>

1 30 1

Sample failure count data

2 55 13 70 14 60 15 90 16 110 17 100 18 150 19 120 110 215 1

[email protected] 29

Example from Musa’s Book

Page 21: SENG 637 Dependability Reliability & Dependability ...far/Lectures/SENG637/PDF/SENG637-08.pdfAvailable Options /1 Selection of a tool is one of the important decisions in performing

Using CASRE /2Using CASRE /2Using CASRE /2Using CASRE /21. Prepare input data

Input data can be either failure count or failure per interval data

<interval number> <failure in interval><duration of interval> 0 0 0 <severity class>

1 5 2.5 0 0 0 1

Sample failure per interval d 2 1 1 0 0 0 1

3 4 3 0 0 0 14 1 2 0 0 0 15 0 1.5 0 0 0 16 1 3 0 0 0 1

data

7 2 4 0 0 0 18 1 2.5 0 0 0 19 2 3 0 0 0 110 2 5 0 0 0 1

[email protected] 30

Example from Musa’s Book

Page 22: SENG 637 Dependability Reliability & Dependability ...far/Lectures/SENG637/PDF/SENG637-08.pdfAvailable Options /1 Selection of a tool is one of the important decisions in performing

Using CASRE /3Using CASRE /3Using CASRE /3Using CASRE /32. Check if data shows reliability growth (trend test)3 R d i t fil3. Read input file4. Select data range5 Filter or smooth input data if required5. Filter or smooth input data if required6. Select parameter estimation method7 Select and run model(s)7. Select and run model(s)8. View and interpret model results

Goodness of fit test Goodness of fit test Model ranking Prediction based on plots

[email protected] 31

Page 23: SENG 637 Dependability Reliability & Dependability ...far/Lectures/SENG637/PDF/SENG637-08.pdfAvailable Options /1 Selection of a tool is one of the important decisions in performing

CASRE Reliability Models /1CASRE Reliability Models /1CASRE Reliability Models /1CASRE Reliability Models /1 Time between failure models

Geometric Jelinski-Moranda Littlewood-Verrall Musa-Basic Musa-Okumoto NHPP

[email protected] 32

Page 24: SENG 637 Dependability Reliability & Dependability ...far/Lectures/SENG637/PDF/SENG637-08.pdfAvailable Options /1 Selection of a tool is one of the important decisions in performing

CASRE Reliability Models /2CASRE Reliability Models /2CASRE Reliability Models /2CASRE Reliability Models /2 Failure Count models

Generalized Poisson NHPP Schneidewind Shick-Wolverton Yamada S-shaped

[email protected] 33

Page 25: SENG 637 Dependability Reliability & Dependability ...far/Lectures/SENG637/PDF/SENG637-08.pdfAvailable Options /1 Selection of a tool is one of the important decisions in performing

CASRE Reliability Models /3CASRE Reliability Models /3CASRE Reliability Models /3CASRE Reliability Models /3 Combination models:

Four predefined models Dynamically weighted Equally weighted Median Weighted

U ll i ht d Unequally weighted

Other combination models can be defined

[email protected] 34

Page 26: SENG 637 Dependability Reliability & Dependability ...far/Lectures/SENG637/PDF/SENG637-08.pdfAvailable Options /1 Selection of a tool is one of the important decisions in performing

Trend CheckTrend CheckTrend CheckTrend Check CASRE models should only be used on data where

th ll li bilit i i i t tithe overall reliability is increasing as testing continues.

Reliability is increasing if the mean time between y gfailures increases as the total number of failures increases during testing.

CASRE version 2 does not have the automatic trend CASRE version 2 does not have the automatic trend test option, so a visual inspection of the cumulative failure plot is necessary.CASRE i 3 h i d i CASRE version 3 has an automatic trend test option, that will inform the user if the data is applicable to the reliability models.

[email protected] 35

y

Page 27: SENG 637 Dependability Reliability & Dependability ...far/Lectures/SENG637/PDF/SENG637-08.pdfAvailable Options /1 Selection of a tool is one of the important decisions in performing

Trend Related Questions Trend Related Questions Trend Related Questions …Trend Related Questions … Is the system reliability increasing, decreasing

or stable? Which reliability growth model fits best the y g

gathered data? Can the same model be used in all cases ofCan the same model be used in all cases of

reliability growth, decrease and stable?

[email protected] 36

Page 28: SENG 637 Dependability Reliability & Dependability ...far/Lectures/SENG637/PDF/SENG637-08.pdfAvailable Options /1 Selection of a tool is one of the important decisions in performing

And Trend Related Answers And Trend Related Answers And Trend Related Answers …And Trend Related Answers … Reliability trends can be analyzed by “trend

tests”. Trend tests can be used to help determine p

whether the system undergoes reliability growth, decrease or stable reliability.

Trend analysis also helps select appropriate reliability model for each phase.reliability model for each phase.

[email protected] 37

Page 29: SENG 637 Dependability Reliability & Dependability ...far/Lectures/SENG637/PDF/SENG637-08.pdfAvailable Options /1 Selection of a tool is one of the important decisions in performing

Failure Data for Trend TestsFailure Data for Trend TestsFailure Data for Trend TestsFailure Data for Trend Tests The trend tests work with the failure data. The trend can be analyzed using

Inter-failure times data or Failure intensity data

[email protected] 38

Page 30: SENG 637 Dependability Reliability & Dependability ...far/Lectures/SENG637/PDF/SENG637-08.pdfAvailable Options /1 Selection of a tool is one of the important decisions in performing

InterInter--failure Times Data /1failure Times Data /1InterInter--failure Times Data /1failure Times Data /1 Two trend tests are commonly carried:

Arithmetical mean test Laplace tests Laplace tests

[email protected] 39

Page 31: SENG 637 Dependability Reliability & Dependability ...far/Lectures/SENG637/PDF/SENG637-08.pdfAvailable Options /1 Selection of a tool is one of the important decisions in performing

InterInter--failure Times Data /2failure Times Data /2InterInter--failure Times Data /2failure Times Data /2 The arithmetical mean of the inter-failure

ti i t f l l ti ith ti ltimes consists of calculating arithmetical mean (i) of the observed inter-failure times j.

1 i

jii

1

jji

An increasing series of (i) indicates g ( )reliability growth and a decreasing series suggests reliability decrease.

[email protected] 40

Page 32: SENG 637 Dependability Reliability & Dependability ...far/Lectures/SENG637/PDF/SENG637-08.pdfAvailable Options /1 Selection of a tool is one of the important decisions in performing

InterInter--failure Times Data /3failure Times Data /3InterInter--failure Times Data /3failure Times Data /3 For N(T) as the cumulative number of failures

th ti i d [0 T] th L l f tover the time period [0, T], the Laplace factor u(T) is derived:

i

11

1 1

11 2

ji nj

jn ji

u i

1

112 1

i

jj

u i

i

For the case that T is equal to the time of occurrence of failure i.

[email protected] 41

Page 33: SENG 637 Dependability Reliability & Dependability ...far/Lectures/SENG637/PDF/SENG637-08.pdfAvailable Options /1 Selection of a tool is one of the important decisions in performing

InterInter--failure Times Data /4failure Times Data /4InterInter--failure Times Data /4failure Times Data /4 Negative values of the Laplace factor u(i)

indicate a decreasing failure intensity, i.e., reliability growth.

Positive values of the Laplace factor u(i)indicate an increasing failure intensity, i.e., reliability decrease.

Values between –2 and +2 indicate stableValues between 2 and 2 indicate stable reliability.

[email protected] 42

Page 34: SENG 637 Dependability Reliability & Dependability ...far/Lectures/SENG637/PDF/SENG637-08.pdfAvailable Options /1 Selection of a tool is one of the important decisions in performing

Failure Intensity Data /1Failure Intensity Data /1Failure Intensity Data /1Failure Intensity Data /1 For the time period [0, T], divided into k units of

l l th d f (i) b th b f f ilequal length and for n(i) be the number of failures observed during the time interval i, the Laplace factor u(k) is derived by:factor u(k) is derived by:

11k kki n i n i

1 12

12

1i i

k

i n i n iu k

k n i

112 i

n i

[email protected] 44

Page 35: SENG 637 Dependability Reliability & Dependability ...far/Lectures/SENG637/PDF/SENG637-08.pdfAvailable Options /1 Selection of a tool is one of the important decisions in performing

Failure Intensity Data /2Failure Intensity Data /2Failure Intensity Data /2Failure Intensity Data /2 Negative values of the Laplace factor u(k)

indicate a decreasing failure intensity, i.e., reliability growth.

Positive values of the Laplace factor u(k)indicate an increasing failure intensity, i.e., reliability decrease.

[email protected] 45

Page 36: SENG 637 Dependability Reliability & Dependability ...far/Lectures/SENG637/PDF/SENG637-08.pdfAvailable Options /1 Selection of a tool is one of the important decisions in performing

Typical Plots /1Typical Plots /1Typical Plots /1Typical Plots /1 Typical graphs for

failure intensity n(k) and cumulative failure intensity N(k)

[email protected] 46

Page 37: SENG 637 Dependability Reliability & Dependability ...far/Lectures/SENG637/PDF/SENG637-08.pdfAvailable Options /1 Selection of a tool is one of the important decisions in performing

Typical Plots /2Typical Plots /2Typical Plots /2Typical Plots /2 Typical plot for

the Laplace factor u(k)

[email protected] 47

Page 38: SENG 637 Dependability Reliability & Dependability ...far/Lectures/SENG637/PDF/SENG637-08.pdfAvailable Options /1 Selection of a tool is one of the important decisions in performing

Typical Plots /3Typical Plots /3Typical Plots /3Typical Plots /3 Typical plot for Laplace factor during

various project phases

Decrease of reliability

Reliability growth

[email protected] 48

Page 39: SENG 637 Dependability Reliability & Dependability ...far/Lectures/SENG637/PDF/SENG637-08.pdfAvailable Options /1 Selection of a tool is one of the important decisions in performing

Selecting ModelsSelecting ModelsSelecting ModelsSelecting Models Typical plot for Laplace factor during

various project phases

Reliability growth (any reliability growth model can be applied)Decrease of reliability

Only models allowing Increasing failure

Reliability growth

intensity can be applied

[email protected] 49

Page 40: SENG 637 Dependability Reliability & Dependability ...far/Lectures/SENG637/PDF/SENG637-08.pdfAvailable Options /1 Selection of a tool is one of the important decisions in performing

CASRE: Case Study CASRE: Case Study CASRE: Case Study CASRE: Case Study

Project X is a web based application for accessing a database using a browser.

This version of the software is a minor release with changes to the GUI display and data access engine.

Two programmers were assigned to the project. One programmer worked on the GUI, and the other on the data access engine.Th j k i l 4 k The project took approximately 4 weeks to complete.

[email protected] 50

Page 41: SENG 637 Dependability Reliability & Dependability ...far/Lectures/SENG637/PDF/SENG637-08.pdfAvailable Options /1 Selection of a tool is one of the important decisions in performing

Case Study (contd ) Case Study (contd ) Case Study (contd.) Case Study (contd.) A single tester was assigned to the project. The test phase was completed in approximately 25

hours (3 working days or 90,000 seconds).136 f il di d d i h i 136 failures were discovered during the testing.

Using the dates and times recorded for the failures discovered during testing a “time between failures”discovered during testing, a time between failures input file was generated for CASRE.

The severity of all the failures was set to y 1 - Low Severity

[email protected] 51

Page 42: SENG 637 Dependability Reliability & Dependability ...far/Lectures/SENG637/PDF/SENG637-08.pdfAvailable Options /1 Selection of a tool is one of the important decisions in performing

Time Between Failures PlotTime Between Failures PlotTime Between Failures PlotTime Between Failures Plot

[email protected] 52

Page 43: SENG 637 Dependability Reliability & Dependability ...far/Lectures/SENG637/PDF/SENG637-08.pdfAvailable Options /1 Selection of a tool is one of the important decisions in performing

Trend AnalysisTrend AnalysisTrend AnalysisTrend Analysis Laplace test shows reliability growth.

[email protected] 53

Page 44: SENG 637 Dependability Reliability & Dependability ...far/Lectures/SENG637/PDF/SENG637-08.pdfAvailable Options /1 Selection of a tool is one of the important decisions in performing

Project ResultsProject ResultsProject ResultsProject Results In order to determine which models would

provide the best fit for the project data, the following models were run Geometric Jelinski - Moranda Littlewood - Verrall Musa Basic Musa - Okumoto

[email protected] 54

Page 45: SENG 637 Dependability Reliability & Dependability ...far/Lectures/SENG637/PDF/SENG637-08.pdfAvailable Options /1 Selection of a tool is one of the important decisions in performing

Goodness of Fit TestGoodness of Fit TestGoodness of Fit TestGoodness of Fit Test

On Graphic display window select:p p yDisplay Goodness of fit

[email protected] 55

Page 46: SENG 637 Dependability Reliability & Dependability ...far/Lectures/SENG637/PDF/SENG637-08.pdfAvailable Options /1 Selection of a tool is one of the important decisions in performing

CASRE Model RankingCASRE Model RankingCASRE Model RankingCASRE Model Ranking

On Graphic display window select:p p yDisplay Model rankings Rank summary or

Rank details

[email protected] 56

Page 47: SENG 637 Dependability Reliability & Dependability ...far/Lectures/SENG637/PDF/SENG637-08.pdfAvailable Options /1 Selection of a tool is one of the important decisions in performing

Display ResulsDisplay ResulsDisplay ResulsDisplay Resuls

On Graphic display window select:p p yResults Select model results

[email protected] 57

Only 3 graphs can be displayed at a time

Page 48: SENG 637 Dependability Reliability & Dependability ...far/Lectures/SENG637/PDF/SENG637-08.pdfAvailable Options /1 Selection of a tool is one of the important decisions in performing

Display: Cumulative FailuresDisplay: Cumulative FailuresDisplay: Cumulative FailuresDisplay: Cumulative Failures

[email protected] 58

Page 49: SENG 637 Dependability Reliability & Dependability ...far/Lectures/SENG637/PDF/SENG637-08.pdfAvailable Options /1 Selection of a tool is one of the important decisions in performing

Display: Time Between FailuresDisplay: Time Between FailuresDisplay: Time Between FailuresDisplay: Time Between Failures

[email protected] 59

Page 50: SENG 637 Dependability Reliability & Dependability ...far/Lectures/SENG637/PDF/SENG637-08.pdfAvailable Options /1 Selection of a tool is one of the important decisions in performing

Display: Failure IntensityDisplay: Failure IntensityDisplay: Failure IntensityDisplay: Failure Intensity

[email protected] 60

Page 51: SENG 637 Dependability Reliability & Dependability ...far/Lectures/SENG637/PDF/SENG637-08.pdfAvailable Options /1 Selection of a tool is one of the important decisions in performing

Display: ReliabilityDisplay: ReliabilityDisplay: ReliabilityDisplay: Reliability

[email protected] 61

Page 52: SENG 637 Dependability Reliability & Dependability ...far/Lectures/SENG637/PDF/SENG637-08.pdfAvailable Options /1 Selection of a tool is one of the important decisions in performing

Interpreting Results /1Interpreting Results /1Interpreting Results /1Interpreting Results /1 Accuracy of estimation of the failure intensity d d th b f f il depends on the number of failures experienced (i.e., the sample size). G d lt i ti ti f il i t it Good results in estimating failure intensity are generally experienced for programs with 5,000 or more developed source linesor more developed source lines.

Satisfactory results are obtained for programs with 1 000 or more developed source lineswith 1,000 or more developed source lines.

[email protected] 62

Page 53: SENG 637 Dependability Reliability & Dependability ...far/Lectures/SENG637/PDF/SENG637-08.pdfAvailable Options /1 Selection of a tool is one of the important decisions in performing

How to Handle Defects?How to Handle Defects?How to Handle Defects?How to Handle Defects? Table below gives the time between failures

f ft tfor a software system: Error no. 1 2 3 4 5 6 7 8 9 10

What can we learn from this data?Time since last failure (hours) 6 4 8 5 6 9 11 14 16 19

system reliability? total number of errors in the system? time to (approximately) remove all errors?

[email protected] 63

Page 54: SENG 637 Dependability Reliability & Dependability ...far/Lectures/SENG637/PDF/SENG637-08.pdfAvailable Options /1 Selection of a tool is one of the important decisions in performing

What to Learn from Data?What to Learn from Data?What to Learn from Data?What to Learn from Data? The inverses of the inter-error times are the

f il i t it d t i t ( t iffailure intensity data points (or error rate if plotted against time)

Error no. 1 2 3 4 5 6 7 8 9 10

Time since last failure (hours) 6 4 8 5 6 9 11 14 16 19

Failure intensity 0.166 0.25 0.125 0.20 0.166 0.111 0.09 0.071 0.062 0.053y

Release time

F

[email protected] 64

Page 55: SENG 637 Dependability Reliability & Dependability ...far/Lectures/SENG637/PDF/SENG637-08.pdfAvailable Options /1 Selection of a tool is one of the important decisions in performing

Interpreting Results /2Interpreting Results /2Interpreting Results /2Interpreting Results /2 When the failure intensity is very large and the

trend indicates little chance of achieving the F by the scheduled release date, what can be done? Adding additional test and debugging resources Adjusting the balance among the objectives for failure

i t it d l t ti d d l t tintensity, development time, and development cost Deferring features

[email protected] 65

Page 56: SENG 637 Dependability Reliability & Dependability ...far/Lectures/SENG637/PDF/SENG637-08.pdfAvailable Options /1 Selection of a tool is one of the important decisions in performing

ConclusionsConclusionsConclusionsConclusions

CASRE is a valuable tool for software reliability estimation.

CASRE is easy to learn and use It is possible CASRE is easy to learn and use. It is possible to become proficient at the software in a few hourshours.

For accuracy in the calculated results, CASRE should be applied to projects whereCASRE should be applied to projects where the expected number of failures is greater than 40 to 50 failures

[email protected] 66

than 40 to 50 failures.

Page 57: SENG 637 Dependability Reliability & Dependability ...far/Lectures/SENG637/PDF/SENG637-08.pdfAvailable Options /1 Selection of a tool is one of the important decisions in performing

Software Release!

[email protected] 67