This Gloassary is taken from the BPMN 1-1 Specification
An activity is a generic term for work that a company or organization performs via business processes. An activity can be atomic or non-atomic (compound). The types of activities that are a part of a Process Model are: Process, Sub-Process, and Task.
An AND-Split is a point in the Process where a single thread of Sequence Flow splits into two or more threads that are executed in parallel within the Process, allowing multiple activities to be executed simultaneously. See Fork
A point in a workflow process when one or more Activities can be done repeatedly.
An Artifact is a graphical object that provides supporting information about the Process or elements within the Process. However, it does not directly affect the flow of the Process. BPMN has standardized the shape of a Data Object. Other examples of Artifacts include critical success factors and Milestones.
An atomic activity is an Activity not broken down to a finer level of Process Model detail. It is a leaf in the tree-structure hierarchy of Process activities. Graphically it will appear as a Task in BPMN.
Business Analysts are individuals within an organization who define, manage, or monitor Business Processes. They are usually distinguished from the IT specialists or programmers who implement the Business Process within a BPMS.
Business Process Diagram
A Business Process Diagram (BPD) is the diagram that is specified by BPMN. A BPD uses the graphical elements and that semantics that support these elements as defined in this specification
Business Process Management
Business Process Management (BPM) encompasses the discovery, design, and deployment of Business Processes. In addition, BPM includes the executive, administrative, and supervisory control of those processes.
The technology that enables BPM.
Pattern #20: An enabled activity is disabled, i.e., a thread waiting for the execution of an activity is removed.
Pattern #21: A case, i.e., workflow instance, is removed completely.
Choreography is an ordered sequence of B2B message exchanges.
A Collaboration Process depicts the interactions between two or more business entities.
A Collapsed Sub-Process is a Sub-Process that hides its flow details. The Collapsed Sub-Process object uses a marker to distinguish it as a Sub-Process, rather than a Task. The marker is a small square with a plus sign (+) inside.
Compensation Flow defines the set of Activities that are performed during the roll-back of a Transaction to compensate for Activities that were performed during the Normal Flow of the Process. Compensation can also be called from a Compensate End or Intermediate Event.
BPMN includes a Complex Gateway to handle situations that are not easily handled through the other types of Gateways. Complex Gateways can also be used to combine a set of linked simple Gateways into a single, more compact situation. Modelers can provide complex expressions that determine the merging and/or splitting behavior of the Gateway.
A Compound Activity is an Activity that has detail that is defined as a flow of other Activities. It is a branch (or trunk) in the tree-structure hierarchy of Process activities. Graphically, it will appear as a Process or Sub-Process in BPMN.
Flow that proceeds from one Flow Object to another, via a Sequence Flow link, but is subject to either conditions or dependencies from other flow as defined by a Gateway. Typically, this is seen as a Sequence Flow between two Activities, with a conditional indicator (mini-diamond) or a Sequence Flow connected to a Gateway.
A Data Object is considered an Artifact and not a Flow Object. They are considered an Artifacts because they do not have any direct affect on the Sequence Flow or Message Flow of the Process, but they do provide information about what the Process does. That is, how documents, data, and other objects are used and updated during the Process. While the name “Data Object” may imply an electronic document, they can be used to represent many different types of objects, both electronic and physical.
Decisions are locations within a business process where the Sequence Flow can take two or more alternative paths. This is basically the “fork in the road” for a Process. For a given performance (or instance) of the Process, only one of the forks can be taken. A Decision is a type of Gateway. See OR-Split
Pattern #17: A point in the workflow process where one of several branches is chosen. In contrast to the Exclusive Choice, the choice is not made explicitly (e.g., based on data or a decision) but several alternatives are offered to the environment. However, in contrast to the Fork, only one of the alternatives is executed. This means that once the environment activates one of the branches the other alternative branches are withdrawn. It is important to note that the choice is delayed until the processing in one of the alternative branches is actually started, i.e., the moment of choice is as late as possible.
Pattern #8: The discriminator is a point in a workflow process that waits for a number of incoming branches to complete before activating the subsequent Activity. From that moment on it waits for all remaining branches to complete and “ignores'” them. Once all incoming branches have been triggered, it resets itself so that it can be triggered again.
As the name implies, the End Event indicates where a Process will end. In terms of Sequence Flow, the End Event ends the flow of the Process, and thus, will not have any outgoing Sequence Flow. An End Event can have a specific Result that will appear as a marker within the center of the End Event shape. End Event Results are Message, Error, Compensation, Link, and Multiple. The End Event shares the same basic shape of the Start Event and Intermediate Event, a circle, but is drawn with a thick single line
An Event is something that “happens” during the course of a business process. These Events affect the flow of the Process and usually have a cause or an impact. The term “event” is general enough to cover many things in a business process. The start of an activity, the end of an activity, the change of state of a document, a message that arrives, etc., all could be considered events. However, BPMN has restricted the use of events to include only those types of events that will affect the sequence or timing of activities of a process. BPMN further categorizes Events into three main types: Start, Intermediate, and End.
An Exception is an event that occurs during the performance of the Process that causes Normal Flow of the Process to be diverted exclusively from Normal Flow. Exceptions can be generated by a time out, fault, message, etc.
Exception Flow is a set of Sequence Flow that originates from an Intermediate Event that is attached to the boundary of an Activity. The Process will not traverse this flow unless an Exception occurs during the performance of that Activity (through an Intermediate Event).
Pattern #4: A point in the workflow process where, based on a decision or workflow control data, one of several branches is chosen.
An Expanded Sub-Process is a Sub-Process that exposes its flow detail within the context of its Parent Process. It will maintain its rounded rectangle shape, but will be enlarged to a size sufficient to display the Flow Objects within.
A Flow is a graphical line connecting two objects in a BPD. There are two types of Flow: Sequence Flow and Message Flow, each with their own line style. Flow is also used in a generic sense (and lowercase) to describe how Tokens will traverse from the Start Event to an End Event.
A fork is a point in the Process where a single flow is divided into two or more Flow. It is a mechanism that will allow Activities to be performed concurrently, rather than sequentially. BPMN uses multiple outgoing Sequence Flow or an Parallel Gateway to perform a Fork. See AND-Split.
Gateways are modelling elements that are used to control how Flows interact as they converge and diverge within a Process. If the flow does not need to be controlled, then a Gateway is not needed. A Gateway is one of the following: Exclusive Gateway, Inclusive Gateway, Complex Gateway, Parallel Gateway
This Decision represents a branching point where Alternatives are based on conditional expressions contained within outgoing Sequence Flow. However, in this case, the True evaluation of one condition expression does not exclude the evaluation of other condition expressions. All Sequence Flow with a True evaluation will be traversed by a Token.
Pattern #12: A given Sub-Process should be terminated when there is nothing else to be done. In other words, there are no active Activities in the workflow and no other Activity can be made active (and at the same time the workflow is not in deadlock).
Interleaved Parallel Routing
Pattern #18: A set of Activities is executed in an arbitrary order: Each Activity in the set is executed, the order is decided at run-time, and no two Activities are executed at the same moment (i.e., no two Activities are active for the same workflow instance at the same time).
An Intermediate Event is an Event that occurs after a Process has been started. It will affect the Flow of the Process, but will not start or (directly) terminate the Process. An Intermediate Event will show where messages or delays are expected within the Process, disrupt the Normal Flow through exception handling, or show the extra flow required for compensating a transaction. The Intermediate Event shares the same basic shape of the Start Event and End Event, a circle, but is drawn with a thin double line.
A Lane is a sub-partition within a Pool and will extend the entire length of the Pool, either vertically or horizontally. Lanes are used to organize and categorize activities within a Pool. The meaning of the Lanes is up to the modeler.
A Merge is a point in the Process where two or more alternative Sequence Flow are combined into one Sequence Flow. BPMN uses multiple incoming Sequence Flow or an Exclusive Gateway to perform a Merge. See OR-Join
A Message is the object that is transmitted through a Message Flow. The Message will have an identity that can be used for alternative branching of a Process through the Event-Based Exclusive Gateway.
A Message Flow is a dashed line that is used to show the flow of messages between two entities that are prepared to send and receive them. In BPMN, two separate Pools in the Diagram will represent the two entities.
Pattern #19: The enabling of an Activity depends on the case being in a specified state, i.e., the Activity is only enabled if a certain Milestone has been reached which did not expire yet. Consider three Activities A, B, and C. Activity A is only enabled if Activity B has been executed and C has not been executed yet, i.e., A is not enabled before the execution B and A is not enabled after the execution C.
Pattern #6: A point in the workflow process where, based on a decision or workflow control data, one or more branches are chosen.
Patterns #13-16: There are four defined patterns.
- For one case an activity is enabled multiple times. The number of instances of a given activity for a given case is known at design time.
- For one case an activity is enabled multiple times. The number of instances of a given activity for a given case is variable and may depend on characteristics of the case or availability of resources, but is known at some stage during runtime, before the instances of that activity have to be created.
- For one case an activity is enabled multiple times. The number of instances of a given activity for a given case is not known during design time, nor is it known at any stage during runtime, before the instances of that activity have to be created.
- For one case an activity is enabled multiple times. The number of instances may not be known at design time. After completing all instances of that activity another activity has to be started.
Pattern #7: Multi-merge is a point in a workflow process where two or more branches reconverge without synchronization. If more than one branch gets activated, possibly concurrently, the activity following the merge is started once for every incoming branch that gets activated.
Pattern #9: N-out-of-M Join is a point in a workflow process where M parallel paths converge into one. The subsequent Activity should be activated once N paths have completed. Completion of all remaining paths should be ignored. Similarly to the discriminator, once all incoming branches have “fired,” the join resets itself so that it can fire again.
An Or-Join is a point in the Process where two or more alternative activity(s) Process branches re-converge to a single common Activity as the next step within the Process. (As no parallel activity execution has occurred at the join point, no synchronization is required.) See Merge
Pattern #2: Parallel Gateway is required when two or more Activities need to be executed in parallel. Parallel split is easily supported by most workflow engines except for the most basic scheduling systems that do not require any degree of concurrency.
A Participant is a business entity (e.g., a company, company division, or a customer) or a business role (e.g., a buyer or a seller), which controls or is responsible for a business process. If Pools are used, then a Participant would be associated with one Pool.
A Pool represents a Participant in a Process. It also acts as a “swimlane” and a graphical container for partitioning a set of activities from other Pools, usually in the context of B2B situations. It is a square-cornered rectangle that is drawn with a solid single line. A Pool acts as the container for the Sequence Flow between activities. The Sequence Flow can cross the boundaries between Lanes of a Pool, but cannot cross the boundaries of a Pool. The interaction between Pools, e.g., in a B2B context, is shown through Message Flow.
Private Business Process
A private business process is internal to a specific organization and is the type of process that has been generally called a workflow or BPM process. A single private business process will map to a single BPML document.
A Process is any Activity performed within a company or organization. In BPMN a Process is depicted as a network of Flow Objects, which are a set of other Activities and the controls that sequence them.
A Result is consequence of reaching an End Event. Results can be of different types, including: Message, Error, Compensation, Link, and Multiple.
Pattern #1: Sequence is the most basic workflow pattern. It is required when there is a dependency between two or more Tasks so that one Task cannot be started (scheduled) before another Task is finished.
Pattern #5: A point in the workflow process where two or more alternative branches come together without synchronization. In other words the merge will be triggered once any of the incoming transitions are triggered.
A Signal is for general communication within and across Process Levels, across Pools, and between Business Process Diagrams. A Signal is similar to a signal flare that shot into the sky for anyone who might be interested to notice and then react. Thus, there is a source of the Signal, but no specific intended target. This is different than a , which has a specific Source and a specific Target.
A Start Event indicates where a particular Process will start. In terms of Sequence Flow, the Start Event starts the Flow of the Process, and thus, will not have any incoming Sequence Flow. A Start Event can have a Trigger that indicates how the Process starts: Message, Timer, Rule, Link, or Multiple. The Start Event shares the same basic shape of the Intermediate Event and End Event, a circle, but is drawn with a single thin line.
A Sub-Process is Process that is included within another Process. The Sub-Process can be in a collapsed view that hides its details. A Sub-Process can be in an expanded view that shows its details within the view of the Process in which it is contained. A Sub-Process shares the same shape as the Task, which is a rectangle that has rounded corners.
Pattern #10: A point in the workflow process where multiple paths converge into one single thread. If more than one path is taken, synchronization of the active threads needs to take place. If only one path is taken, the alternative branches should reconverge without synchronization.
A Task is an Atomic Activity that is included within a Process. A Task is used when the work in the Process is not broken down to a finer level of Process Model detail. Generally, an end-user and/or an application are used to perform the Task when it is executed. A Task object shares the same shape as the Sub-Process, which is a rectangle that has rounded corners.
A Token is a descriptive construct used to describe how the flow of a Process will proceed at runtime. By tracking how the Token traverses the Flow Objects, gets diverted through alternative paths, and gets split into parallel paths, the normal Sequence Flow should be completely definable. A Token will have a unique identity that can be used to separate multiple Tokens that may exist because of concurrent process instances or the splitting of the Token for parallel processing within a single process instance.
A Transaction is a set of coordinated Activities carried out by independent, loosely-coupled systems in accordance with a contractually defined business relationship. This coordination leads to an agreed, consistent, and verifiable outcome across all Participants.
A Trigger is a mechanism that signals the start of a business process. Triggers are associated with a Start Events and Intermediate Events and can be of the type: Message, Timer, Rule, Link, and Multiple.