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.

338 SHE Framework<br />

model <strong>of</strong> the system environment. Such a model feeds the system model with stimuli<br />

and accepts responses.<br />

An Essential <strong>Specification</strong> models one or more conceptual solutions that have been selected<br />

to fulfil the needs <strong>of</strong> the users (the environment) <strong>of</strong> a system to be developed. The<br />

information in the Initial Requirements Description and the Purpose Description <strong>of</strong> a<br />

system must match the conceptual solutions. A conceptual solution enables us to find<br />

objects and structures that represent this solution. The level <strong>of</strong> abstraction <strong>of</strong> an essential<br />

model must be such that it presents conceptual solutions clearly.<br />

Prescribed technologies and topologies are incorporated into the essential specification.<br />

Of course low level implementation details must be abstracted from. The structure <strong>of</strong><br />

an essential model must be designed such that structural constraints that are known<br />

beforehand are respected.<br />

11.2.3 Extended <strong>Specification</strong><br />

Milestone 2 indicates the start <strong>of</strong> the Extended <strong>Specification</strong> phase. The goal <strong>of</strong> this phase<br />

is to incorporate decisions for particular implementation technologies in the essential<br />

system requirements. An example can clarify this goal. Messages are passed via ideal<br />

channels in an essential specification. In reality however, channels can be error prone<br />

connections. Appropriate protocols must be selected to implement message passing<br />

via real physical channels. This means that the behaviour <strong>of</strong> both the sending and the<br />

receiving object must be extended. Instead <strong>of</strong> the simple behaviour <strong>of</strong> message passing,<br />

an appropriate protocol behaviour must be implemented. Whether an extension is<br />

required depends in general on the implementation technology that is selected. When<br />

communication between collaborating objects is implemented purely in s<strong>of</strong>tware, channels<br />

can ’dissolve.’ Communication can be performed by passing references, so that<br />

channels really disappear from the model.<br />

The decision for implementation <strong>of</strong> system parts in s<strong>of</strong>tware or hardware and the selection<br />

<strong>of</strong> communication protocols will in general require substantial extensions and<br />

adjustments <strong>of</strong> the model. By performing extensions we make the design path from<br />

essence to real implementation passable. The Extended <strong>Specification</strong> uses the same representation<br />

techniques as the essential specification. Therefore the same techniques can<br />

be used for verification <strong>of</strong> an essential model as for verification <strong>of</strong> an extended model.<br />

Similar to the Essential <strong>Specification</strong>, the Extended <strong>Specification</strong> contains a behaviour<br />

model (Extended Behaviour Model), and a structure model (Implementation Structure<br />

Model). Again the behaviour model and the structure model must be developed in a<br />

strong interaction. Extended Behaviour and Implementation Structure are formalised<br />

into an Extended Unified formal description in the language POOSL. This description<br />

enables further detailed examination <strong>of</strong> various system properties via simulation and<br />

verification. The result <strong>of</strong> these activities must be a correct, rather concrete system<br />

model, so that the step to implementation can be taken with low risk.

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

Saved successfully!

Ooh no, something went wrong!