13.10.2013 Views

Software engineering for real-time systems

Software engineering for real-time systems

Software engineering for real-time systems

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

External<br />

item 1<br />

External<br />

item 2<br />

DFD design - the context diagram<br />

Data 1 in<br />

Data 2 in<br />

The system<br />

software<br />

Data 3 out<br />

Data 4 out<br />

External<br />

item 3<br />

External<br />

item 4<br />

The purpose of a context diagram is to show the relationship of the system software with its<br />

environment.<br />

It portrays the complete system in its simplest <strong>for</strong>m: a set of external items connected to a<br />

software ‘black box’.<br />

It contains:<br />

- A single processing unit (the ‘bubble’) representing the complete software system.<br />

- The external items which this software interfaces to.<br />

- Data flows into and out of the software.<br />

SOFTWARE ENGINEERING <strong>for</strong> REAL-TIME SYSTEMS (© J.E.Cooling 2003) Data flow design concepts - slide 7<br />

Data 1 in<br />

Data 2 in<br />

DT<br />

1<br />

DT<br />

2<br />

First-level DFD - general <strong>for</strong>m<br />

Data X<br />

Data Y<br />

Data Z<br />

DT<br />

3<br />

DT<br />

4<br />

Data A<br />

SOFTWARE ENGINEERING <strong>for</strong> REAL-TIME SYSTEMS (© J.E.Cooling 2003) Data flow design concepts - slide 9<br />

DT<br />

5<br />

Data 4 out<br />

Data B Data 3 out<br />

Second-level DFD - levelled <strong>for</strong>m of the DT ‘Compute braking signals’<br />

Speed 1<br />

Speed 2<br />

Compute wheel<br />

accel/decel<br />

2.1<br />

Compute wheel<br />

accel/decel<br />

2.2<br />

Wheel 1 accel/decel<br />

Wheel 2 accel/decel<br />

Compute<br />

braking correction<br />

signals<br />

2.3<br />

Stored values<br />

Accel/decel<br />

profiles<br />

valve 1 signal<br />

valve 2 signal<br />

SOFTWARE ENGINEERING <strong>for</strong> REAL-TIME SYSTEMS (© J.E.Cooling 2003) Data flow design concepts - slide 11<br />

Speed sensor 1<br />

Speed sensor 2<br />

Tyre pressure 1<br />

Tyre pressure 2<br />

Context diagram - anti-skid braking system<br />

Wheel 1 speed<br />

Wheel 2 speed<br />

Tyre 1 pressure<br />

Tyre 2 pressure<br />

Anti-skid<br />

braking<br />

system<br />

Valve 1 signal<br />

Valve 2 signal<br />

Display data<br />

Valve 1<br />

Valve 2<br />

Vehicle dash<br />

display<br />

SOFTWARE ENGINEERING <strong>for</strong> REAL-TIME SYSTEMS (© J.E.Cooling 2003) Data flow design concepts - slide 8<br />

Wheel 1 speed<br />

Wheel 2 speed<br />

Tyre 1 pressure<br />

Tyre 2 pressure<br />

Example first-level DFD - anti-skid braking system<br />

Measure wheel<br />

speeds<br />

1<br />

Measure tyre<br />

pressures<br />

3<br />

Pressure 1<br />

Pressure 2<br />

Speed 1<br />

Speed 2<br />

Compute<br />

braking signals<br />

2<br />

Control dash<br />

display<br />

4<br />

Braking 1<br />

signal<br />

Braking 2<br />

signal<br />

Control servo<br />

value 1<br />

5<br />

Control servo<br />

valve 2<br />

6<br />

Valve 1 signal<br />

Valve 2 signal<br />

Display<br />

data<br />

SOFTWARE ENGINEERING <strong>for</strong> REAL-TIME SYSTEMS (© J.E.Cooling 2003) Data flow design concepts - slide 10<br />

A<br />

B<br />

B<br />

Entity 1<br />

Levelling and balancing in DFD design<br />

A<br />

Entity 2 <strong>Software</strong> system<br />

B<br />

DT1<br />

DT2<br />

D<br />

E<br />

DT3<br />

F<br />

2.1 2.2<br />

SOFTWARE ENGINEERING <strong>for</strong> REAL-TIME SYSTEMS (© J.E.Cooling 2003) Data flow design concepts - slide 12<br />

C<br />

C<br />

E<br />

Entity 3<br />

Context<br />

diagram<br />

First level<br />

DFD<br />

Second<br />

level DFD<br />

2

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!