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.

5.8 Boundaries 137<br />

x<br />

w w<br />

x Object A<br />

y z<br />

Object C<br />

a b<br />

c<br />

IMPL: i80960<br />

5.8.3 Behaviour and Boundaries<br />

5.8.3.1 Behaviour Styles<br />

Object B<br />

Cluster used as<br />

implementation<br />

boundary: this cluster<br />

must be inplemented<br />

with an intel 80960<br />

microprocessor.<br />

Figure 5.11: Implementation Boundary<br />

In the previous subsection (5.8.2), the application examples <strong>of</strong> boundaries mainly<br />

showed possible formalisation <strong>of</strong> various forms <strong>of</strong> structure in the object models. In<br />

5.2.3 about Modules, we wrote: ’The style <strong>of</strong> a behaviour description <strong>of</strong> a module should be influenced<br />

strongly by its properties.’ Boundaries specify properties such as implementation<br />

technology, concurrent or sequential behaviour, or distribution. These design decisions<br />

should be taken as early as possible because they should influence the behaviour description<br />

style. For example: a composite that is specified to have sequential behaviour<br />

must be described such that only one object is active. A way to achieve this is to make<br />

one object responsible for the mode <strong>of</strong> operation <strong>of</strong> the composite. This can be achieved<br />

by using a supervised composite, see 4.8.8.<br />

Another example is the partitioning <strong>of</strong> a system into hardware and s<strong>of</strong>tware. Implementation<br />

boundaries can prescribe specific implementations. In case <strong>of</strong> a s<strong>of</strong>tware<br />

implementation in an object-oriented implementation language, it may be worthwhile<br />

to put effort in additional object modelling, to find generalisation/specialisation structures.<br />

Object classes should be modelled according to such structures. A hardware<br />

implementation may be synchronised by one common clock. In contrast, distribution<br />

will usually cause asynchronous execution. The communication and the behaviour <strong>of</strong><br />

the objects must be modelled accordingly. It may be clear that POOSL modelling <strong>of</strong><br />

behaviour must be postponed until a model is somehow getting mature. The modelling<br />

process must be so far that most objects have been found and their communication must<br />

have been modelled according to architecture structures. Postponing too long, however,<br />

is disadvantageous. Behaviour modelling may give important additional understanding.<br />

A structure which must be changed because it was chosen too early does not have to

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

Saved successfully!

Ooh no, something went wrong!