The purpose of a subsystem is to group a set of nodes, links and labels, making available to the outside a subset of the input and output connectors of the nodes contained in the subsystem. The connectors that are accessible from outside the subsystem are said to be "published". All the others are said to be "hidden". What differentiates the two is that each published connector is connected to a Connector Node, and a proxy to it is found on one of the four sides of the subsystem. The major benefit of subsystems is that they allow you to have a clear view of the Work Flow, hiding implementation details. Subsytems can have connectors on all four sides, and, unlike node, have no icon. Also, each connector is described using the name of the node that owns the (published) connector to which it provides access.
To add a subsystem to the Work Flow, you need to select all the nodes that will end up within the subsystem. Then, you should invoke the canvas contextual menu, and select the Create Subsystem item from it. A new subsystem will be automatically created, containing all nodes previously selected, and all the links between them. All the connectors that have links to nodes outside the subsystem will be published, whereas all other connectors will stay hidden.
Once you have created a subsystem, you can open it by double-clicking on it (alternatively you can bring up the subsystem contextual menu, and then select the Open Subsystem item). A new window will pop-up. Note that the background color for the main window and for subsystem windows is different (you can set these colors to your liking from the general properties dialog (see Section 4.2.5, "Colors properties")).
From inside the subsystem window you can decide which connectors to publish. If you want to make a node connector visible outside the subsystem (i.e., if you want to publish it), move the mouse pointer over the connector and click the right mouse button. From the connector contextual menu then select the Add Outside Connector item. A Connector Node will be automatically created, and a link will connect it to the connector. By changing the orientation of the Connector Node you can change the side of the subsystem on which the proxy connector appears.
Hiding a currently published connector is just as easy. First, you can simple select and delete the Connector Node that published the connector, just like you'd remove any other node (see Section 4.2.1, "Operations on Nodes"). Alternatively, you can bring up the contextual menu for the connector and then select the Remove Outside Connector item.
As far as the external appearance goes, a subsystem is just like any other node. Thus, you can change its title (i.e., the label), its size (width and height), its border width, its background and border color, its orientation, and the position of the title relative to the subsystem itself. You can set all these parameters just as you'd do for any node (see Section 4.2.1, "Changing the appearance of nodes").
Also, you can change the size of a subsystem directly by selecting the subsystem (nothing else must be selected), and dragging one of the four corners of the resizing box that appears around it.
We have indicated above how, by simply rotating the associated Connector node, you can change the side of the subsystem where the proxy connector appears. However, within each side the connectors are listed in random order. To impose the order you prefer you need to bring up the subsystem contextual menu and select the I/O Connectors Setup item. A small dialog window will pop-up, containing four lists, one for each subsystem side. To change the order of the proxy connectors on any one side you simply need to reorder the list for that side (select the item whose position you want to change and use the toolbar buttons to move it around).
Inside the dialog you can also drag one or more selected nodes around an drop them on the desidered side: Left, Right, Top, Bottom.
Sometimes you might want to extract the nodes you had previously packed in a subsystem, while preserving all connections. This operation, called subsystem explosion, can be invoked either from the subsystem contextual menu (selecting the Explode Subsystem item) or, once the subsystem has been selected, from the canvas contextual menu (again selecting the Explode Subsystem item).
You remove a subsystem just like you remove any node (see Section 4.2.1, "Operations on Nodes").