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.6 Aggregates 83<br />

4.6.4 Clustered Aggregates<br />

To simplify models it is convenient to hide an entire aggregate into a cluster. This<br />

enables manipulation <strong>of</strong> aggregates as wholes. Figure 4.21 shows a clustered aggregate.<br />

a<br />

a<br />

d<br />

Object C<br />

(Part)<br />

Aggregate<br />

object<br />

(Whole)<br />

f<br />

Cluster<br />

b<br />

e c<br />

Object B<br />

(Part)<br />

Figure 4.21: A Clustered Aggregate<br />

All communication to the cluster is internally redirected to its aggregate object. The<br />

cluster acts as an abstraction <strong>of</strong> the aggregate. The aggregate can be approached as a<br />

whole via the message interface <strong>of</strong> the cluster. Notice, that the cluster does not have the<br />

same message interface as the aggregate object in it. The aggregate object’s interface can<br />

be considered as consisting <strong>of</strong> two parts. Firstly it has an external interface, which is<br />

identical to the interface <strong>of</strong> the cluster. In Figure 4.21 both these interfaces have messages<br />

a, b and c. Secondly it has an interface part for the communication with the hidden part<br />

objects. The messages d and e are defined in this part <strong>of</strong> the message interface. All<br />

x<br />

x<br />

Aggregate<br />

object A<br />

(Whole)<br />

y y<br />

Object C<br />

(Part)<br />

r s<br />

t<br />

Cluster<br />

Object B<br />

(Part)<br />

Figure 4.22: Channels to a Clustered Aggregate<br />

communication <strong>of</strong> a clustered aggregate is performed via channels that pass the cluster<br />

b<br />

c

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

Saved successfully!

Ooh no, something went wrong!