Posted on 2006-08-10 11:33
英雄 閱讀(846)
評論(0) 編輯 收藏 所屬分類:
java積累
1
Introduction to BPMN
Stephen A. White, IBM Corporation
Abstract
This paper is intended to provide a high-level overview and introduction to the Business Process
Modeling Notation (BPMN). The context and general uses for BPMN will be provided as a
supplement to the technical details defined the BPMN 1.0 Specification, which has been recently
completed and released to the public. The basics of the BPMN notation will be discribed—that is,
the types of graphical objects that comprise the notation and how they work together as part of a
Business Process Diagram. Also discussed will be the different uses of BPMN, including how levels
of precision affect what a modeler will include in a diagram. Finally, the value in using BPMN as a
standard notation will be defined and the future of BPMN outlined.
What Is BPMN?
The Business Process Management Initiative (BPMI) has developed a standard Business Process
Modeling Notation (BPMN). The BPMN 1.0 specification was released to the public in May, 2004.
This specification represents more than two years of effort by the BPMI Notation Working Group.
The primary goal of the BPMN effort was to provide a notation that is readily understandable by all
business users, from the business analysts that create the initial drafts of the processes, to the
technical developers responsible for implementing the technology that will perform those
processes, and finally, to the business people who will manage and monitor those processes. BPMN
will also be supported with an internal model that will enable the generation of executable
BPEL4WS. Thus, BPMN creates a standardized bridge for the gap between the business process
design and process implementation.
BPMN defines a Business Process Diagram (BPD), which is based on a flowcharting technique
tailored for creating graphical models of business process operations. A Business Process Model,
then, is a network of graphical objects, which are activities (i.e., work) and the flow controls that
define their order of performance.
BPMN Basics
A BPD is made up of a set of graphical elements. These elements enable the easy development of
simple diagrams that will look familiar to most business analysts (e.g., a flowchart diagram). The
elements were chosen to be distinguishable from each other and to utilize shapes that are familiar to
most modelers. For example, activities are rectangles and decisions are diamonds. It should be
emphasized that one of the drivers for the development of BPMN is to create a simple mechanism
for creating business process models, while at the same time being able to handle the complexity
inherent to business processes. The approach taken to handle these two conflicting requirements
was to organize the graphical aspects of the notation into specific categories. This provides a small
set of notation categories so that the reader of a BPD can easily recognize the basic types of
注釋小結:Microsoft Word - BPMN
Introductory White Paper.doc
頁面:1
作者:Administrator
主題:附注
日期:2006-8-10 11:10:42
摘要:
本文目的在于提供一份關于BPMN的概括性介紹。包括BPMN的來歷,應用,基本概--念-在BPD圖中元素各自的意義,和彼此的關系。同時
也包括針對不同的應用,對圖形元素的使用量水平也有一個水平界定。最后,使B用PMN的價值和BPMN未來前景。
作者:Administrator
主題:附注
日期:2006-8-10 11:10:42
BPMI開發的BPMN。1.0規范已經與2004.5發布。大約是2年的努力。主要目的是提供一個統一的概念,而這個概念可以讓所有的用戶都
理解,包括工作流程設計者,開發者,使用B者PM。N有一個內部模擬高興,可以產生可執行的BPEL4WS.總之,BPMN為流程設計和實現搭建
了一個標準的橋梁。
作者:Administrator
主題:附注
日期:2006-8-10 11:10:42
BPMN定義了一個BPD,這是一個用來表示工作流的圖形化模型。一個工作流定義,因此,使一個諸多圖形元素的網絡圖,每一個元素描述
一個工作實體,關系代表了執行順序等流程控制。
Introduction to BPMN
2
elements and understand the diagram. Within the basic categories of elements, additional variation
and information can be added to support the requirements for complexity without dramatically
changing the basic look-and-feel of the diagram. The four basic categories of elements are:
?? Flow Objects
?? Connecting Objects
?? Swimlanes
?? Artifacts
Flow Objects
A BPD has a small set of (three) core elements, which are the Flow Objects, so that modelers do not
have to learn and recognize a large number of different shapes. The three Flow Objects are:
Event
An Event is represented by a circle and is something that
“happens” during the course of a business process. These
Events affect the flow of the process and usually have a
cause (trigger) or an impact (result). Events are circles
with open centers to allow internal markers to
differentiate different triggers or results. There are three
types of Events, based on when they affect the flow:
Start, Intermediate, and End (see the figures to the right,
respectively).
Activity
An Activity is represented by a rounded-corner rectangle
(see the figure to the right) and is a generic term for work
that company performs. An Activity can be atomic or nonatomic
(compound). The types of Activities are: Task and
Sub-Process. The Sub-Process is distinguished by a small
plus sign in the bottom center of the shape.
Gateway
A Gateway is represented by the familiar diamond shape
(see the figure to the right) and is used to control the
divergence and convergence of Sequence Flow. Thus, it
will determine traditional decisions, as well as the forking,
merging, and joining of paths. Internal Markers will
indicate the type of behavior control.
Table 1: Core BPD Flow Objects
頁面:2
作者:Administrator
主題:附注
日期:2006-8-10 11:10:42
一個BPD是由一個圖形元素的集合組成的一個圖。這些圖形化元素對大多數工作流設計者非常熟悉。使用這些元素建立工作流將非常
容易。不同種類的元素以不同的圖形區別表示。比如工作實體是一個矩形。判斷時一個菱形。有一點強調下:BPMN的開發就是要簡化
工作流模型的創建,而同時又要可以能處理工作流本身的復雜性。魚和熊掌兼得的解決之道即為這些圖形元素分類。這樣,基于很少的
圖形元素分類,一個BPD的讀者能夠很容易地識別理解工作流圖。有了基本分類,對圖形的額外信息補充也會保持整體感。4種基本分類:
作者:Administrator
主題:附注
日期:2006-8-10 11:10:42
BPD有3個核心對象,建模者甚至無須去了解更多對象。
作者:Administrator
主題:附注
日期:2006-8-10 11:10:42
event用一個圈表示,代表在流程中發生的事件。event影響工作流程。通常有一個trigger(觸發原因)和impact(結果),在圈中間可以做些
內部標記來區分。基于何時影響工作流,有3種event分別代表開始,中間,結束。
作者:Administrator
主題:附注
日期:2006-8-10 11:10:42
一個工作實體由一個圓角矩形代表。指具體某一個工作環節。可以使原子性,也可以是復合式。又分為兩類:任務,子流程。子流程在底
部中央以+標記。
作者:Administrator
主題:附注
日期:2006-8-10 11:10:42
gateway使用菱形代表,用來描述分支或匯總。因此,用來表示決定,分支,匯總,聯結。可做內部標記來區別。
Introduction to BPMN
3
Connecting Objects
The Flow Objects are connected together in a diagram to create the basic skeletal structure of a
business process. There are three Connecting Objects that provide this function. These connectors are:
Sequence Flow
A Sequence Flow is represented by a solid line with a
solid arrowhead (see the figure to the right) and is used
to show the order (the sequence) that activities will be
performed in a Process. Note that the term “control flow”
is generally not used in BPMN.
Message Flow
A Message Flow is represented by a dashed line with an
open arrowhead (see the figure to the right) and is used
to show the flow of messages between two separate
Process Participants (business entities or business roles)
that send and receive them. In BPMN, two separate Pools
in the Diagram will represent the two Participants.
Association
An Association is represented by a dotted line with a line
arrowhead (see the figure to the right) and is used to
associate data, text, and other Artifacts with flow objects.
Associations are used to show the inputs and outputs of
activities.
Table 2: BPD Connecting Elements
For modelers who require or desire a low level of precision to create process models for
documentation and communication purposes, the core elements plus the connectors will provide
the ability to easily create understandable diagrams (see Figure 1).
Figure 1: An Example of a Simple Business Process
For modelers who require a higher level of precision to create process models, which will be subject
to detailed analysis or will be managed by Business Process Management System (BPMS), additional
details can be added to the core elements and shown through internal markers (see Figure 2).
頁面:3
作者:Administrator
主題:附注
日期:2006-8-10 11:10:42
flow object們被這里的connecting object們連接起來描述整個工作流框架。有3類connecting object:
作者:Administrator
主題:附注
日期:2006-8-10 11:10:42
sequence flow用實線箭頭表示,描述了工作實體在流程中的執行順序。
作者:Administrator
主題:附注
日期:2006-8-10 11:10:42
message flow一個虛線箭頭表示,描述流程參與者間的信息傳遞。在BPMN中,兩個分離的Pool將代表兩個參與者。
作者:Administrator
主題:附注
日期:2006-8-10 11:10:42
association用來對flow object來進行data,text,或其他Artifacts的關聯。用來顯示工作實體的輸入輸出。
作者:Administrator
主題:附注
日期:2006-8-10 11:10:42
對于低水平的應用,這兩類元素足夠了。
作者:Administrator
主題:附注
日期:2006-8-10 11:10:42
對于高水平的,則可以再添加細節。
Introduction to BPMN
4
Figure 2: A Segment of a Process with more Details
Swimlanes
Many process modeling methodologies utilizes the concept of swimlanes as a mechanism to organize
activities into separate visual categories in order to illustrate different functional capabilities or
responsibilities. BPMN supports swimlanes with two main constructs. The two types of BPD
swimlane objects are:
Pool
A Pool represents a Participant in a
Process. It is also acts as a
graphical container for partitioning
a set of activities from other Pools
(see the figure to the right),
usually in the context of B2B
situations.
Lane
A Lane is a sub-partition within a
Pool and will extend the entire
length of the Pool, either vertically
or horizontally (see the figure to
the right). Lanes are used to
organize and categorize activities.
Table 3: BPD Swimlane Objects
Pools are used when the diagram involves two separate business entities or participants (see Figure
3) and are physically separated in the diagram. The activities within separate Pools are considered
self-contained Processes. Thus, the Sequence Flow may not cross the boundary of a Pool. Message
Flow is defined as being the mechanism to show the communication between two participants, and,
thus, must connect between two Pools (or the objects within the Pools).
頁面:4
作者:Administrator
主題:附注
日期:2006-8-10 11:10:42
許多流程建模方法使用swimlanes
這個概念來以圖的形式劃分工作實體,以此描述功能或責任者劃分。BPMN在兩方面支持這個概念:
作者:Administrator
主題:附注
日期:2006-8-10 11:10:42
pool代表一個工作流程中的參與者劃分。
作者:Administrator
主題:附注
日期:2006-8-10 11:10:42
lane是pool的子劃分,可能因而擴展了pool的長度或高度。用來劃分工作實體。
作者:Administrator
主題:附注
日期:2006-8-10 11:10:42
當需要劃分描述不同工作或參與者時使用pool。在一個pool的實體被認為是自包含的工作流程。因此sequence flow不能跨越邊界。而
message fow則可以跨越。
Introduction to BPMN
5
Figure 3: An Example of a BPD with Pools
Lanes are more closely related to the traditional swimlane process modeling methodologies. Lanes
are often used to separate the activities associated with a specific company function or role (see
Figure 4). Sequence Flow may cross the boundaries of Lanes within a Pool, but Message Flow may
not be used between Flow Objects in Lanes of the same Pool.
Figure 4: A Segment of a Process with Lanes
頁面:5
作者:Administrator
主題:附注
日期:2006-8-10 11:10:42
而lane則更接近于傳統的機制。常被用來劃分一個具體的功能或角色。sequence flow可以跨越邊界,但是message flow可能就用不著
了。
Introduction to BPMN
6
Artifacts
BPMN was designed to allow modelers and modeling tools some flexibility in extending the basic
notation and in providing the ability to additional context appropriate to a specific modeling
situation, such as for a vertical market (e.g., insurance or banking). Any number of Artifacts can be
added to a diagram as appropriate for the context of the business processes being modeled. The
current version of the BPMN specification pre-defines only three types of BPD Artifacts, which
are:
Data Object
Data Objects are a mechanism to show how
data is required or produced by activities.
They are connected to activities through
Associations.
Group
A Group is represented by a rounded corner
rectangle drawn with a dashed line (see the
figure to the right). The grouping can be used
for documentation or analysis purposes, but
does not affect the Sequence Flow.
Annotation
Annotations are a mechanism for a modeler
to provide additional text information for the
reader of a BPMN Diagram (see the figure to
the right).
Table 4: BPD Artifact Elements
Modelers can create their own types of Artifacts, which add more details about how the process is
performed—quite often to show the inputs and outputs of activities in the Process. However, the
basic structure of the process, as determined by the Activities, Gateways, and Sequence Flow, are
not changed with the addition of Artifacts in the diagram; as you can see by comparing Figure 4 and
Figure 5.
頁面:6
作者:Administrator
主題:附注
日期:2006-8-10 11:10:42
上面提到的BPMN的靈活擴展性在這里體現。就是artifact可以任意加入到這個流程圖中來。BPMN的目前版本預定義了3種:
作者:Administrator
主題:附注
日期:2006-8-10 11:10:42
data object用來描述工作實體需要或產生了什么數據的。用association連接。
作者:Administrator
主題:附注
日期:2006-8-10 11:10:42
一個虛線圍成的矩形,用來生成文檔或輔助分析等,并不影響實際流程。
作者:Administrator
主題:附注
日期:2006-8-10 11:10:42
annotation用來添加文本信息,以幫助reader來看圖。
作者:Administrator
主題:附注
日期:2006-8-10 11:10:42
建模者可以隨意加些自定義類型的actifacts---常常用來描述工作實體的輸入輸出。但是,工作流程不會受影響。