天天看點

業務流程模組化标注(BPMN)詳細介紹

作者:DOKER

1、基本資訊

摘要:該文章的目的是對BPMN(Business Process Modeling Notation)的概要描述和介紹。描述基本的BPMN符号,包括這些圖元如何組合成一個業務流程圖(Business Process Diagram)

2、BPMN簡介

2.1概述

該文章的目的是對BPMN(Business Process Modeling Notation)的概要描述和介紹。

描述基本的BPMN符号,包括這些圖元如何組合成一個業務流程圖(Business Process Diagram);讨論BPMN的各種的用途,包括以何種精度來影響一個流程圖中的模型;(Also discussed will be the different uses of BPMN, including how levels of precision affect what a modeler will include in a diagram.);BPMN作為一個标準的價值,以及BPMN未來發展的遠景

2.2BPMN是什麼

由BPMI(The Business Process Management Initiative)開發了一套标準叫業務流程模組化符号(BPMN)。在 BPMI Notation Working Group超過2年的努力,于2004年5月對外釋出了BPMN 1.0 規範。BPMN的主要目标是提供一些被所有業務使用者容易了解的符号,從建立流程輪廓的業務分析到這些流程的實作,直到最終使用者的管理監控。BPMN也支援提供一個内部的模型可以生成可執行的BPEL4WS。是以BPMN的出現,彌補了從業務流程設計到流程開發的間隙。

BPMN定義了一個業務流程圖(Business Process Diagram),該業務流程圖基于一個流程圖(flowcharting),該流程圖被設計用于建立業務流程操作的圖形化模型。而一個業務流程模型(Business Process Model),指一個由的圖形對象(graphical objects)組成的網狀圖,圖形對象包括活動(acticities)和用于定義這些活動執行順序的流程控制器(flow controls)

2.3BPMN基礎

業務流程圖由一組圖形元素構成。這些元素讓我們很容易開發一個簡單的,為大多數業務分析人員更熟悉的流程圖。

對于模組化者來說,這些圖形都是易于區分和識别的。比如活動是長方形,路由是菱形。

需要強調的是,開發BPMN的一個動機就是建立一套簡單的機制來建立業務流程模式,與此同時,還要能夠應付業務流程内在的複雜性。

尋找一個可以處理這些互相沖突的需求的途徑,是将這些圖形符号組織并分類。

BPMN四種基本元素是:

  • Flow Objects
  • Connecting Objects
  • Swimlanes
  • Artifacts(人造物品)

2.4流對象(Flow Objects)

流對象是BPD的核心元素。

有三個流對象 Event, Activity, Gateway

Event, 事件

用一個圓圈代表事件(Event),它指的是在業務流程的運作過程中發生的事情。這些事件影響流程的流轉,事件通常有一個cause (trigger)或者impact (result)。

有三種類型的事件:Start, Intermediate, and End

Activity,活動

用圓角矩形表示一個活動, is a generic term for work that company performs.一個活動可以由多個活動組成,活動的類型包括:Task 和 Sub-Process

Gateway,網關

菱形代表網關,用來控制流程的分支和聚合。

業務流程模組化标注(BPMN)詳細介紹

2.5連接配接對象Connecting Objects

在一個圖中,連接配接對象将流程對象連接配接起來組成業務流程的結構。三種連接配接對象:

Sequence Flow 序列流

用實線實心箭頭表示,代表流程中将被執行的活動的執行順序。

Message Flow 消息流

用虛線空心箭頭表示,用來表示2個分開的流程參與者(業務實體或業務角色)之間發送或者接收到的消息流。

Association 結合關系

點狀虛線表示,用于顯示活動的輸入輸出。

業務流程模組化标注(BPMN)詳細介紹

2.6甬道Swimlanes

用以區分不同的功能和職責。

BPMN有2中類型的甬道:

Pool

代表流程中的一個參與者。它也可以用作一個圖形容器來與其他的pool相分隔。通常在互動流程中出現(B2B)。

業務流程模組化标注(BPMN)詳細介紹

Pool主要用于2個獨立的實體或者參與者之間的實體劃分。

各個pool中的活動通常是有自身的流程的。是以,順序流(the Sequence Flow)通常不會越過多個pool的,而消息流是可以的,如下圖就是一個帶pool的業務流程圖

業務流程模組化标注(BPMN)詳細介紹

Lane

Pool的子劃分,可以垂直或者水準的,用來對活動的組織和分類。

業務流程模組化标注(BPMN)詳細介紹

Lane更加接近我們傳統的甬道的概念。

Lane常用來将活動按照角色劃分,流程可以在一個pool中跨Lane流轉,但是在同一個pool中消息流通常不跨lane流轉。

一個簡單業務流程的例子

業務流程模組化标注(BPMN)詳細介紹

詳細的部分業務流程圖

業務流程模組化标注(BPMN)詳細介紹

2.7描述對象Artifacts

為了擴充基本符号,提供描述額外的上下文,BPMN使用了描述對象artifact

BPMN

Data Object

Data Objects are用于描述活動所需或者産生的資料。他們用連線與活動連接配接起來。

Group

用于描述和解釋目的,不會影響流程的流轉。

Annotation

提供一些附加性的文本資訊給流程圖的閱讀者。

業務流程模組化标注(BPMN)詳細介紹

一個使用artifacts的例子:

業務流程模組化标注(BPMN)詳細介紹

2.8BPMN分類

業務流程模型(Business process modeling )提供不同的模型,以面向不同的讀者,使用BPD可以有2個基本的模型

  • Collaborative (Public) B2B Processes 協作流程模型
  • Internal (Private) Business Processes 獨立式流程模型

Collaborative B2B Processes 協作流程模型

該模型描述了2個以上的業務實體之間的互動,不是從某一個特殊的參與者的角度,而是從一個全局的角度描述了這些流程的互動。描述的方式是使用活動的執行順序和參與者之間的消息的流轉。

2.9BPMN 的用途(通過 BPD 建立的業務流程種類)

<1>Collaborative(Public) B2B Processes

用 Pool 的方式描述兩個或多個業務實體(流程)之間的互動(參與者之間的互動);主要描述業務實體之間可視(Public)的活動之間的互動

<2>Internal(Private) Business Processes

主要描述獨立的業務實體(流程),也會描述出與外部參與者的互動關系,但主要描述業務實體之間不可見(Private,獨立業務實體内部)的活動

(例子:泳道内的業務實體為 Internal,泳道之間的業務實體為 Collaborative)

業務流程模組化标注(BPMN)詳細介紹

2.10BPMN 與 BPEL4WS 的轉換

業務流程模組化标注(BPMN)詳細介紹

(模型)

業務流程模組化标注(BPMN)詳細介紹

(例子)

業務流程模組化标注(BPMN)詳細介紹

使用BPMN模組化的價值

衆多的成員保障了BPMN作為一個業務流程模組化語言的标準。BPMN的發展也是減少現有過多的流程模組化工具和語言的局面。同時,BPMI組織借鑒了很多已有模組化語言的技術和經驗,例如UML的活動圖,UML EDOC的業務流程圖,IDEF等等。推動BPMN發展的另一個因素是,以往的業務流程模型和系統設計開發從技術上被分開,這樣就要手動的将業務流程模型轉化為運作模型。這樣會使流程所有者很容易出錯,而且很難了解流程的更新和執行。

将一個BPMN圖映射到BPEL4WF

為了減少規範之間的不相容性,BPMN的一個關鍵的目标就是在面向業務流程模組化語言和實作該流程的編成語言之間建立一個橋梁。由于擁有豐富的對象屬性,BPMN的圖形化對象可以映射到BPEL4WS v1.1。

下圖示記了一個業務流程圖的一部分是如何轉化為BPEL4WS的。

業務流程模組化标注(BPMN)詳細介紹

BPMN的将來

雖然BPMN規範目前版本是1.0,很多公司已經開始或即将開始支援該規範了。

大量應用經驗的積累以及使用者的回報,提供了很多有價值的東西,尤其包括映射到BPEL4WS的部分。短期内不會有大版本釋出,1.1版本将在1年之後釋出。該版本會使BPMN更能滿足有着更多上下文的高層業務模型,比如包括,業務規則業務政策的模型。BPMI是個非正式組織,它仍在不斷發展,并且緻力于開發BPM系統的核心規範。

BPMI和OMG組織正在讨論一些有意思的東西,如UML中的活動圖(Activity Diagrams)可能會與BPMN的業務流程圖合并。

繼續閱讀