BPM選型策略

BPM選型策略

BPM是一個流行了很多年的概念,其相關的產品也比較多。在新的SOA架構下,各個廠商都推出了基於新的規範的BPM產品套件,這些產品套件包含一個或者多個獨立產品。但是對於剛接觸BPM產品的人難免會多一些疑惑。另外很多CIO都在各種平臺和產品之間也猶豫不決。因此對BPM平臺的框架體系有全面的理解,對各個廠家產品所提供的功能有深入的認識才能爲平臺選型的決策提供可靠的保證。

最近一個階段由於新一代BPM產品的推出,很多大的企業也開始了基於BPM平臺的系統建設。我參與了幾個大的電信運營商的BPM平臺的諮詢和設計工作,在這些工作中,研究了很多新的技術方向和產品,下面我主要講一下BPM平臺的架構和主要的功能模塊。

 

作爲應用集成平臺的核心功能平臺,業務流程管理平臺(BPM)應該具有流程分析和建模工具、流程運行環境、流程監控和管理三個主要部分。

 BPM平臺的組件和工具

流程分析和建模工具

這些工具方便了業務流程的分析和建模,同時可以把這些流程和實現技術相對應。另外,還有一些產品可以提供模擬流程的功能。

l  業務流程建模工具應該提供如下功能分析、設計和修改業務流程,可以定義錯誤回覆機制,審計模型和業務事務等。

l  業務評估工具:定義評估業務流程主要指標(KPI),這些指標是流程執行後的數據結果。

l  技術流程建模工具:把業務人員定義的流程映射到技術組件,比如消息流、數據轉換、事務等。

l  技術評估映射工具:把主要的KPI指標和具體的技術指標對應。

l  流程儀表盤設計工具:可以把業務流程監控對應的用戶界面和性能指標和具體的技術數據對應。

l  模擬引擎:可以通過歷史數據設計好的流程進行優化、測試,自動化的模擬流程的運行。

對於一個BPM平臺產品,可以不提供以上全部工具,但是必須要藉助其第三方的工具來實現對應的功能。

 

流程執行引擎

運行業務流程的實際平臺。包含執行流程的核心流程控制模塊,支持外部定義規則的規則引擎和定時任務控制器。另外還有個業務流程知識庫用來保存元數據、數據、規則定義、業務指標定義,訪問歷史記錄等。

另外由於業務流程系統要和外部系統交互,與其他流程交互的分佈式流程協調器和接口管理器都是BPM平臺需要提供的功能。

 

活動監控和管理

流程的管理:啓動,停止,暫停流程。重新定義,修改流程。修改數據和消息,重新分配資源,性能監控等。

 

業務活動監控(BAM)

儀表盤:用於展示業務對象,業務評估指標的用戶界面

分析引擎:從實時運行數據和歷史數據中獲得KPI,並基於KPI做複雜的,基於規則的分析。

事件管理:對於業務事件和技術事件進行檢測和分類。在事件發生時觸發對應的流程和分析規則。

 BPM的標準和體系

標準

組織

類型

業務流程執行語言

Business Process Execution Language(BPEL)

OASIS

執行語言

業務流程建模標記

Business Process Modeling Notation (BPMN)

Business Process Management Initiative (BPMI)

標記語言

業務流程建模語言

Business Process Modeling Language (BPML)

BPMI

執行語言

業務流程查詢語言

Business Process Query Language (BPQL)

BPMI

管理與監控接口

業務流程語義模型

Business Process Semantic Model (BPSM)

BPMI

流程元模型

業務流程執行層

Business Process Extension Layer (BPXL)

BPMI

BPEL 擴展

UML 活動圖

OMG

標記語言

工作流參考模型

Workflow Management Coalition (WfMC)

架構

XML 流程定義語言

XML Process Definition Language (XPDL)

WfMC

執行語言

工作流API (WAPI)

WfMC

管理與檢測,

用戶交互,系統交互

工作流XMLWfXML)

WfMC

編排 (或與之類似)

業務流程定義元模型Business Process Definition Metamodel (BPDM)

OMG

執行語言,標記語言

業務流程運行時接口

Business Process Runtime Interface (BPRI)

OMG

管理與檢測,用戶交互,系統交互

Web 服務編排描述接口

Web Services Choreography Interface (WSCI)

World Wide Web Consortium (W3C)

編排

Web 服務編排描述語言

Web Services Choreography Description Language (WS-CDL)

W3C

編排

Web 服務轉換語言

Web Services Conversation Language (WSCL)

W3C

編排

XLANG

Microsoft

執行語言

Web 服務流語言

Web Flow Language (WSFL)

IBM

執行語言

業務流程設計規範

Business Process Schema Specification (BPSS)

OASIS

編排(及協作)

 

 

按照以上的BPM組件和規範的說明,一般來講BPM至少要支持流程設計和分析工具、和流程執行平臺,而BAM可能是單獨的產品。在BPM選型中可以根據以下大的方面來評測,由於篇幅原因,我只列出了一些大的方向,具體評測點就這裏省略,有興趣的朋友可以直接聯繫我。

1.         流程分析工具

1)        流程建模

a)         產品自帶的可視化的流程建模工具

b)        如果產品無自帶建模工具,請說明建模工具的名稱和與BPM集成的方式

c)         流程建模支持多組織,多用戶,多角色

d)        支持基於角色的泳道建模

e)         支持多種流程結構,必須支持串行、分支、合併等基本流程結構,支持自定義流程模板及已有模板:支持基本控制模式(Basic Control Patterns.高級分支和同步模式(Advanced Branching and Synchronization Patterns.結構模式(Structural Patterns 多實例模式(Patterns Involving Multiple Instances.

……

2)        流程的測試

a)         有流程模擬運行引擎

b)        支持對流程運行情況的追蹤,觀測

……

3)        集成能力

a)         支持與MS Office的互操作(WordExcelVisio

b)        支持精確的導入和導出BPEL,支持XPDL方式的人工流程WorkFlow:ASAP/Wf-XML(WFMC), XPDL(WfMC),支持BPEL方式的自動化流程Business Process:WSBPEL,WS-CDL

……

4)        BPMN規範支持

a)         支持BPMN,可以使用BPMN設計XPDL標準流程:支持基本業務活動單元、事件、路由、適配器等方式的拖拽式流程建模

b)        支持基於BPMN的圖形展示

5)        多用戶多版本的支持

a)         支持唯一集中式的資源文件(Repository)(基於文件或數據庫)

b)        支持多版本和版本鎖定

2.         流程設計

1)        事件處理

a)         支持商業事件的管理(支持事件的產生和提醒)

……

2)        編制(Orchestration)和編排(choreography       支持基於編制的開發和部署

a)         支持基於編排的開發和部署,即支持從已有流程、服務和組件設計和開發複雜應用的能力

b)        支持長生命週期流程

c)         支持Web Service

d)        支持事務處理

3)        集成能力

a)         支持多種傳輸協議HTTP(S), TCP/IP , FTPJMS

b)        支持數據轉換

c)         支持對各種Portal平臺、各種Java Web頁面技術(JSF,JSP,Servlet)的集成,並在開發階段對開發商提供免費的技術支持

d)        支持對數據庫的集成

e)         支持對其他流程平臺的集成

f)         支持對SAP,Oracle等套裝軟件的集成

g)        支持多種流程建模工具,請列舉支持的工具名稱。

h)        支持多種流程監控工具,請列舉支持的工具名稱。

4)        易用性

a)         支持在一個工具內完成BPM解決方案的快速開發,部署和測試

b)        簡單的開發語言和基於各種應用場景的完整的示範用例

3.         流程運行環境

1)        流程的管理

a)         支持流程的部署和管理

b)        支持對流程狀態的修改,暫停、恢復和終止。

c)         支持在業務需求變化時對已部署的流程進行快速修改

……

2)        支持SOA

a)         支持ESB

b)        支持UDDI

c)         支持WS*規範

d)        支持集羣(負載均衡和錯誤切換)

3)        安全性評估

a)         支持基於角色的管理

b)        支持審計功能

c)         支持和其他安全產品的集成

4)        平臺支持(支持多種平臺,IBM AIX,HPUX,LINUX,Windows等支持多種數據庫平臺,OracleDB2SQLServer等)

5)        性能要求

a)         支持高併發的實時業務,滿足以下技術需求,並提供滿足以下技術需求的軟硬件容量計劃:併發流程處理能力爲200筆交易/秒,每天處理業務量爲500萬以上。

b)        提供基準測試數據

c)         穩定性、擴展性:支持7×24的不間斷服務提供:提供Active/Active方式的集羣,保障較高的執行性能及穩定性;在多節點(Multi-Node)上支持程序的分佈式部署,並支持節點間的程序連接以此進行有效的資源分散處理

6)        流程監控

a)         實時的流程狀態的監控,支持對業務流程各指標的監控,例如:流程執行頻率、流程執行平均時間、流程完成率等:用戶對參與的業務流程及目前狀態進行確認。操作結束後,根據客戶樣式,按流程單位自動創建report。爲了管理程序,管理員可以確認全部的統計數據。可以事先將這些數據定義爲業務上有意義的數值進行分析。

……

7)        容災要求

a)         請說明系統備份和恢復的方案,備份恢復的時間。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章