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.

230 Introduction to the Semantics <strong>of</strong> POOSL<br />

7.1 Introduction<br />

In the previous Chapters 4,5 and 6 the method concepts that constitute the SHE method<br />

were described in detail. Recall that the SHE method starts <strong>of</strong>f with informal modelling<br />

and gradually produces rigorous specifications described in the formal specification<br />

language POOSL[Voe94, Voe95a, Voe95b]. This means that during the process <strong>of</strong> specification,<br />

the method concepts are mapped little by little onto the formal (syntactic)<br />

language primitives <strong>of</strong> POOSL 1 . For instance:<br />

All types <strong>of</strong> message flows are basically mapped onto the pair-wise synchronous<br />

message passing primitive. Sometimes, for instance in case <strong>of</strong> the interrupt flow,<br />

other primitives are also required.<br />

Architecture structure and topology is mapped onto process object primitives,<br />

cluster primitives and channel primitives.<br />

Clusters that carry boundaries are mapped onto cluster primitives.<br />

Attributes and conceptual relations in Object Class Diagrams are basically mapped<br />

onto instance variable primitives.<br />

Scenario narratives and the corresponding Message Flow Diagrams are mapped<br />

onto behaviour description primitives.<br />

Carrying out the mapping from concepts onto the language primitives is called formalisation.<br />

The way the different method concepts are formalised is explained in Chapters<br />

4,5 and 6. In this and the following chapters, the focus will be on the POOSL language<br />

and its supporting language primitives.<br />

The language POOSL as well as the backgrounds <strong>of</strong> its development is described in<br />

Chapters 8 and 9. This chapter gives a brief characterisation <strong>of</strong> the language. It explains<br />

the reasons why we developed a formal language. It further introduces some basic<br />

mathematics that is assumed to be known in Chapters 8, 9 and 10.<br />

7.2 A Brief Language Characterisation<br />

Process Objects<br />

A specification in POOSL consists <strong>of</strong> a fixed set <strong>of</strong> process objects and process-object<br />

clusters, which are composed by parallel composition, channel hiding and channel<br />

renaming. For convenience we will <strong>of</strong>ten use the terms processes and clusters to denote<br />

process objects respectively process-object clusters. Processes and clusters are statically<br />

interconnected in a topology <strong>of</strong> channels, through which they can communicate by<br />

exchanging messages. Message exchange is based upon the synchronous (rendezvous)<br />

pair-wise message-passing mechanism <strong>of</strong> CCS [Mil80, Mil89].<br />

1 In general, it may take several language primitives to express a single concept. On the other hand,<br />

some particular primitive may be required to express different concepts. See also Section 9.7

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

Saved successfully!

Ooh no, something went wrong!