23.08.2013 Views

Specification of Reactive Hardware/Software Systems - Electronic ...

Specification of Reactive Hardware/Software Systems - Electronic ...

Specification of Reactive Hardware/Software Systems - Electronic ...

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

4.4 Data Objects and Process Objects 75<br />

startJob<br />

readyToAccept(PI)<br />

accept(PI)<br />

Job_<br />

Controller<br />

startConfig<br />

Product_<br />

Input_<br />

Handler<br />

startCount/<br />

ShiftCount(Number)<br />

flushFifo<br />

write(PI)<br />

Config_<br />

Handler<br />

PI_Fifo<br />

startConfig<br />

ShiftEndCorr/<br />

shiftCount(Number)<br />

serviceRequested<br />

(ServiceId)/<br />

service(YesNo)<br />

serviceResult<br />

(OkNotOK)<br />

Figure 4.11: A Message Flow Diagram<br />

Product_<br />

Output_<br />

Handler<br />

readyToAccept(PI)<br />

accept(PI)<br />

The example in Figure 4.11 shows a part <strong>of</strong> a Message Flow Diagram. The goal <strong>of</strong><br />

Message Flow Diagrams is to help reasoning about system behaviour. A process <strong>of</strong><br />

class Job Controller receives a message startJob. The response <strong>of</strong> the process object can be<br />

sending a message startConfig to both an instance <strong>of</strong> class Product Input Handler, and an<br />

instance <strong>of</strong> class Product Output Handler.<br />

Notice that Message Flow Diagrams do not show when and in what order messages<br />

are exchanged. They only show that processes are able to communicate by exchanging<br />

specified messages. The actual behaviour <strong>of</strong> processes is specified in POOSL. Various<br />

Sender<br />

process<br />

Single message flow<br />

Message with reply flow<br />

Continuous flow<br />

Interrupt message flow<br />

Interrupt with reply flow<br />

Buffered message flow<br />

Figure 4.12: Message Flow Symbols<br />

Receiver<br />

process<br />

graphical communication primitives are used in the diagram. They are available to<br />

describe various forms <strong>of</strong> communication between process objects. Figure 4.12 shows<br />

flow symbols that we defined for use in Message Flow Diagrams. They are discussed<br />

extensively in Subsection 6.3.6. It will appear that all flows can be formalised in terms <strong>of</strong>

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

Saved successfully!

Ooh no, something went wrong!