20
1 Software Testing and Quality Assurance Lecture 35 – Software Quality Assurance

1 Software Testing and Quality Assurance Lecture 35 – Software Quality Assurance

  • View
    212

  • Download
    0

Embed Size (px)

Citation preview

Page 1: 1 Software Testing and Quality Assurance Lecture 35 – Software Quality Assurance

1

Software Testing and Quality Assurance

Lecture 35 – Software Quality Assurance

Page 2: 1 Software Testing and Quality Assurance Lecture 35 – Software Quality Assurance

2

Lecture Objectives Reliability Block Diagrams

Series – Parallel Systems

Page 3: 1 Software Testing and Quality Assurance Lecture 35 – Software Quality Assurance

3

Reliability Block Diagrams We need some way of predicting and

evaluating the reliability of our designs. For system there are well established

modeling methods: Reliability Block Diagrams; and Markov Models

These models are stochastic in nature.

Page 4: 1 Software Testing and Quality Assurance Lecture 35 – Software Quality Assurance

4

Reliability Block Diagrams Stochastic process is one in which

There is a sequence of events in time where each event is part of a probability distribution.

Page 5: 1 Software Testing and Quality Assurance Lecture 35 – Software Quality Assurance

5

Series – Parallel Systems Reliability block diagrams seek to

decompose systems into parallel and serial blocks Where each block interacts with other

block to effect the reliability of the system as a whole.

Page 6: 1 Software Testing and Quality Assurance Lecture 35 – Software Quality Assurance

6

Series – Parallel Systems - Example

Page 7: 1 Software Testing and Quality Assurance Lecture 35 – Software Quality Assurance

7

Series – Parallel Systems - Example

A redundant pair of writers put values from the source onto the bus, and

A reader that reads the values from the bus.

The system fails if no message is received by the readerin the given time interval.

Page 8: 1 Software Testing and Quality Assurance Lecture 35 – Software Quality Assurance

8

Series – Parallel Systems - Example

A message starting at the source then it is passed to both writers and both writers pass the message to both channels.

Page 9: 1 Software Testing and Quality Assurance Lecture 35 – Software Quality Assurance

9

Series – Parallel Systems - Example

In the model, Each writer acts in serial with the bus and Both channels of bus act in serial with the

reader. To analyze the model;

We must calculate the reliabilities for the serial And parallel blocks in the model.

Page 10: 1 Software Testing and Quality Assurance Lecture 35 – Software Quality Assurance

10

Series – Parallel Systems - Example

Page 11: 1 Software Testing and Quality Assurance Lecture 35 – Software Quality Assurance

11

Reliability and Failure Logic for Serial Blocks

For the system to model without failure at a given time T, Each of the components B1, B2 and B3 must

function independently with out failure for the time period T.

For system to function in the Time T, either Block 1 must not fail in time T; Block 2 must not fail in time T; Block 3 must not fail in time T.

Page 12: 1 Software Testing and Quality Assurance Lecture 35 – Software Quality Assurance

12

Reliability and Failure Logic for Serial Blocks

For system to fail in the Time T, Only one of the components need to fail.

Thus, the probability of failure is

Page 13: 1 Software Testing and Quality Assurance Lecture 35 – Software Quality Assurance

13

Reliability and Failure Logic for Serial Blocks

The law of additive law of probability gives us;

Where F(Bi) is the probability that the first failure in Bi will occur before Time T.

Page 14: 1 Software Testing and Quality Assurance Lecture 35 – Software Quality Assurance

14

Reliability Logic for Parallel Blocks

All blocks must fail before the system fails and Only one block needs to function for the

system to function. Parallel blocks, work almost inversely to

serial blocks.

Page 15: 1 Software Testing and Quality Assurance Lecture 35 – Software Quality Assurance

15

Reliability Logic for Parallel Blocks

For a parallel block to fail in a time T, We need all of the blocks to fail within the

time T and so

Page 16: 1 Software Testing and Quality Assurance Lecture 35 – Software Quality Assurance

16

Reliability Logic for Parallel Blocks

For a parallel blocks to be reliable for a time T, We have must experience no failure in time

T.

Page 17: 1 Software Testing and Quality Assurance Lecture 35 – Software Quality Assurance

17

Reliability Block Diagrams from System Architectures - Guidelines

Guideline 1 Determine what constitutes a system

failure. This in turn determines which component failures causes a system to fail.

Guideline 2 Determine what components need to fail in

order to cause a system failure. How messages, signals or data flows

Page 18: 1 Software Testing and Quality Assurance Lecture 35 – Software Quality Assurance

18

Reliability Block Diagrams from System Architectures - Guidelines

Guidelines 3 Try to ensure that each block in the

reliability block model captures one function of the system.

Guideline 4 Try to ensure that you capture the

parallel/serial connections from the system accurately .

Page 19: 1 Software Testing and Quality Assurance Lecture 35 – Software Quality Assurance

19

Reliability Block Diagrams from System Architectures - Guidelines

Guidelines 5 There may be more than one mode for the

system. You need to create a reliability block

diagrams for each mode of the system.

Windows can operate in a Safe Mode, More reliable because it is limited to basic functionality.

Page 20: 1 Software Testing and Quality Assurance Lecture 35 – Software Quality Assurance

20

Key points Reliability Block Diagrams; and Markov

Models Reliability block diagrams seek to

decompose systems into parallel and serial blocks

Reliability and Failure Logic