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.

12.3 The Essential <strong>Specification</strong> 389<br />

PositionDelta 16 . A Position can be setToZero and can be incremented. Further a PositionDelta<br />

can be added to it, or a Position can be subtracted from it. If a Position is sent the message<br />

asInitialPosition it will create a new and equivalent InitialPosition object. The data class<br />

InitialPosition is a specialisation <strong>of</strong> data class Position.<br />

12.3.8 The POOSL formalisation<br />

When Message Flow Diagrams, Instance Structure Diagrams and Object Class Diagrams<br />

are ready, the model can be formalised in the POOSL language. For the formalisation <strong>of</strong><br />

the complete control system we consider the Instance Structure Diagram <strong>of</strong> Figure 12.7.<br />

From this diagram it easily follows that the specification is <strong>of</strong> the form:<br />

( Station§ i1© i¥ c1© o<br />

Feeder<br />

Merger Station§ c1© i¥ c2© o¥ c6© si<br />

¢<br />

¢ Feeder Station§ c2© i¥ c3© o<br />

¢ Packer Station§ c3© i¥ c4© o<br />

¢ Separator© Printer Station§ c4© i¥ c5© o<br />

¢ Stacker Station§ c5© i¥ o1© o<br />

¢ Feeder Station§ c7© i¥ c6© o<br />

¢ Feeder Station§ i2© i¥ c7© o<br />

¢ Product Information Server<br />

) £<br />

c1¥ c2¥ c3¥ c4¥ c5¥ c6¥ c7¥ i1¥ i2¥ o1¦<br />

Each <strong>of</strong> the stations is an instance <strong>of</strong> a corresponding cluster class. The feeder stations<br />

are instances <strong>of</strong> cluster class Feeder Station. From Figure 12.8 it follows that the instances<br />

<strong>of</strong> this class are built from a Feeder Controller instance, a Transporter instance and from a<br />

Feeding Unit instance. The specification <strong>of</strong> the Feeder Station class is as follows:<br />

cluster class<br />

§©¨£¨<br />

¢¡£¡£¤¥¡£¦<br />

"Cluster type: module <strong>of</strong> distribution."<br />

communication channels<br />

i o<br />

message interface<br />

i?accept(PI)<br />

o!accept(PI)<br />

behaviour specification<br />

( Feeder Controller<br />

Transporter<br />

Feeding Unit<br />

)<br />

The Feeder Controller is a cluster that is built from a Product Input Handler, a<br />

number <strong>of</strong> Product Info Keepers, a Product Output Handler, a Service Scheduler, a<br />

Service Administrator, a Transporter Image and a Feeding Unit Image, see Figure 12.8.<br />

16 The PositionDelta is the unity <strong>of</strong> difference. ’Difference’ is the gerund <strong>of</strong> ’to differ’. The gerund, indicated<br />

by the symbol, means that a relation is modelled as an object.

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

Saved successfully!

Ooh no, something went wrong!