Activity: An activity is a generic term for work that 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 Business Process Diagram are: Process, Sub-Process, and Task.
Abstract Process: An Abstract Process represents the interactions between a private business process and another process or participant.
AND-Join: (from the WfMC Glossary1 ) An AND-Join is a point in the Process where two or more parallel executing activities converge into a single common thread of Sequence Flow. See "Join."
AND-Split: (from the WfMC Glossary2 ) An AND-Split is a point in the Process where a single thread of Sequence Flow splits into two or more threads which are executed in parallel within the Process, allowing multiple activities to be executed simultaneously. See "Fork."
Arbitrary Cycles: (From the Workflow Patterns Initiative2). Pattern #11: A point in a workflow process when one or more activities can be done repeatedly3.
Artifact: 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.
Association: An Association is a dotted graphical line that is used to associate information and Artifacts with Flow Objects. Text and graphical non-Flow Objects can be associated with the Flow Objects and Flow.
Atomic Activity: 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 Analyst: A Business Analyst is an individual within an organization who defines, manages, or monitors Business Processes. They are usually distinguished from the IT specialists or programmers who implement the Business Process within a BPMS.
Business Process: A Business Process is displayed within a Business Process Diagram (BPD). A Business Process contains one or more Processes.
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 processes4.
Cancel Activity: (From the Workflow Patterns Initiative5). Pattern #20: An enabled activity is disabled, i.e. a thread waiting for the execution of an activity is removed6.
Cancel Case: (From the Workflow Patterns Initiative2). Pattern #21: A case, i.e.workflow instance, is removed completely7.
Choreography: Choreography is an ordered sequence of B2B message exchanges.
Collaboration: Collaboration is the act of sending messages between any two Participants in a BPMN model. The two Participants represent two separate BPML processes.
Collaboration Process: A Collaboration Process depicts the interactions between two or more business entities.
Collapsed Sub-Process: 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: Compensation Flow is 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.
Compound Activity: 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.
Controlled Flow: 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.
Decision: 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."
Deferred Choice: (From the Workflow Patterns Initiative8). Pattern #17: A point in the workflow process where one of several branches is chosen. In contrast to the XOR-split, 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 AND-split, 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 possible9.
Discriminator: (From the Workflow Patterns Initiative1). 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 again10.
Embedded Sub-Process: The contents of the Sub-Process (i.e., its Process) is embedded, or contained, within the Process that owns the Sub-Process Object. This is a Process within a Process. The Sub-Process elements have direct access to process information, such as variables and process state, of the parent Process. In addition, the Sub-Process is not re-usable by other Processes diagrams modeled for an organization.
End Event: 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 .
Event Context: An Event Context is the set of activities that can be interrupted by an exception (Intermediate Event). This can be one activity or a group of activities in an expanded Sub-Process.
Exception: 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: 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).
Exclusive Choice: (From the Workflow Patterns Initiative11). Pattern #4: A point in the workflow process where, based on a decision or workflow control data, one of several branches is chosen12.
Expanded Sub-Process: 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.
Flow: 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 Sequence Flow from the Start Event to an End Event.
Flow Object: A Flow Object is one of the set of following graphical objects: Events, Activities, and Gateways.
Fork: 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."
Implicit Termination: (From the Workflow Patterns Initiative13). Pattern #12: A given subprocess 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)14.
Interleaved Parallel Routing: (From the Workflow Patterns Initiative1). 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)15.
Intermediate Event: 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.
Join: A Join is a point in the Process where two or more parallel Sequence Flow are combined into one Sequence Flow. BPMN uses an Parallel Gateway to perform a Join. See "AND-Join."
Lane: An 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.
Merge: 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 XOR Gateway to perform a Merge. See "OR-Join."
Message: 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.
Message Flow: 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.
Milestone: (From the Workflow Patterns Initiative16). 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 C17.
Multiple Choice: (From the Workflow Patterns Initiative1). Pattern #6: A point in the workflow process where, based on a decision or workflow control data, one or more branches are chosen18.
Multiple Instances: (From the Workflow Patterns Initiative1). Patterns #13-16: There are four defined patterns. 1. 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. 2. 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. 3. 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 it is known at any stage during runtime, before the instances of that activity have to be created. 4 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 started19.
Multiple Merge: (From the Workflow Patterns Initiative1). 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 activated20.
N-out-of-M-Join: (From the Workflow Patterns Initiative1). 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 again21.
Normal Flow: Normal Flow is the flow that originates from a Start Event and continues through activities via alternative and parallel paths until it ends at an End Event.
OR-Join: (from the WfMC Glossary22 ) 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."
OR-Split: (from the WfMC Glossary1 ) An OR-Split is a point in the Process where a single thread of Sequence Flow makes a decision upon which branch to take when encountered with multiple alternative Process branches. See "Decision."
Parallel Split: (From the Workflow Patterns Initiative23). Pattern #2: Parallel split 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 concurrency24.
Parent Process: A Parent Process is the Process that holds a Sub-Process within its boundaries.
Participant: 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.
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.
Process: 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.
Result: A Result is consequence of reaching an End Event. Results can be of different types, including: Message, Error, Compensation, Link, and Multiple.
Sequence: (From the Workflow Patterns Initiative25). 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 finished26.
Sequence Flow: A Sequence Flow is a solid graphical line that is used to show the order that activities will be performed in a Process. Each Flow has only one source and only one target.
Simple Merge: (From the Workflow Patterns Initiativehttp://tmitwww.tm.tue.nl/research/patterns/patterns.htm). 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 triggered27.
Start Event: 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
Sub-Process: 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.
Swimlane: A Swimlane is a graphical container for partitioning a set of activities from other activities. BPMN has two different types of Swimlanes. See "Pool" and "Lane."
Synchronizing Join: (From the Workflow Patterns Initiative28). 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 synchronization29.
Synchronization: (From the Workflow Patterns Initiativehttp://tmitwww.tm.tue.nl/research/patterns/patterns.htm). Pattern #3: Synchronization is required when an activity can be started only when two parallel threads complete30.
Task: 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.
Token: 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.
Transaction: 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.
Trigger: 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.
Uncontrolled Flow: Flow that proceeds, unrestricted, from one Flow Object to another, via a Sequence Flow link, without any dependencies on another flow or any conditional expressions. Typically, this is seen as a Sequence flow between two activities, without a conditional indicator (mini-diamond) or any intervening Gateway.
1. The underlined terms in this definition were changed from the original definition. "Process" is used in place of "workflow." "Sequence Flow" is used in place of "control."
4. From "Business Process Management: the Third Wave," by Howard Smith and Peter Fingar, pg 4. 2003, Meghan-Kiffer Press. ISBN 0-929652-33-9