- Home
- Engineering
*ODD: Extending Requirements Analysis 2*

prev

next

out of 48

View

150Download

1

Embed Size (px)

Obstacle Driven Development

Extending Requirements Analysis 2

odd.enterprises

26/02/2015

Obstacle Driven Development

26/02/2015 odd.enterprises 2

ODD Circle Model

26/02/2015 odd.enterprises 3

ODD Process

26/02/2015 odd.enterprises 4

Background

Ideas of Obstacle Driven Development (ODD) are based on numerous development processes including:

ISO V-model

Test Driven Development

ISO specifications

Requirements analysis

Agile principles

26/02/2015 odd.enterprises 5

About Requirements Analysis

Requirements analysis encompasses tasks that determine the needs or conditions necessary for a new or altered product.

Tasks necessary for requirements analysis include:

Analysing, documenting, validating and managing software or system requirements

Identify and resolve conflicting requirements of stakeholders

Identifying business needs or opportunities using testable and traceable processes

26/02/2015 odd.enterprises 6

Requirements Analysis 1

Requirements analysis spiral and Safety Integrity Levels are adapted to give ODD processes.

Requirements analysis is performed in numerous ways

Spiral model

Use case analysis

Safety integrity Levels (SILs)

26/02/2015 odd.enterprises 7

Requirements Analysis 2

A spiral model is superimposed with an M-model and adaptions made.

Agreed Behaviours substitutes Agreed Requirements

Quality Assurance equivalent to Testing

Negotiation similar to Verification

26/02/2015 odd.enterprises 8

Requirements Analysis 3

Further adaption leads to an ODD model for requirements analysis.

Product, Consolidated Requirements and Documents are checkpoints

Verification substituted for Negotiation

Validation substitutes Evaluation

Testing substitutes Quality Assurance

26/02/2015 odd.enterprises 9

ODD Analysis

Requirements analysis is adapted to allow for ODD and combined with the first stages of an M-model.

Safety Integrity Levels used to measure and process hazards

Decision tree approach used to create situations

Verification and validation of specification

26/02/2015 odd.enterprises 10

ODD M-model

Adding Solution and Production stages of development results in an ODD M-model.

ODD process is linked from start to finish, and beyond

Verification and validation between all stages

Tests are ran as additions and editing occurs

26/02/2015 odd.enterprises 11

ODD M-model Checkpoints 1

Checkpoints are determined for the solution and production stages.

Prototype created from integrated solution

Product is result of production

Linked to other checkpoints horizontally

26/02/2015 odd.enterprises 12

ODD M-model Checkpoints 2

Checkpoints allow linking and testing of results to previous stages.

Each checkpoint links another

Prototype fulfils identified requirements

Product should behave as described in documents

26/02/2015 odd.enterprises 13

Fire Triangle 1

A fire triangle is an educational tool for understanding and preventing fires.

If the fire triangle is completed then a fire will occur

Preventing one situation from occurring will prevent a fire

Requirements often regard preventing fires

26/02/2015 odd.enterprises 14

Fire Triangle 2

Using a reordered fire triangle it is seen that components combine to create a hazard.

Process is adaptable to all fire hazards and environments

Extendible to any number of fire hazard situations

Components can be given SIL ratings for Probability, Severity and Controllability

26/02/2015 odd.enterprises 15

Fire Triangle 3

Reordering again gives a decision tree for fire prevention.

Investigated for requirements of a situation

Each branch is analysed and processed

Useful for any and all fire hazards

To simplify oxygen is assumed present

26/02/2015 odd.enterprises 16

Fire Triangle 4

Decision tree shows the hazards of each situation.

Top branch ignites a fire

Next 2 branches are fire hazards

Each situation is analysed separately

26/02/2015 odd.enterprises 17

Probability Tree 1

Probability trees measure likelihood of an event occurring from a defined situation.

A common example is probability of coin tosses

Probability of heads occurring assumed to be 50%

Each branch gives an individual situation

26/02/2015 odd.enterprises 18

Heads 50%

Heads 50%

Tails 50%

Tails 50%

Heads 50%

Tails 50%

Binomial Distribution 1

Binomial distributions determine probability for any number of events with 2 possible outcomes.

Binomial process illustrates how decision trees can be extended

Potential use to model complex interactions

26/02/2015 odd.enterprises 19

Binomial Distribution 2

Binomial distributions determines probability for any number of events with 2 possible outcomes.

Decision trees can be extended for infinite number of events

Only used to model true or false experiments

= =

(1 )

= = Probability of Event

= Number of Events

= Number of Trials

26/02/2015 odd.enterprises 20

Probability Tree 2

Coin toss example is extended into engineering by substituting system components.

Working component replaces heads

Failing component replaces tails

Potential hazards of a series of failures can be determined

26/02/2015 odd.enterprises 21

Component 1Pass 99%

Component 2Pass 98%

Component 2Fail 2%

Component 1Fail 1%

Component 2Pass 98%

Component 2Tails 2%

Binomial Distribution 3

Binomial distributions used to determine probability for components failing.

Commonly used for measuring probabilities in manufacturing

Extendible to model failure in the field

26/02/2015 odd.enterprises 22

Component 1Pass 99%

Component 2Pass 98%

Component 2Fail 2%

Component 1Fail 1%

Component 2Pass 98%

Component 2Tails 2%

Probability Tree 3

Probability trees are easily extended to other situations.

Coins may also land on their side

Landing on sider assigned a probability of 0.017 % (1 per 6000 tosses)

Probability tree has exponentially more branches

26/02/2015 odd.enterprises 23

Head 50%

Head 50%

Tails 50%

Side 1 / 6000

Tails 50%

Head 50%

Tails 50%

Side 1 / 6000

Side 1 / 6000

Head 50%

Tails 50%

Side 1 / 6000

Probability Tree 4

Probability trees can be used to ensure all possible situations are modelled.

Systems have unknown states between pass and fail

Unknown states include loss of communication or wear

Unknown states investigated for effects

26/02/2015 odd.enterprises 24

Component 1Pass 98%

Component 2Pass 96%

Component 2Fail 2%

Component 2Unknown 2%

Component 1Fail 1%

Component 2Pass 96%

Component 2Fail 2%

Component 2Unknown 2%

Component 1Unknown 1%

Component 2Pass 96%

Component 2Fail 2%

Component 2Unknown 2%

Safety Integrity Levels 1

Safety Integrity Levels (SILs) are used to measure potential hazards of a situation.

Situation is analysed for Probability, Severity and Controllability

Estimates for a risk of hazards occurring from the situation

=

= Probability of Event

= Severity of Event

= Controllability of Event

26/02/2015 odd.enterprises 25

Safety Integrity Levels 2

Safety Integrity Levels are used for a wide range of safety critical analysis.

Probability is how likely a situation will occur

Severity is potential damage of a situation

Controllability is ability to effect change in a situation

26/02/2015 odd.enterprises 26

Component

=

Safety Integrity Levels 3

Coin toss example is extended to provide example of SILs.

Probability of result is different for each coin

Severity of outcome measured by hazards

Controllability determined by who flips coin and stakes

26/02/2015 odd.enterprises 27

Safety Integrity Levels 4

Probability tree and SILs are combined to form a decision tree.

Measures added for severity and controllability

Each branch is a situation with SIL ratings and requirements to be found

SIL ratings are applied and found for each situation

26/02/2015 odd.enterprises 28

ODD Decision Tree 1

A decision tree creates situations and processes requirements.

Severity and Controllability are added to each event

Requirements are found with SIL processes using branches

Facilitates a unit testing approach for situations

26/02/2015 odd.enterprises 29

ODD Decision Tree 2

Adding SIL components to a Probability Tree allows requirement identification from a decision tree.

Structure is a branching probability tree with SILs

SILs are found by multiplying along branches of a decision tree

26/02/2015 odd.enterprises 30

ODD Decision Tree 3

Processing resulting decision tree is similar to a probability tree.

SIL ratings processed by multiplyin