Adding control nodes

You can control the data nodes of the activity diagrams through join and fork nodes, which are related to decision and merge actions.

Before you begin

Create a SysML activity diagram requiring object nodes to flow between action nodes.

About this task

ForkNodes and JoinNodes are related to decision and merge actions which are all “control nodes”.
  • A join node represents the merging of two or more concurrent flows into a single outgoing flow. It is shown as a bar with two or more incoming flows and one outgoing flow. The object flows are used to connect action nodes, activity parameters, and action pins together to define the sequence of flow of information or physical items in an activity. Rhapsody® allows joining control and data flows on the same Join node.
  • A fork node represents the splitting of a single flow into two or more outgoing flows. It is shown as a bar with one incoming control flow and two or more outgoing flows. Rhapsody allows forking control and data flow on the same Fork node.
Note: Data tokens can be routed by the Control nodes Decision, Merge, Join, or Fork nodes. The token is accessible by the node using the keyword TOKEN in the Propertiesview window.

Procedure

  1. To draw a join node, select the Join Node button Join Node button. Click or click-and-drag between an action state and a subactivity to add the join node bar.
    1. Select the ObjectFlow or ControlFlow drawing tool, and draw the incoming flows to the join node bar.
    2. Draw one outgoing flow from the bar to the subactivity. Type a name, and then press Ctrl+Enter.
  2. To draw a fork node, select the Fork Node button Fork Node button. Click or click-and-drag between two actions to add the fork node bar.
    1. Select the ObjectFlow or ControlFlowdrawing tool, and draw a single incoming flow from one state to the fork node bar. Type the name, and then click Ctrl+Enter. This flow indicates that a call request has been initiated.
      Note: You can select again the ObjectFlow or ControlFlow drawing tool to draw two or more outgoing flows to actions.
  3. To connect the action nodes, open the systems engineering activity diagram, and click the ObjectFlow button ObjectFlow button
  4. Click the elements you want to connect to draw the green flow line. Type in a label for the connection as needed.
  5. The Decision Nodes must have guard s on all out flows, and one of out going flows must have else. If not, when the code is generated an error appears in the Checks window.

    ObjectFlow button

    The Control nodes have as a constraint that all the data around the control node must be of the same type. Also, the pins must be synchronized with the targets. You can synchronize the pin by right-clicking on the pin, and select Update Operation From Activity Pins. In case the synchronization action requires removal of some pins, a warning will be issued.

    ObjectFlow button

Results

Items that flow between action nodes might alternatively be represented using action pins. See Adding Action Pins to object nodes for more information.


Feedback