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.

158 Modelling <strong>of</strong> Concurrent <strong>Reactive</strong> Behaviour<br />

Asynchronous communication with reply:<br />

Without waiting for confirmation the sending object continues performing its<br />

own activities, while the receiving object prepares a reply. A time-out may<br />

notify the sender that the receiving object did not reply within a predefined<br />

time interval. The sender must decide what to do with results that come back<br />

too late.<br />

Continuous communication:<br />

The sending object is always (continuously) prepared to deliver a message.<br />

The receiving object must take initiative to read a message from a sending<br />

object.<br />

Interrupting communication:<br />

The sending object forces the receiving object to suspend its current activity.<br />

Suspension may be:<br />

an abort, which means that the current behaviour <strong>of</strong> the receiver will not<br />

be resumed;<br />

an interrupt, which means that the current behaviour <strong>of</strong> the receiver can<br />

be resumed after temporarily having performed an alternative behaviour.<br />

Besides pair-wise communication there are also forms <strong>of</strong> multi-way communication. We<br />

describe two sorts:<br />

Broadcast communication:<br />

A send operation into a broadcast medium causes simultaneous <strong>of</strong>fering <strong>of</strong> a<br />

message to all objects that are connected to the medium. All receiving objects<br />

can simultaneously accept the message.<br />

Multicast communication:<br />

A generalisation <strong>of</strong> broadcast where messages are targeted to a subset <strong>of</strong> the<br />

objects connected to the broadcast medium.<br />

In the next subsections we examine how the presented forms <strong>of</strong> communication can be<br />

expressed in our method.<br />

6.3.3 Communication between Objects<br />

6.3.3.1 Messages and System Analysis<br />

Messages play a crucial role for the creation <strong>of</strong> a complete system model. Messages<br />

are needed because objects encapsulate their internal data. This prevents direct access.<br />

There is no sharing <strong>of</strong> this data with other objects. Any wish to access a data item in<br />

another object needs the indirect mechanism <strong>of</strong> sending a message to that object. A<br />

message to an object may be a request for giving a data item (which is an object itself),

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

Saved successfully!

Ooh no, something went wrong!