In order to specify ``real'' distributed systems, the concept of virtual node is introduced to YAON as Atkinson did in [Atk91]. Virtual nodes are clusters of classes (or packages). These clusters are the set of nodes/classes which will potentially be distributed to physical locations.
In this way remote client/server relationships can be specified. An example of this notation is given in figure 25.
In this example three virtual nodes are depicted, namely node_1, node_2 and node_3. node_1 only contains the Class_B, node_2 contains the Class_Y and Class_Z and node_3 contains a package Pack_A which contains the Class_X. The Class_B from node_1 is in a client/server relationship with the Class_Y from node_2 and it is also in a client/server relationship with the Class_Z from the same node. The Class_X from package_A from node_3 is also in a client/server relationship with the Class_Z of node_2.
The communication between virtual nodes can be done by normal method invocation as described in 3.2 or, if the virtual nodes are to be distributed, remote communication mechanisms can be used as described in 3.8.
|
|