Design Pattern: Proxy

Problem Statement

The proxy pattern is described as one which "decouples clients from their servers by creating a local proxy, or stand-in, for the less accessible server. When the client needs to request a service from the server, such as retrieving a value, it asks its local proxy. The proxy can then marshal a request to the original serverů."[B.P.Douglass, Real-Time UML]. One use for this pattern in the IEC 61499 context is to utilize service interface function blocks (SIFBs) as proxies for functions of devices that may not themselves be compliant to the standard.

Consider the example shown below, where the operation of two machines must be coordinated, but the machine interfaces are located on incompatible sensor/actuator links. In this case, interoperation may be achieved by using two IEC 61499-compliant devices, each with its own special-purpose interface to the appropriate sensor/actuator link (or by a single IEC 61499-compliant device containing two such interfaces). The devices may then be populated with SIFBs that serve as local proxies for the actual interfaces located on the sensor/actuator links. Coordinated machine operations can then be achieved by the addition of appropriate application function block instances, data and event connections within each device, plus communication SIFBs to achieve the required event and data connections between the two devices. Note that communication SIFBs would not be required if all proxy SIFBs and application FBs could be co-located within a single resource of a single device.


- TBD -


- TBD -

Last updated: 2010-11-01.
©2006,2010 Holobloc Inc
Licensed under the Academic Free License version 3.0.