The modeling notation being used in InRule Process Automation's Process Studio is BPMN 2.0, which is recognized as the world standard. There are many symbols within BPMN 2.0 and in this article, we present the most common ones.
Web sites for more info about the BPMN standard
Flow objects are the main describing elements within BPMN 2.0, and consist of three core elements: events, activities, and gateways.
Start event: An event that triggers the process to start. A process can contain multiple start events. Often a form is connected to the event, giving input to the process.
End event: An event that marks the end, the result, of a process or a branch of a process.
End event – terminate: An end event of the type terminate, which terminates an entire process even if there are other end events that have not been triggered.
Intermediate event: An event that represents something that happens between the start and end events.
Intermediate event – message: An intermediate event of the type message, which sends or receives different kinds of messages.
Note: That multifunctions on intermediates are not supported. You can only have one condition connected to an event at a time. If you connect more than one, only the first will be executed.
Gateway – multiple entries: A gateway that gathers three possible entries to one exit.
Gateway – multiple exits: A gateway that lets the user, or system if configured, choose an exit.
Gateway – parallel: A parallel gateway automatically merges or forks paths.
Gateway - inclusive: A parallel gateway sends out paths depending on conditions. The conditions are configured on each sequence flow and the gateway evaluates the conditions before sending out zero or multiple paths.
A merging inclusive gateway automatically keeps track of all active paths that are able to end up on the gateway and waits for them to either show up, get consumed, or go another way before the gateway gets evaluated.
Within BPMN there are different types of tasks. The most commonly used oin Process Studio are User Tasks and Service Tasks.
Task – user: An activity that represents a single unit of work, performed by a physical person.
Task – service: A unit of work performed by the system.
Sub-process: Additional levels of process detail, hidden within one symbol. When expanded, it shows all flow objects, connecting objects, and artifacts.
Task - none: The default task type with no specific type.
Task - send: An alternative to using an intermediate event with a send trigger. This task can have a sender business component configured to send e-mail messages.
Task - manual: Works in the same way as a User Task. It is used to indicate work that is not computer-aided according to the BPMN standard.
Task - script: Can be configured to run scripts. Read more in the article Script Components.
A process is often displayed within a pool, representing organizational boundaries. A pool can then be divided into several lanes, representing different functions or roles.
Artifacts & connecting objects
Artifacts let you bring additional information into the process model, such as forms, other types of documents, and images. Add them from the modeler menu, or just drag and drop from your computer.
There are three types of connecting objects:
- Sequence flow – connects flow objects.
- Message flow – describes how messages flow across organizational boundaries such as pools.
- Association – associates artifacts to flow objects, and depending on the direction of the association, forms are treated differently when connected to a flow object.
Read more about Forms here
Form – input: The form is input to the new instance and the performer has to fill it out , at least any mandatory fields, to be able to start the instance.
Form – output: The form is output from the task. Depending on whether the ProducedAtCompletion property is set to True or False two things can happen. True: The form is displayed in the task and has to be filled out, at least any mandatory fields, before the task is completed. False: The performer can choose to fill out the form when in the task, and thereby include it in the instance.
Form – read-only: The form is displayed in the task, but it is locked for editing.
Form – editable: The form is displayed in the task, and it is editable.