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

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

386 Case Study<br />

communicated. For this purpose Instance Structure Diagrams are used. These diagrams<br />

formalise the architecture structure (in the form <strong>of</strong> boundaries) <strong>of</strong> the control system and<br />

are used as a preparation to create a formal POOSL description. An Instance Structure<br />

Diagram <strong>of</strong> a complete production line directly follows from the Message Flow Diagram<br />

<strong>of</strong> Figure 12.3. Each pair <strong>of</strong> successive stations is equipped with a private communication<br />

channel. The resulting diagram is shown in Figure 12.7. Notice that each <strong>of</strong> the clusters<br />

i1<br />

DISTR DISTR DISTR DISTR DISTR DISTR<br />

Separator/<br />

Feeder<br />

Merger<br />

Feeder<br />

Packer<br />

Stacker<br />

i o c1 i o c2 i o c3 i o c4 i Printer o c5 i o<br />

Station<br />

Station<br />

Station<br />

Station<br />

Station<br />

Station<br />

si<br />

c6<br />

o<br />

Feeder<br />

Station<br />

i<br />

c7<br />

o<br />

Feeder<br />

Station<br />

i<br />

DISTR<br />

DISTR<br />

i2<br />

Product_<br />

Information_<br />

Server<br />

Figure 12.7: Instance Structure Diagram <strong>of</strong> the Control System<br />

represents a distribution boundary. These boundaries indicate that each <strong>of</strong> the stations<br />

and the product information server are physically distributed. The Feeder Station cluster<br />

in Figure 12.7 hides its internal structure. This structure is visualised in the Instance<br />

Structure Diagram <strong>of</strong> Figure 12.8. We use the heuristic that each pair <strong>of</strong> dependent entities<br />

is connected by a private communication channel. An exception is formed by the<br />

wake channel which connects the Product Input Handler, the Feeding Unit Image and the<br />

Product Output Handler to the Transporter Image. The Transporter Image exports a wakeUp<br />

service that is used by each <strong>of</strong> the three clients. If a shared channel is used, the POOSL<br />

formalisation <strong>of</strong> the Transporter Image is simplified substantially 10 . Furthermore, the<br />

process class <strong>of</strong> the Transporter Image will become better reusable when a single channel<br />

is used.<br />

12.3.7 Conceptual Model<br />

The Message Flow Diagrams <strong>of</strong> the previous paragraphs contain several references to<br />

data classes in the form <strong>of</strong> parameter types <strong>of</strong> messages. The diagrams do not show how<br />

the data classes are built and how they relate to each other. Data classes and relations are<br />

typically shown in Object Class Diagrams. A (rather incomplete) Object Class Diagram<br />

<strong>of</strong> the mailing machine is shown in Figure 12.9. Next to the most important data classes<br />

10 Notice that the channels can always be split using the behaviour-preserving transformations <strong>of</strong><br />

Chapter 10.<br />

DISTR<br />

o1

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

Saved successfully!

Ooh no, something went wrong!