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

Create successful ePaper yourself

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

46 Concepts for Analysis, <strong>Specification</strong> and Design<br />

accept(PI)<br />

i<br />

productArrived<br />

Product_<br />

Input_<br />

Handler<br />

piti<br />

currentPosition<br />

(Position)<br />

wake<br />

wakeAt(Position,Id)<br />

wakeup(Id)<br />

free(PIKeeperID<br />

)<br />

pihp<br />

store(PIKeeperId,PI)<br />

pihs<br />

schedule<br />

(PIKeeperId,<br />

InitialPosition)<br />

Figure 3.10: Product Input Handler Message Interface<br />

Channels are visualised in Instance Structure Diagrams. We do not show such diagram<br />

in this very brief overview <strong>of</strong> the method.<br />

Below we present an example <strong>of</strong> a behaviour description in POOSL for a<br />

Product Input Handler object class. Behaviour is always described <strong>of</strong> classes and<br />

not <strong>of</strong> individual objects. All stations in a mailing machine contain at least one<br />

Product Input Handler object. Therefore it is convenient to describe the behaviour only<br />

once for the whole class <strong>of</strong> Product Input Handler objects. An explanation <strong>of</strong> the meaning<br />

follows immediately after the next example:<br />

process class "Announces the behaviour description <strong>of</strong> a process class."<br />

Product Input Handler myId,productDistance ¡<br />

instance variables "Declaration <strong>of</strong> the variables."<br />

myId<br />

productDistance<br />

productInfo<br />

initialPosition<br />

piKeeperId<br />

: ProductInputHandlerId<br />

: PositionDelta<br />

: PI<br />

: InitialPosition<br />

: PIKeeperId<br />

communication channels "Definitions <strong>of</strong> the communication channel names."<br />

i piti wake pihs pihp<br />

message interface "Definition <strong>of</strong> messages to be sent (!) or received (?) on channels."<br />

i?accept(PI)<br />

piti?productArrived<br />

piti?currentPosition(Position)<br />

wake!wakeAt(Position,ProductInputHandlerId)

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

Saved successfully!

Ooh no, something went wrong!