談談對BPM的理解(轉)
BPM的產生緣由
近年來,隨著計算機技術的發展和網際網路時代的到來,我們已經進入了資訊時代,也稱為數字化時代,在這數字化的時代裡,企業的經營管理都受到了極大的挑戰。從上世紀90年代起至今,企業的資訊化工作開展的如火如荼,相繼建立了很多業務系統,同時也給企業帶來了巨大的效益。但是,新的問題出現了,業務已經對這些複雜的系統提出更新的需求,即需要實現系統之間整合。EAI(Enterprise Application Integration)技術風靡一時,成為了各界人士追捧的物件。熱鬧過後,許多人已經清晰的認識到,EAI僅僅是為解決“資料孤島”而生,並不能解決業務流程的整合。另外,雖然很多業務系統也支援工作流技術,但是由於工作流與業務邏輯緊密結合,所以在EAI實施的效果大打折扣。實踐證明,優化、高效、低成本的業務流程將為企業提供了與競爭對手拉開距離的法寶,高效的業務流程不僅提高企業的執行高效率,而且降低企業的成本,使企業達到高度自動化。所以,業務流程才是企業的核心問題。為了使業務系統適應企業的執行機制,需要對眾多業務系統進行更深度的整合,包括資料整合、流程整合等,所以,BPM(Business Process Management)隨之而產生。
BPM是什麼
在IT界裡,有一個不成文的規律,那就是喜歡拿概念忽悠人。“2005年是ERP年”,口號剛出,一夜之間ERP廠商風起雲湧,到處鼓吹其先進理念,只要是能跟ERP捱上邊兒的,都叫ERP系統,所以直接導致ERP在中國是失敗的結局。BPM也是一樣,由於BPM、ERP、OA、Workflow、EAI等這些概念都有一定聯絡,所以許多也不免俗套,開始宣揚自己的BPM理念。如果您是沒學會忽悠本事的開發商,深刻理解BPM,真正提升您的產品質量,才不會被市場忽悠沒了;如果您是沒學會防忽悠本事的使用者,深刻理解BPM,真正能評價一個好的BPM產品,才不會被開發商忽悠沒了。
關於“BPM是什麼”這個問題,在很多資料裡並沒有給出非常明確的定義(確定的含義),原因是IT界的很多概念在不同的場合下有不同的含義,並且隨著時間而不斷髮展,所以不能叫定義,而只能叫描述,哪怕是權威的機構,如美國Gartner也是以“描述”說詞。以下是Gartner對BPM的描述摘要:“Rapid change is impractical while processes are embedded in conventional applications.
The Development of BPM Technologies is enabling business managers to
abstract process flows and rules from the underlying applications and infrastructure, and to change them directly.”
以下是我對此的理解:嵌入到常規的程式中的流程需要迅速改變是不切實際的。需要具備讓管理人員也可以設計業務流程,需要把流程的邏輯從底層的程式碼中抽取出來,並且能夠直接改變他們。
在理解BPM之前,我們先談談一個比較熟悉的名詞——業務流程(Business Process)。
業務流程是企業、政府以及其它各種組織,為了達到其業務目標,而執行的一系列活動,這些活動須由兩個或兩個以上的人或IT系統執行,序列或並行,活動的執行需要滿足一定的規則和條件。下圖是一個報表審批流程。
在上圖報表審批流程中,首先相關業務人員(參與者為人)向相關領導提交費用報表(執行活動),該領導審批後,系統自動根據預先設定的規則對費用總額Total(流程攜帶的業務資料)進行判斷,當Total>5000(規則或條件)時需要二級領導審批,審批完成後交由文件管理員歸檔儲存(參與者為系統)。在整個流程中,包含了手工作業(暫名為AgileWork),如提交費用報表、領導審批等,也包含了自動作業(暫名為AgilePart),如是否批准、Total值判斷、文件儲存等。
基於上述理解,BPM應該是一種企業中業務流程管理的方法,而支援其管理的軟體系統叫BPMS(Business Process Management Suite)。所以BPM應該是企業管理中的方法,而BPMS是建立、執行、評價和管理企業業務流程的一組軟體系統體系,也就是我們常說的軟體平臺。概括起來說,BPM應該能體現以下特性:
· 業務流程建模:業務人員完全以業務的視角,用流程圖描述業務流程,也就是流程設計工具。
· 業務流程自動化:根據定義好的流程,在BPM系統中自動執行,完全廢棄傳統的紙張,流程的傳遞不需要人工干預,也就是智慧化BPM流程引擎。
· 系統整合:BPM不僅僅是由人來參與,部分活動也可以由IT系統來參與,例如在請假流程中需要在HR系統中判斷請假人是否有年休假期。這就要求BPM提供執行自動作業功能,如呼叫WebService、執行某類的方法。
· 業務流程管理:能夠視覺化的監控流程的執行情況,對流程執行過程中出現的意外進行處理,也就是提供實時流程監控。
·業務流程優化:對流程執行的情況(包括:效率、成本、瓶頸、負載)進行統計、分析。根據統計分析結果,對流程進行改造,以優化流程的執行,也就是提供流程模擬與分析工具。
業務流程建模是基礎,業務流程自動化和系統整合是實現手段,業務流程管理是過程,業務流程優化是目標。BPM是一個方法論和軟體系統的集合,作為方法論,有其自身的規劃、實施、管理辦法。在該方法的指導下,由軟體系統來實現業務流程的有效管理。從這個角度來講,BPM是一個持續性的過程,而這個過程的各個環節將構成一個閉合的迴圈體,這恰恰迎合了企業成長的過程。所以BPMS必將給企業的資訊化建設,提高企業在市場的競爭力起著非常重要的作用。
BPM與Workflow、EAI
首先,我們先看看BPM與Workflow。談到Workflow,我們自然會想到OA系統。
八十年代初期,隨著大量PC機的生產以及普及化,有一組麻省理工的研發人員首先提出了辦公自動化的概念,並在1981年發表了一篇文章:“Etude:An Integrated Document Processing System”。文章中提到開發一套整合的工具,包括辦公工作臺以及針對個人互動的軟體系統,為辦公室員工提高辦公的效率。這套軟體系統就是工作流與OA(辦公自動化)的前身。國內的OA系統是以文件作為流轉的元素,把符合中國國情的國家機關以及國營企業下發正式的紅頭文,通過支援複雜工作流程,複雜的人員組織,不同組織機構,不同崗位,進行比如動態會籤作業,實現電子表單與人的互動處理工作。很多人誤認為OA或者工作流就是BPM。其實工作流是BPM的子集,BPM與工作流有很多本質的差別,主要區別如下表所示:
區別點 |
OA/Workflow |
BPM |
互動 |
人與人 人與系統(次要) |
人與人 系統與系統 人與系統 系統與人 |
整合 |
不提供,甚至惡化了企業“流程孤島”的問題 |
能廣泛整合不同業務系統 |
流程建模 |
不重要,甚至很多OA是通過Lotus系統來配置 |
至關重要,需要提供視覺化流程定義 |
焦點 |
文件路由 |
業務流程生命週期管理與流程優化 |
接下來,我們來看BPM與EAI。
目前,企業出現了很多分散式的應用與系統。這些系統包括ERP,CRM等業務系統。但是系統卻成為了企業的“資訊孤島”,系統與系統之間無法交換資訊。隨之,EAI(Enterprise Application Integration)等產品開始出現。很多使用者因為BPM提供的整合功能與EAI相似,誤以為BPM就是EAI。但是EAI和BPM是有很多區別的,EAI從表面上看,解決了資訊孤島問題,實際上,只是解決了資料傳輸問題,企業中普遍存在的“流程孤島”的問題,仍然沒有被解決。隨著時間與業務需要,EAI與BPM開始彙集了一些新的技術,尤其是Web Services,SOA(Service Oriented Architecture)的出現加速了整個過程。最終,BPM不是EAI,但卻是EAI的未來發展方向。主要區別如下表所示:
區別點 |
EAI |
BPM |
關注焦點 |
重視資料整合-即系統之間交換資料 |
重視流程整合-即系統之間流程的路由 |
速度 |
速度要求非常快,如果有延遲,會造成極大的瓶頸 |
速度依賴於人工處理速度 |
使用者介面 |
參與者是系統,不需要介面 |
參與者包括人,對介面易用性要求高 |
使用者數 |
參與者是系統,能整合的系統超過20已經達到極限 |
可有很多人蔘與,參與者有很多角色與關係 |
異常處理 |
只在乎系統的異常 |
在乎系統的異常,還必須考慮人的需求,包括請假,外出等情況 |
業務規則 |
牽涉系統的資訊流的業務規則 |
牽涉範圍更廣,不只是系統,還需要考慮業務以及與人之間的關係 |
資料格式轉換 |
至關重要 |
可能提供 |
BPM常見應用場景
應用領域 |
常見流程 |
生產製造 |
ISO9000流程 |
軟體研發 |
CMMI流程 |
財務 |
合同審批流程 |
採購申請流程 |
|
固定資產報廢流程 |
|
費用報銷流程 |
|
人事行政 |
請假申請流程 |
出差申請流程 |
|
KPI績效考核流程 |
|
人員僱傭流程 |
|
管理 |
資源申請流程 |
日常報告流程 |
|
市場銷售 |
訂單受理流程 |
合同執行流程 |
|
客戶服務 |
保險索賠流程 |
投訴受理流程 |
|
售後服務流程 |
|
政務 |
公文審批流程 |
專案申報流程 |
|
服務受理流程 |
|
多政府部協作處理流程 |
|
B2B |
與合作伙伴的協作流程 |
BPM能帶來什麼
1、提高客戶服務的滿意度
BPM系統為客戶提供單一入口,客戶只要通過該單一入口提出請求即可,流程自動把任務分配到相關業務負責人。由於BPM系統執行效率遠遠高於人工流程,全面實施BPM系統將會給客戶提供更快速的服務響應。另外,客戶是流程環節中的一部分,並通過BPM參與到業務流程中來,所以,可以隨時能夠獲得流程的進度,使客戶對其需求的處理情況有直觀的瞭解,消除了客戶的“需求石沉大海”的現象。
2、提高自身的市場競爭力
· 最優的業務流程運作效率
通過BPM系統實現自動化執行流程,消除了傳統紙質流程中人工傳遞所消耗的時間;BPM系統允許大規模的並行處理,這大大提高了流程執行的速度。BPM的任務分配機制,提供了負載平衡、任務佇列、後備人選等特性,將任務分配給當前執行該任務最有效率的人;BPM的任務提醒機制,使任務執行者能夠立即獲知其被分配的活動;BPM的監控、統計、分析工具能夠最大限度促進流程執行,並使其不斷優化。
· 平衡效率、成本和質量,提供成熟的服務和生產能力
BPM系統能通過組織機構、崗位設定詳細定義流程,明確崗位職責和業務規則,減少工作失誤。BPM的監控工具,能夠分揀出執行中出現問題的流程,供相關人員進行干預;BPM的建模工具、模擬預演工具和統計分析工具,能夠幫助流程定義者設計出最適合該組織的流程。
3、提高適應變化的能力
市場、客戶、競爭者都在變化,要求一個組織必須快速變化,適應新的形勢。有時之所以出現組織適應變化的能力差現象,是由於沒有感知到外部變化,並且無法讓組織內的人員快速學習和執行新的業務規則。BPM系統的一些特性消除了以上的問題:
· BPM系統讓客戶、合作伙伴、供應商參與到流程中來,能夠快速直觀地獲得他們的反饋,感知市場的變化。
· BPM系統的統計分析工具,能夠從歷史的資料中,預測到內部外部環境的變化趨勢。
· BPM系統減少了組織內人員對新業務規則的學習成本。流程執行者不需要知道流程的變化,因為不是由人來觸發後續活動,而是由BPM系統根據新的業務規則新的流程定義來觸發各個活動。
· BPM系統要求組織內人員只需要熟悉自己所參與的活動的工作即可。BPM系統如同流水線,分解複雜的工作,讓每一個人的工作簡化,即使流程發生變化,每個人仍然完成其負責的簡單的工作。
相關文章
- 談談自己對REST、SOA、SOAP、RPC、ICE、ESB、BPM知識彙總及理解RESTRPC
- 談談你對Promise的理解Promise
- 談談對中斷的理解
- 談談對Spring IOC的理解Spring
- 談談我對Monad的理解
- 談談我對Spring IOC的理解Spring
- 談談對MVC、MVP和MVVM的理解?MVCMVPMVVM
- 談一談對vuex的簡單理解Vue
- 談談我對服務化的理解
- 每日一問:談談對 MeasureSpec 的理解
- 談談對IOC及DI的理解與思考
- 面試——談談你對Java 平臺的理解面試Java
- 談談我對服務網格的理解
- 談談你對前端效能優化的理解前端優化
- 談談我對js中閉包的理解JS
- 談一談我對Spring Resource的理解Spring
- 談談BPM、工作流引擎與OA的關係
- 【Java 容器面試題】談談你對HashMap 的理解Java面試題HashMap
- 談一談對vue-router的簡單理解Vue
- 談談我對學生浮躁心裡的理解
- 談談我對Android安全機制的理解Android
- Java面試題:請談談對ThreadLocal的理解?Java面試題thread
- 【搞定面試官】談談你對JDK中Executor的理解?面試JDK
- 面試——談談你對Java 物件導向思想的理解面試Java物件
- 談談我對物件導向以及類與物件的理解物件
- 談談對搜尋技術Elastic Search&Lucene的理解AST
- 談一談我對‘模板方法’設計模式的理解(Template)設計模式
- 談談我對深拷貝和淺拷貝的理解
- 淺談對java-GC的理解JavaGC
- 談談對分散式事務的一點理解和解決方案分散式
- JAVA面試題 請談談你對Sychronized關鍵字的理解?Java面試題Zed
- 第 15 題:談談你對迴流和重繪的理解?
- 【面試普通人VS高手系列】談談你對Seata的理解面試
- GSLB是什麼?談談對該技術的一點理解
- 談談 Javascript 的執行機制及對同步非同步的理解JavaScript非同步
- 淺談對標記永久化的理解
- 【大廠面試06期】談一談你對Redis持久化的理解?面試Redis持久化
- MVC、MVP、MVVM,談談我對Android應用架構的理解MVCMVPMVVMAndroid應用架構