1 nasa osma sas02 software reliability modeling: traditional and non-parametric dolores r. wallace...

21
1 NASA OSMA SAS02 Software Reliability Modeling: Traditional and Non-Parametric Dolores R. Wallace Victor Laing SRS Information Services Software Assurance Technology Center http:// satc . gsfc . nasa . gov / dwallac, [email protected] NASA OSMA SAS '02

Upload: elijah-black

Post on 25-Dec-2015

219 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 1 NASA OSMA SAS02 Software Reliability Modeling: Traditional and Non-Parametric Dolores R. Wallace Victor Laing SRS Information Services Software Assurance

1 NASA OSMA SAS02

Software Reliability Modeling:Traditional and Non-Parametric

Dolores R. WallaceVictor Laing

SRS Information ServicesSoftware Assurance Technology Center

http://satc.gsfc.nasa.gov/dwallac, [email protected]

NASA OSMA SAS '02

Page 2: 1 NASA OSMA SAS02 Software Reliability Modeling: Traditional and Non-Parametric Dolores R. Wallace Victor Laing SRS Information Services Software Assurance

2 NASA OSMA SAS02

The Problem

• Critical NASA systems must execute successfully for a specified time under specified conditions -- Reliability

• Most systems rely on software

• Hence, a means to measure software reliability is essential to determining readiness for operation

• Software reliability modeling provides one data point for reliability measurement

Page 3: 1 NASA OSMA SAS02 Software Reliability Modeling: Traditional and Non-Parametric Dolores R. Wallace Victor Laing SRS Information Services Software Assurance

3 NASA OSMA SAS02

Software Reliability Modeling(SRM) – Traditional

• Captures hardware reliability engineering concepts• Mathematically models behavior of a software

system from failure data to predict reliability growth • Invokes curve-fitting techniques to determine values

of parameters used in the models• Validates models with data with statistical analysis• Using parametric values, predicts future

measurements, e.g.,– Mean time to failure– Total number faults remaining– Number faults at time t

Page 4: 1 NASA OSMA SAS02 Software Reliability Modeling: Traditional and Non-Parametric Dolores R. Wallace Victor Laing SRS Information Services Software Assurance

4 NASA OSMA SAS02

Synopsis

• FY01– Identify mathematics of hardware reliability not

used in software– Identify differences between hardware, software

affecting reliability measurement– Identify possible improvements

• FY02– Demonstrate practicality of SRM at GSFC– Fault correction improvement – Schneidewind– Non-parametric model - Laing

Page 5: 1 NASA OSMA SAS02 Software Reliability Modeling: Traditional and Non-Parametric Dolores R. Wallace Victor Laing SRS Information Services Software Assurance

5 NASA OSMA SAS02

SRM: Data Collection

• Resistance to data collection• Data content

– Accuracy of content– Dates of failure, correction– Calendar time not execution time– Activities/ phase when failures occur

• Data manipulation– Frequency counts– Interval size and length– Time between failure

Page 6: 1 NASA OSMA SAS02 Software Reliability Modeling: Traditional and Non-Parametric Dolores R. Wallace Victor Laing SRS Information Services Software Assurance

6 NASA OSMA SAS02

IntervalCounter

Sample had 35 weeks – simplified fault count

Page 7: 1 NASA OSMA SAS02 Software Reliability Modeling: Traditional and Non-Parametric Dolores R. Wallace Victor Laing SRS Information Services Software Assurance

7 NASA OSMA SAS02

SMERFS^3 3-D OUTPUT

Page 8: 1 NASA OSMA SAS02 Software Reliability Modeling: Traditional and Non-Parametric Dolores R. Wallace Victor Laing SRS Information Services Software Assurance

8 NASA OSMA SAS02

Practical Method

• SATC Services– SATC executes models and prepares analysis– SATC provides training and public domain tool

• Improvements – Recommendations to projects for data collection– IntervalCounter to simplify data manipulation

Page 9: 1 NASA OSMA SAS02 Software Reliability Modeling: Traditional and Non-Parametric Dolores R. Wallace Victor Laing SRS Information Services Software Assurance

9 NASA OSMA SAS02

Fault Correction Adjustments

• Reliability growth occurs from fault correction• Failure correction proportional to rate of failure

detection• Adjusted model with delay dT (based on queuing

service) but same general form as faults detected at time T

• Process: use SMERFS Schneidewind model to get parameters; apply to revised model via spreadsheet

• Results – Show reliability growth due to fault correction– Predict stopping rules for testing

Page 10: 1 NASA OSMA SAS02 Software Reliability Modeling: Traditional and Non-Parametric Dolores R. Wallace Victor Laing SRS Information Services Software Assurance

10 NASA OSMA SAS02

SMERFS^3 – Excel Approach*

• Best approach: combine SMERFS^3 with Excel.

• SRT provides model parameter estimation.

• Copy and paste parameters from SRT into

spreadsheet.

• Excel extends capabilities of SRT by allowing user

to provide equations, statistical analysis, and plots.

* CASRE or other software reliability modeling tool may be used with EXCEL Recommended

approach until the SRM tools incorporate this new model.

Page 11: 1 NASA OSMA SAS02 Software Reliability Modeling: Traditional and Non-Parametric Dolores R. Wallace Victor Laing SRS Information Services Software Assurance

11 NASA OSMA SAS02

Non-parametric Reliability Modeling

• Hardware

- Wears out over time

- Increasing failure rate

• Software- Do not wear over time

- Decreasing failure rate

Page 12: 1 NASA OSMA SAS02 Software Reliability Modeling: Traditional and Non-Parametric Dolores R. Wallace Victor Laing SRS Information Services Software Assurance

12 NASA OSMA SAS02

Continued

• Hardware Reliability Modeling

- “Large” independent random sampling

- Model reliability

- Make predictions

• Software Reliability Modeling

- “Small” observed dependent sample (of size one?)

- Not based on independent random sampling

- Model reliability

- Make predictions?

Do we search for the silver bullet of SWR models?

Page 13: 1 NASA OSMA SAS02 Software Reliability Modeling: Traditional and Non-Parametric Dolores R. Wallace Victor Laing SRS Information Services Software Assurance

13 NASA OSMA SAS02

Reliability Trending

• Hardware Reliability 100% Maximum

0% Minimum 0 1 2 3 4 …

Time

• Software Reliability 100% Maximum

0% Minimum 0 1 2 3 4 …

Time

Page 14: 1 NASA OSMA SAS02 Software Reliability Modeling: Traditional and Non-Parametric Dolores R. Wallace Victor Laing SRS Information Services Software Assurance

14 NASA OSMA SAS02

Software Reliability Bounds

100% Maximum

Estimated Bound

Estimated Model

0% Minimum

0 1 2 3 4 … Time

Page 15: 1 NASA OSMA SAS02 Software Reliability Modeling: Traditional and Non-Parametric Dolores R. Wallace Victor Laing SRS Information Services Software Assurance

15 NASA OSMA SAS02

Calculation of Estimated Models and Bounds

• Dynamic Metrics- Failure rate data - Problem reports

• Static Code Metrics- Traditional

- Source Lines of Code (SLOC)- Cyclomatic Complexity (CC)- Comment Percentage (CP)

- Object-Oriented- Coupling Between Objects (CBO)- Depth of Inheritance Tree (DIT) - Weighted Methods per Class (WMC)

Page 16: 1 NASA OSMA SAS02 Software Reliability Modeling: Traditional and Non-Parametric Dolores R. Wallace Victor Laing SRS Information Services Software Assurance

16 NASA OSMA SAS02

Combining Dynamic and Static Metrics

• The Proportional Hazards Model (PHM)

PHM Non-Parametric Component (Static)

R(t|z) = {R0(t)}g(z)

Parametric Component (Dynamic)

- Where zβ = z1β1 + z2β2 + … + zpβp , βi’s are unknown

regression coefficients and zi’s are static code metrics data

Page 17: 1 NASA OSMA SAS02 Software Reliability Modeling: Traditional and Non-Parametric Dolores R. Wallace Victor Laing SRS Information Services Software Assurance

17 NASA OSMA SAS02

Tool Schema

Input Data z = (z1, z2, … zp)

Database Observed Data

Data Processing R(t|z) = {R0(t)}g(z)

Weighted Average Raw Data

Output Data Estimated Model Estimated Bound

- Process Below Bounds

Action - Corrective Action

- Process Above Bounds

- No Corrective Action

Page 18: 1 NASA OSMA SAS02 Software Reliability Modeling: Traditional and Non-Parametric Dolores R. Wallace Victor Laing SRS Information Services Software Assurance

18 NASA OSMA SAS02

SUMMARY

• Software reliability modeling– Provides useful measurements for decisions– Does not require expert knowledge of the math!– Is relatively easy with use of software tools

• Fault correction improvement – Adapts model to be more like software– Demonstrates combined use of traditional SRM tools

with spreadsheet technology

• Non-parametric modeling– New approach shows promise– Prototype to be expanded

Page 19: 1 NASA OSMA SAS02 Software Reliability Modeling: Traditional and Non-Parametric Dolores R. Wallace Victor Laing SRS Information Services Software Assurance

19 NASA OSMA SAS02

AIAA Recommended Steps(specific to SRM)

• Characterizing the environment• Determining test approach• Selecting models• Collecting data • Estimating parameters• Validating the models• Performing analysis

Page 20: 1 NASA OSMA SAS02 Software Reliability Modeling: Traditional and Non-Parametric Dolores R. Wallace Victor Laing SRS Information Services Software Assurance

20 NASA OSMA SAS02

Fault Correction Modeling

• Software reliability models focus on modeling and predicting failure occurrence– There has not been equal priority on modeling the fault

correction process.

• Fault correction modeling and prediction support to – predict whether reliability goals have been achieved

– develop stopping rules for testing

– formulate test strategies

– rationally allocate test resources.

Page 21: 1 NASA OSMA SAS02 Software Reliability Modeling: Traditional and Non-Parametric Dolores R. Wallace Victor Laing SRS Information Services Software Assurance

21 NASA OSMA SAS02

Equations: Prediction and Comparison Worksheets

(t) = [(log[ /( ( + ))]) / ] (t s+1)T X FF s,t t

Remaining Failures Predicted at Time t:

r(t) = (/) – Xs,t

Cumulative Number of Failures Detected at Time T:

D(T) = (α/β)[1 – exp (-β ((T –s + 1)))] + Xs-1

Cumulative Number of Failures Detected Over Life of Software TL:

D(TL) = / + Xs-1

Equations developed by Dr. Norman Schneidewind, Naval Postgraduate School, Monterey, CA

Time to Next Failure(s) Predicted at Time t