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.

CONTENTS xi<br />

6 Modelling <strong>of</strong> Concurrent <strong>Reactive</strong> Behaviour 147<br />

6.1 Introduction ¡ ¢ ¡ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ 148<br />

6.2 Concurrency and Synchronisation ¢ ¡ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ 148<br />

6.2.1 Introduction ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ 148<br />

6.2.2 Concurrency ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ 148<br />

6.2.2.1 Concurrent Process Objects and Sequential Data Objects 148<br />

6.2.2.2 Asynchronous Concurrency ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ 149<br />

6.2.2.3 Synchronous Concurrency ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ 150<br />

6.2.2.4 Computation Time and the Grain <strong>of</strong> Concurrency ¢ ¡ ¢ 150<br />

6.2.2.5 Efficiency ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ 151<br />

6.2.2.6 Examples <strong>of</strong> Concurrency in Object-Oriented Analysis<br />

Methods ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ 151<br />

6.2.2.7 Design Decisions for Concurrency ¢ ¡ ¢ ¡ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ 152<br />

6.2.2.8 Interleaving Semantics ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ 153<br />

6.2.3 Synchronisation ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ 154<br />

6.2.3.1 Non-Determinism ¢ ¡ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ 154<br />

6.2.3.2 Restriction <strong>of</strong> Non-Determinism ¡ ¢ ¡ ¢ ¡ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ 155<br />

6.2.3.3 Summary ¢ ¡ ¢ ¡ ¢ ¡ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ 156<br />

6.3 Communication ¡ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ 156<br />

6.3.1 Introduction ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ 156<br />

6.3.2 Communication Concepts for <strong>Reactive</strong> <strong>Systems</strong> ¡ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ 157<br />

6.3.3 Communication between Objects ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ 158<br />

6.3.3.1 Messages and System Analysis ¡ ¢ ¡ ¢ ¡ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ 158<br />

6.3.3.2 Messages and Methods ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ 160<br />

6.3.3.3 Messages and Concurrency ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ 160<br />

6.3.3.4 Messages, Encapsulation, Sharing and Distribution ¡ ¢ 161<br />

6.3.4 The Basic Primitive for Process Communication ¡ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ 161<br />

6.3.5 Data Object Communication ¡ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ 163<br />

6.3.6 Graphical Communication Primitives for Process Objects ¡ ¢ ¡ ¢ 164<br />

6.3.6.1 Single Message Flow Symbol ¢ ¡ ¢ ¡ ¢ ¡ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ 165<br />

6.3.6.2 Message with Reply Flow Symbol ¢ ¡ ¢ ¡ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ 168<br />

6.3.6.3 The Continuous Flow Symbol ¢ ¡ ¢ ¡ ¢ ¡ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ 169<br />

6.3.6.4 Buffered Message Symbol ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ 171<br />

6.3.6.5 Interrupt Message Symbol ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ 173<br />

6.3.6.6 Interrupt with Reply Symbol ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ 175<br />

6.3.7 Multi-Way Communication ¢ ¡ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ 176<br />

6.3.8 Communication with Object-Multiples ¢ ¡ ¢ ¡ ¢ ¡ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ 179<br />

6.3.9 Communication Links ¡ ¢ ¡ ¢ ¡ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ 180<br />

6.3.9.1 Static Links ¡ ¢ ¡ ¢ ¡ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ 180<br />

6.3.9.2 Dynamic Links with Process Objects ¢ ¡ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ 181<br />

6.3.9.3 Dynamic Links with Data Objects ¢ ¡ ¢ ¡ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ 182<br />

6.3.9.4 Modelling Aspects ¡ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ 183<br />

6.3.10 Behaviour Description <strong>of</strong> Communication ¢ ¡ ¢ ¡ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ 183<br />

6.3.10.1 Description <strong>of</strong> Process Object Communication ¢ ¡ ¢ ¡ ¢ 183<br />

6.3.10.2 Description <strong>of</strong> Data Object Communication ¡ ¢ ¡ ¢ ¡ ¢ 185<br />

6.3.10.3 Summary ¢ ¡ ¢ ¡ ¢ ¡ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¡ ¢ ¡ ¢ ¡ ¢ ¡ ¢ 185

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

Saved successfully!

Ooh no, something went wrong!