Flow port (SysML item)
A Flow Port specifies the input and output items that may flow between a Block and its environment. Flow Ports are interaction points through which data, material or energy can enter or leave the owning Block. The specification of what can flow is achieved by typing the Flow Port.
Create a Flow Port through a Modeler pane or an Internal Block Diagram:
In a Modeler pane, right-click a Block, point to New, point to SysML, and then click Flow Port. You can then select a Block, Flow Specification, Interface Block, Signal or Value Type to type the Flow Port; create a new item to type the Flow Port; or create an untyped Flow Port, for which you can set a type later. Select the direction of the Flow Port, and then click OK.
On an Internal Block Diagram:
• Click the
Flow Port button, and then click the diagram background (for the owning Block), the owning Block (if shown), the Block Property (of type Block) or port that is to contain the Flow Port. Select the direction of the Flow Port, and then click OK.
• Drag the item that is to be the Flow Port's type from an appropriate pane to the Block (if shown), Block Property (of type Block) or port on the diagram. If a dialog prompts you to select the type of port, select Flow Port, and then click OK. Select the direction of the Flow Port, and then click OK.
When you create a Flow Port on a Block Property or port, Modeler creates the Flow Port as a child of the Block Property's or port's type. The Flow Port you see on the diagram is a redefinition that exists in the context shown on the diagram. Redefinitions can be virtual and real - real redefinitions can have some of their properties and links changed independently of the Flow Port they redefine. For more information about redefinitions of Flow Ports, click here
After creating a Flow Port:
• You can specify that it is a behavior port: right-click the Flow Port, point to Set, and then click Is Behavior.
• You can specify that it is conjugated: right-click the Flow Port, point to Set, and then click Is Conjugated. A Flow Port can be conjugated only when its type is a Flow Specification. Note that when you change the conjugation of a Flow Port, the change is made to the Flow Port and all its redefinitions.
• You can change its multiplicity, which defaults to 1: right-click the Flow Port, point to Set, and then click Multiplicity. On the Flow Port's Property Pages, the multiplicity of a Flow Port is displayed on the Options tab. A Flow Port in context can have a different multiplicity to the Flow Port it redefines.
• You can specify that it is read-only: right-click the Flow Port, point to Set, and then click Read Only.
• You can change its direction: right-click the Flow Port, point to Set, and then click Direction. If the Flow Port's type is a Flow Specification, the Direction must be inout. Note that when you change the direction of a Flow Port, the change is made to the Flow Port and all its redefinitions.
• You can change its type: right-click the Flow Port, point to Set, and then click Type, Type (Redefinition Only) or Type (Top Level Definition).
When shown on an Internal Block Diagram, a Flow Port's notation depends on its direction and whether it is atomic or not (a Flow Port is atomic when its type is a Flow Specification).
All Flow Ports are shown in the
Ports and Flows pane - expand the FlowPort folder.
A Flow Port is a UML Port (Attribute or Role) that is stereotyped by the «Flow Port» stereotype from the SysML profile.
The following sections provide information about how a Flow Port is used in the model. For more information about a SysML diagram or item - click it.
Owned by
Owns
Actor Connector - the Actor Connector is owned jointly by the Flow Port and the associated Actor.
Allocate - the Allocate is owned jointly by the Flow Port and the associated item. The access permissions you have to an Allocate are determined by the access permissions you have to the item that is allocated from - you require write access to both items to create or delete an Allocate.
Connector - the Connector is owned jointly by the Flow Port and the associated item.
Refine (UML Standard profile) - the Refine relationship is owned jointly by the Flow Port and the associated item. The access permissions you have to a Refine relationship are determined by the access permissions you have to the refined item.
Satisfy - the Satisfy relationship is owned jointly by the Flow Port and the associated Requirement. The access permissions you have to a Satisfy relationship are determined by the access permissions you have to the Flow Port.
Trace (UML Standard profile) - the Trace relationship is owned jointly by the Flow Port and the associated item. The access permissions you have to a Trace relationship are determined by the access permissions you have to the item that is traced from.
Verify - the Verify relationship is owned jointly by the Flow Port and the associated Requirement. The access permissions you have to a Verify relationship are determined by the access permissions you have to the Flow Port.
Shown on these diagrams
SysML Properties
• allocatedFrom - lists source items that are linked through Allocate relationships (on Allocated tab when item is allocated).
• allocatedTo - lists target items that are linked through Allocate relationships (on Allocated tab when item is allocated).
• direction - can be in, out, inout or null. Set by right-clicking the Flow Port, pointing to Set, and then clicking Direction.
• isAtomic - can be TRUE or FALSE. Is set to FALSE when typed by a Flow Specification.
• isConjugated - can be TRUE or FALSE. Set by right-clicking the Flow Point, pointing to Set, and then clicking Is Conjugated.