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.

11.4 Essential <strong>Specification</strong> Modelling 365<br />

Message Flow Diagrams. The exchange <strong>of</strong> messages is visualised in Message Flow<br />

Diagrams, however the order in which messages are processed is mainly described<br />

in scenario narratives. The information <strong>of</strong> all scenarios for each class must be<br />

combined to be able to write a complete behaviour description.<br />

Besides the structure description that can be derived straightforward from the diagrams,<br />

the internal dynamic behaviour <strong>of</strong> classes must be created. Data objects have a simple<br />

direct relation between messages and methods. However process objects must be designed<br />

carefully as a collection <strong>of</strong> methods, each <strong>of</strong> which is rather independent <strong>of</strong> the<br />

process object’s messages interface.<br />

In general, processes are described taking the following into account:<br />

methods can be used to create named states according to the problem domain;<br />

messages can be received conditionally, so that a process can autonomously decide<br />

which messages it wants to receive when;<br />

the order <strong>of</strong> messages in a scenario can be described straightforwardly;<br />

messages can be used to model events and responses;<br />

tail recursion can be used for the description <strong>of</strong> non terminating behaviour;<br />

interrupts can be used for the reception <strong>of</strong> messages during the execution <strong>of</strong> some<br />

behaviour;<br />

aborts can be used to describe behaviour that can be stopped without the need for<br />

resumption;<br />

alternative behaviours can be described as non-deterministic choices;<br />

asynchronous communication can be realised by defining an additional buffer<br />

object;<br />

the use <strong>of</strong> channel names as destinations can conflict with Behaviour-Preserving<br />

Transformations;<br />

sequential behaviour does require waiting for a reply after each sending action.<br />

The purpose <strong>of</strong> the Essential Unified Model is an extensive exploration <strong>of</strong> the wishes<br />

<strong>of</strong> the users, customers, employers, and various experts. The model must become<br />

a correctly executing specification. Currently tools are under development to enable<br />

simulation.<br />

A concrete example <strong>of</strong> a POOSL description is given in Chapter 12. An extensive<br />

description <strong>of</strong> the use <strong>of</strong> the language is beyond the scope <strong>of</strong> this thesis. Teaching<br />

material must be developed as future research based on concrete examples.

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

Saved successfully!

Ooh no, something went wrong!