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.

324 Behaviour-Preserving Transformations<br />

10. To combine the various communication channels we apply transformation 10 to<br />

the complete specification. 6 is used several times to distribute the applied channel<br />

renaming function over each component <strong>of</strong> the specification. Unfortunately,<br />

in a number <strong>of</strong> application steps <strong>of</strong> 6 transformation condition NoComChange¡ is<br />

not satisfied 4 . In these steps condition NoComChange itself has to be applied. It is a<br />

tedious exercise, but it can be shown that NoComChange is indeed satisfied in each<br />

step. To simplify the resulting channel renaming functions, we repeatedly apply<br />

1, 4 and 5. The resulting Instance Structure Diagram is given in Figure 10.3.<br />

11. A number <strong>of</strong> process objects <strong>of</strong> Figure 10.3 contain different channels that are<br />

externally mapped onto the same channel. For example, each FloorPassengerImage<br />

has internal channels fpsl and fpsi (the inner names are fpsl and fpsi). Externally,<br />

these channels are renamed to fpcc (the outer names are both fpcc). Using<br />

transformation 14 it is possible to carry the renaming through internally. Consider<br />

the topmost instance <strong>of</strong> process class FloorPassengerImage. Its behaviour<br />

specification is given by FloorPassengerImage (¡ FPI¡ ¡ 0¡ ). We apply 14 with C b 1<br />

= FloorPassengerImage, f1 = fpcc/fpsl,fpcc/fpsi,fpfp0/fpfp, C b 2 = FloorPassengerImage1,<br />

f2 = fpcc/fpsi,fpfp0/fpfp, ch fpsl and ch¡ fpcc. The transformed specification<br />

then becomes FloorPassengerImage1 (¡ FPI¡ ¡ 0¡ ) § fpcc© fpsi¥ fpfp0© fpfp , where Floor-<br />

PassengerImage1 is a newly defined process class that is added by means <strong>of</strong> 12.<br />

When 14 is applied again, this specification transforms into FloorPassengerImage2<br />

(¡ FPI¡ ¡ 0¡ ) § fpfp0© fpfp , where FloorPassengerImage2 is yet another process class. In<br />

a similar way, each remaining FloorPassengerImage is replaced by a corresponding<br />

FloorPassengerImage2 process. We then use 12 to eliminate process classes<br />

FloorPassengerImage and FloorPassengerImage1. Finally, process class FloorPassengerImage2<br />

is renamed to FloorPassengerImage by 15. In an analogous way the<br />

instances <strong>of</strong> process classes ElevatorPassengerImage and ElevatorMechanismHandler<br />

are modified.<br />

4 This problem is caused by the weakly distributed nature <strong>of</strong> the elevator specification.

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

Saved successfully!

Ooh no, something went wrong!