Flowcharts are diagrams that represent a flow or process. A flowchart can also be used to graphically represent an algorithm. Flowcharts are particularly common for representing regulated processes, e.g. for demonstrating the compliance with ISO 9001 or ISO 13485.
Next to flowcharts, there are many other notations. Especially for business processes, BPMN and DCR graphs have to be highlighted, since diagrams in these notations can not only be modeled in Pertuniti, but can also be executed. Similar to a flowchart, BPMN is modeled with a focus on the sequence flow of activities, whereas DCR graphs focus on the dependencies between activities, i.e. DCR graphs usually allow for more variability in execution.
While flowcharts are still widely used in business process management, especially for certification, e.g., according to ISO 9001 or ISO 13485, we advise against their use for this purpose: Usually, flowcharts are modeled in tools without a focus on executability, e.g., Microsoft Visio or Microsoft PowerPoint — without a direct link to the execution of the processes, models quickly become obsolete as a result. The many symbols of the actually very simple notation nevertheless make it necessary that readers at least receive an introduction or legend, which causes a similar effort as for BPMN or DCR graphs. (Auditors who understand business processes with flowcharts are in most cases also familiar with BPMN).
Note: The data model of Flowcharts in Pertuniti, contrary to the observation about Microsoft Visio or Microsoft PowerPoint, actually focuses on the semantics of the modeled elements. We may also offer an engine to run this notation in the future. In this case, however, we would only like to facilitate the transition to executable processes and continue to advise against flowcharts for business process management.
A flowline shows the sequence flow of operations, from the source to the target element. Flowlines at decisions are annotated with a condition or with the result of the decision.
While arrowheads can generally be omitted as long as the direction is unambiguous, in Pertuniti arrowheads are generally displayed. An explicit representation is used to prevent misinterpretation by human readers as well as workflow engines.
Marks the start or end of a program or process. The distinction in start and end is typically made clear by incoming or outgoing flowlines, but should always also be expressed in the terminal label, e.g. "Start".
A process represents a set of operations, a task, or an action. In BPMN, this element corresponds to a plain activity. The label of the process usually includes a verb, e.g. "Check document".
A predefined process references a process that is defined elsewhere, i.e. usually in another diagram. In software engineering, this element is used to represent a subroutine. In business process management, it can refer to another process or represent a subprocess.
In general, predefined processes can be used for decomposition of a large diagram, regardless of the domain it is modeled in.
A decision determines which further flowline is followed in the process model. It can be formulated as a question with possible answers annotated on the flowlines starting from the decision — or the flowlines contain the conditions according to which the respective path is chosen.
In BPMN, the behavior of XOR and Inclusive gateways is defined such that all information for the particular decision is already available at the time of the decision. This behavior can be adopted as best practice in case of a future migration to BPMN or another notation: If a check is necessary for the decision, it should be modeled as a process or predefined process before reaching the actual decision. If the system waits for events that are still unknown at the time of the first "arrival" at the decision, this should be pointed out via annotation.
Input or output elements represent the input or output of data or results. This element may represent the data that is input or output, but also the activity of collecting or generating data, e.g. "collect data" or "generate report".
For activities that go beyond the simple display or input of data, it makes sense to model them as an additional process or predefined process.
Annotations can be applied to further comment on individual elements of a diagram, e.g. to clarify conditions beyond the boundaries of the notation ("to be performed by the QMR"), or the reason for including the activity ("see ISO 9001:2015, chapter 5.1").
On-page connectors can be used to connect distant elements of a diagram. They are used in pairs and have the same name. A source connector receives an incoming sequence flow and passes it to the target connector.
Alternatively, a pair of off-page connectors can be used for the same purpose.
Off-page connectors can be used to connect distant elements or elements of different diagrams. They are used in pairs, but may be named differently (e.g. "Page 2" and "Page 42"). A source connector receives an incoming sequence flow and passes it to the target connector.
For use in the same diagram, a pair of on-page connectors can also be used for the same purpose.
Databases can concretize an input/output element and represent actual databases, files, or general direct access storage.
Modeling databases as cylinders corresponds to the shape of previously common mass storage devices such as drum storage, hard disk drives (stacks of magnetic rotating disks), and magnetic tapes.
A document can concretize an input/output element and it represents a single file, a single document or a physical piece of writing. Several related or similar documents can be modeled as multiple documents.
Multiple documents can concretize an input/output element and the symbol represents multiple files, documents or physical pieces of writing.
In Pertuniti, this element can be created by adding a document to the diagram and setting the "Multiple Documents" property to true.
A manual operation describes an operation or adjustment to the process that can only be performed manually. This element can concretize a process.
A manual input can concretize an input element, i.e. to manually enter data. Hence, the icon corresponds to the side view of a keyboard.
Originally, a preparation was meant for preparatory activities of a task like manually setting switches or index registers — and with today's semantics, it can be interpreted to concretize a process as a preparatory activity of another activity.