Software engineering for real-time systems
Software engineering for real-time systems
Software engineering for real-time systems
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