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.

364 SHE Framework<br />

Behaviour-Preserving Transformations can affect clusters that carry boundaries. In<br />

such a case we must verify whether the new structure does appropriately specify the<br />

properties required. Otherwise the affected boundaries must be redesigned carefully.<br />

By definition <strong>of</strong> boundaries we can minimise the number <strong>of</strong> iterations in the design<br />

process. The boundaries are important directives for the specification style <strong>of</strong> the classes<br />

in the Unified Model.<br />

If two processes from the same class are enclosed in different boundaries it can be<br />

necessary to define separate classes for these processes. These separate classes can<br />

perform the same observable behaviour, but can have interesting differences also. A<br />

particular style, for example, can fulfil the requirements for a straightforward translation<br />

to a particular implementation description language, whereas another style may be<br />

inappropriate.<br />

In Chapter 10 we <strong>of</strong>fered a collection <strong>of</strong> basic Behaviour-Preserving Transformations for<br />

the restructuring ISDs, as well as an example. In this subsection about ISDs we showed<br />

that various additional aspects specified as boundaries can influence the desirability <strong>of</strong><br />

particular transformations.<br />

11.4.8 Formal Description in an Essential Unified Model<br />

The behaviour description <strong>of</strong> the system in POOSL is called the Unified Model. During<br />

the essential modelling phase a lot <strong>of</strong> effort is put into the creation <strong>of</strong> Message Flow<br />

Diagrams, Object Class Diagrams and Instance Structure Diagrams. These various parts<br />

<strong>of</strong> a model all <strong>of</strong>fer a particular view on the system that is a part <strong>of</strong> the preparation for<br />

the creation <strong>of</strong> Unified Model. From the point <strong>of</strong> view <strong>of</strong> the preparation <strong>of</strong> the Unified<br />

Model, we summarise the use <strong>of</strong> the various models. Notice however that the creation<br />

<strong>of</strong> a POOSL description is not always a last step in the process. It is recommended to<br />

perform some try outs, especially for the core <strong>of</strong> the conceptual solution. It appears that<br />

intermediate attempts <strong>of</strong>fer a lot <strong>of</strong> additional understanding that can prevent costly<br />

iterations in a later phase.<br />

The various models prepare the Unified Model as follows:<br />

Object Class Diagrams. They show the process classes as well as the data classes that<br />

must be described in the Unified Model. Attributes are in general implemented<br />

as variables. The messages are defined in message interfaces <strong>of</strong> classes. (The<br />

dynamic use <strong>of</strong> messages is described in the methods.) Relations between classes<br />

are in general implemented as properties <strong>of</strong> classes that must be implemented in<br />

its internal behaviour.<br />

Instance Structure Diagrams. The hierarchical structure <strong>of</strong> clusters found in ISDs is<br />

used to create the System <strong>Specification</strong> in the Unified Model. The ISDs channel<br />

names are used as outer channel names that must be coupled to inner channel<br />

names <strong>of</strong> instances. Boundaries must be used to determine the style <strong>of</strong> behaviour<br />

description <strong>of</strong> a class.

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

Saved successfully!

Ooh no, something went wrong!