This is a description of the basic flow chart and UML symbols in Visustin. The shape colors vary according the currently selected options.
A decision diamond marks a decision point. The underlying statement may be a simple decision statement such as if..then
or if..then..else
. It can also be a conditional looping statement such as do..while
or repeat..until
. The Yes branch is taken when the condition is true. It is the "then" branch in an if
statement. The No branch is taken when the condition is false. It is the "else" branch in an if..else
construct.
A multiway selection is a decision with several branches, or cases. The underlying statement is a select, case, switch
or choose
(the keyword varies between languages). The selection consists of a condition and a chain of case decisions.
The case diamonds represent the branching decisions (case labels) in a multiway selection.
The loop symbol denotes a looping statement such as for, foreach
or perform
. The loop is iterated as many times as the looping statement defines. Once the loop is complete, execution continues along the "End For" branch. Note that many looping statements are actually visualized with a decision diamond, not with the loop symbol. The loop symbol appears when a simple decision diamond would not do justice to a more complex looping statement.
Exception handling is a rather complex concept to visualize with a flow chart. A complete exception handling block consists of two or three blocks. 1) A try block is protected against exceptions. 2) A catch block (also called except or exception) is run when an exception happens inside the try block. There can be several catch blocks, which are represented as a chain of catch diamonds , each marking a decision about the appropriate exception handler. 3) A finally block runs before the execution leaves the try construct. A circle called "Execute finally block" means the finally block executes as the execution is leaving the construct.
The end symbol means the current flow ends there. It marks the end of a procedure, module, program or a shorter block, depending on context. It can also be an exit point where the current function returns to caller.
The exception pentagon is a special kind of an end symbol. It means the flow ends with an error state, such as an unhandled error or a rethrown exception.
Comments are shown in dark cyan color. The comments appear either within the control flow or as detached labels hanging around the actual statements.
Preprocessor directives, such as a conditional compilation #if
, look like red comments by default.
An arrow shape (not shown here) with a number or some text in it simply means that the flow continues elsewhere. This only shows up on a complex chart which has been split into smaller pieces.
Visustin uses some alternative symbols in mode Flow chart alternative style. The primary differences are with the symbols for loop, header, end and exception.
The UML symbols are those typically used in UML v2 activity diagrams. Visustin can make both conventional black & white and color-enhanced UML diagrams. This example is black & white.
The initial state appears where the control flow starts.
The final state indicates the end of the control flow. See the end symbol above for the description.
A decision diamond marks a decision point. The decision is shown as a «DecisionInput» note. The link with guard [Yes] corresponds to the "then" branch, which executes when the decision outcome is true. The [No] branch is taken when the condition is false. This is usually the "else" branch.
A merge diamond is the opposite of a decision diamond. It looks the same as a decision, but the merge symbol appears where two or more alternative control flows join. It typically marks the end of an if statement or a multiway selection.
Comments are shown as a box in the main window and as a note in Editor.
Options affect the actual appearance, such as colors and layout. To see how the symbols look under different options, choose Symbols in the Help menu.