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.

358 SHE Framework<br />

Buffered message flow<br />

This type models typically asynchronous communication. The sender can always send<br />

without bothering about synchronisation with the receiver. This type <strong>of</strong> flow makes<br />

objects temporal independent. This type <strong>of</strong> flow is useful in distributed systems and in<br />

general for the communication with subsystems that require temporal independence.<br />

11.4.5.7 Design <strong>of</strong> Composites<br />

In Sections 4.6 and 4.8 we described concepts for modelling various sorts <strong>of</strong> composites<br />

and their properties. These concepts can be used for the recognition <strong>of</strong> particular<br />

structures that emerge in MFDs. We can derive rules for the construction <strong>of</strong> various<br />

sorts <strong>of</strong> composites. Some examples:<br />

Message flows that connect an aggregate with its environment must be connected<br />

to the aggregate object <strong>of</strong> the aggregate.<br />

Dependence requires connection by a message flow that represents a request for a<br />

service. The direction <strong>of</strong> the request is from the dependent object to the receiver.<br />

If an object owns another object, only the owner sends requests to the owned object.<br />

A whole dominated part can only give a reply after a request. If the part and the<br />

whole are not concurrent, a message flow with reply is appropriate.<br />

Besides the visible structure <strong>of</strong> flows there is a less eye catching structure which is that<br />

<strong>of</strong> dynamic links. The identifiers <strong>of</strong> groups <strong>of</strong> collaborating objects form a name space.<br />

Such a space determines the ability <strong>of</strong> weakly distributed communication, and must be<br />

designed carefully. For instance distribution boundaries can indicate the desirability<br />

<strong>of</strong> separate name spaces. The use <strong>of</strong> identifiers is shown on the flows. Identifiers are<br />

implemented by parameters in messages. These parameters are textually annotated on<br />

message flows in MFDs. The annotation <strong>of</strong> these texts is a specification <strong>of</strong> the sort <strong>of</strong><br />

communication.<br />

Modules <strong>of</strong> distribution can be designed to communicate autistically. Autistic communication<br />

is modelled by messages that do not use parameters for passing object<br />

identifiers.<br />

In general we recommend to use weakly distributed communication as much as possible<br />

because this does not restrict the possibilities for structure transformations. When<br />

the model becomes stable and no further transformations are expected it is the right<br />

time to implement autistic communication in a model. This is achieved by removing<br />

the parameters that carry identifiers from the messages that flow between strongly<br />

distributed modules.<br />

Besides distribution there may be other reasons to restrict the space where particular<br />

identifiers can be used. We introduced the concept <strong>of</strong> visibility to reason about this. The<br />

concept <strong>of</strong> visibility is directly related to the use <strong>of</strong> identifiers for message passing.

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

Saved successfully!

Ooh no, something went wrong!