[This is prerelease documentation and is subject to change in future releases. Blank topics are included as placeholders.]
This module defines the data types, relationships, and constraints that together support an implementation that closely aligns with Business Process Modeling Notation (BPMN) 1.1 in the Microsoft code name “Quadrant”. For more information about Microsoft code name “Quadrant”, see "Oslo" Model Editor.
The code name “Oslo” business process model is defined using the Microsoft code name “M” and is stored in the code name “Oslo” repository. The “Oslo” modeling platform business process model closely aligns with Object Management Group’s (OMG) BPMN 1.1 specification. The Business Process Model Notation 1.1 specification describes a standard set of graphical shapes that precisely describe the logical workflow of a proposed business process. According to BPMN, a business process diagram (BPD) is made up of a set of graphical elements—similar to flowchart shapes—that enables creation of diagrams that are familiar to most business analysts and experts on business processes, but which have very specific meanings tailored to the needs of businesses and not to developers. By using the business process designer to create process diagrams, experts in business processes can participate more directly in the design of distributed business applications. When given a BPD, architects and developers can count on a more precise description of the business steps to implement, making the contribution of business process experts more valuable to an efficient and successful implementation.
The data types in this model area appear as visual elements that people familiar with business needs can use to design a logical business process graphically. In the Microsoft code name “Quadrant”, BPMN diagrams can be imported from Microsoft Visio (or can be created directly using the extents and data types available in this module. For more information about importing BPMN diagrams from Visio see Scenario: Importing a Visio Project. For more information about the business process designer, see Business Process Designer.
When it is time to design and application or application component that implements a portion of a business process, the models from the System.ServiceModel and System.WorkflowModel and System.WorkflowServiceModel schemas are typically used, either in “Quadrant” or in Visual Studio. The models in those schemas are specifically designed to make the implementation of business processes more efficient.
At a high level, BPMN 1.1 specifies three categories of fundamental objects, referred to as flow objects:
-
Activities, indicated by a round rectangle, which represent work done in the business process.
-
Gateways, indicated by a diamond, which represent pure flow logic such as condition-based branching, merging, or splitting.
-
Events, indicated by a circle, which represent a signal that something has occurred.
In addition to activities, gateways, and events, there are three other important types of visual shapes:
-
Connection types, indicated by some form of arrow or arrows, which describe the flow of logic into and out of flow objects.
-
Pools and Lanes, indicated by rectangular outlines, which provide logical boundaries around processes and subprocesses for purposes of organization.
-
Artifacts, indicated by rectangular outlines, which indicate some information about the process or subprocess but do not have precisely defined executable meaning. They exist to provide more concrete visualization of the context of the business process or subprocess.
Activities
Activities, indicated by a round rectangle, represent work done in the business process. There are many different activities available, such as the various types of Task types (Loop Tasks and Compensation Tasks, for example) and the various types of Processes and SubProcesses (Collapsed or Expanded Processes and SubProcesses as well as Transaction and Compensation SubProcesses, for example), that are used to visually describe in a precise way the work that must be done for the business process to be successfully implemented. The flow of activities is described by connecting objects, represented visually in the by arrows of various sorts. For example, there are Sequence Flows, Message Flows, and Compensation Associations, each of which is a shape that reflects the corresponding item in BPMN 1.1.
All activities are modeled using the root FlowObject type. They also use the mix-in MustBeDefinedInProcess and MayBeDefinedInProcess to specify their relationships to a business process.
Gateways
Gateways are diamond shapes that represent some flow decision. No work is done or assigned to gateways; they are used merely to represent precisely the flow that the process should take and the condition under which it should occur. Examples of gateway shapes in Microsoft code name “Quadrant” include Exclusive and Inclusive Gateways, and Complex and Parallel Gateways.
Events
Events, indicated by a circle, represent a signal that something has occurred. For example, there are shapes for Message, Timer, Link, Multiple, Error, and Compensation events, among others. Depending on the type of event, they can indicate the start of a process or subprocess, occur in the middle, or signal the completion of a process or subprocess.
Connection Objects
Connection types, indicated by some form of arrow or arrows, describe the flow of logic into and out of flow objects. No work is described by connection objects, only the direction of flow and the type of connection described. For example, a Sequence Flow shape indicates a simple flow from one activity to another.
Pools and Lanes
Pools and Lanes, indicated by rectangular outlines, provide logical boundaries around processes and subprocesses for purposes of organization.
Artifacts
Artifacts, indicated by rectangular outlines, which indicate some information about the process or subprocess but which do not have precisely defined executable meaning but exist to provide more concrete visualization of the context of the business process or subprocess.