產品特寫

建構BPM-Enable 的應用系統(上)

更新於

BPM及BPM Enable

何謂BPM

BPM就是把所有業務流程中涉及的資源包括人與應用系統都連接起來,以保證工作流程無縫執行,並更有效率。

把業務流程中的控制部分提取到業務流程層,這樣它就可以重新建模、重複使用,從而協調所有的人員、應用程式和系統元件,達成更高效率的工作。

何謂BPM-Enable的應用系統

BPM-Enable 的應用系統簡單來說就是應用BPM平台來開發應用系統 。並將應用系統切割為一個個的服務元件,再以BPM的平台來整合或串連這些元件 。以一個企業中跨應用系統來說,BPM 可應用於系統與系統間,服務或程序的整合,在單一應用系統內部,亦可用來整合內部的服務元件。

簡單的來說就是以流程平台取代原來應用系統人工銜接的工作,因此BPM Enable 的應用系統可以說是運用BPM 平台的特性,建構應用系統。

建構BPM Enable 的應用系統

應用系統開發通常分成線上交易與批次處理兩種模式,在大型主機的時代,線上的程式雖然使用者介面不是很豐富,但亦能滿足使用者的需求,對於批次處理的系統,因為通常大型主機都具有背景處理的機制,因此具有良好的解決方案。

主從式的架構下,前端具有完整的使用者介面,但對於批次處理的能力較為薄弱,但仍能達到某種程度的要求。但因每一台電腦皆需安裝客戶端的程式,因此很快的就被Web 化的應用系統所取代,Web 化的應用系統具有優良又豐富的使用者界面,同是又因為只要有一個Browse 就可操作系統,可享受服務無所不在的便利性,但是對於批次的處理並無較好的解決方案。

BPM Enable 的應用系統不只對於線上交易的系統,具有良好的架構,對於批次處理的作業,將其設計成流程的元件,組合成一個自動化的流程,是一個最佳的解決方案。

傳統Workflow-enable 的應用系統,Workflow 的應用範圍大多是應用在表單傳簽或審核上,對於應用系統自動化作業如批次交易並未具有良好的解決方案,因此應用的範圍並不是很廣。

BPM-Enable 的應用系統不僅可人工表單輸入審核的作業,而因為在一個BPM的系統中,人工作業(Manual activity)與電腦自動化作業(Automatic Activity)是並重的,因此除了原本傳統應用系統該有的行為外,可以享受BPM所帶來的附加價值。

在傳統應用系統中大約可分為幾個部份:

  • 線上交易(登錄、審核) 可運用企業流程中的人工輸入、審核的步驟,並可達成資料登錄後自動送審,可避免被動查詢方能審核的困擾。
  • 線上查詢可使用企業流程管理中的歷史資料查詢的功能,除了查詢資料內容外亦可取得資料處理過程的記錄。
  • 批次交易(轉檔、批次審核)可使用流程中的自動化的流程元件所組合成的自動步驟達成,並且可以將多個自動化元件串連成一個流程,配合排程的機制,定時啟動運行。

在一個完整的BPM環境中,上述線上的交易與批次的作業可混合於同一個流程中交互作用,因此可以作到將整個企業的作業流程整合在一起。

BPM 與一般應用程式開發的差異

功能面
項目 BPM Enable 一般應用程式

記錄每個步驟或每個人完成時間

自動記錄 1.設計記錄的Database schema
2.AP需自行撰寫記錄的API
3.需自行決定記錄時間
代理人機制 1.具有代理人設定機制
2.自動判斷代理人,自動轉派
1.通常是將帳號/密碼交給代理人,不符安管之規定
使用者介面權限控管 內建 1.無
2.每處理角色需建一個使用者介面
使用者介面與處理邏輯分割 使用者介面只負責資料輸入,業務邏輯可設於流程圖中或寫成單一可重覆利用之元件 所有邏輯皆需寫於網頁中,使用者介面的處理與邏輯混雜
Email 通知 1.可定義各種Email 發送時機(通知、完成、重新指定、取消)
2.可自定Email 樣版
需自行撰寫Mail 發送功能
派送機制 以人或職務 1.無
2.通常以人為傳送機制
組織管理 內建 需自行開發
使用者權限控管 內建
逾時處理 可設定逾時流程或提醒
工作曆 內建
轉送(Reassign) 內建
加簽 內建
取消 已有既定管理介面 需自行開發AP
價值面
項目 BPM Enable 一般應用程式
流程監控 提供流程及作業監控程式
圖形化界面
需自行設計監控界面
流程彈性/流程調整 圖形化界面 修改程式
績效統計表 內定報表
處理時效設定 1.可依工作曆判斷
2.流程塑模(Modeling)時時可定義
版本管理 內建
元件化、模組化 將工程領域之模組轉化為Business User可了解之元件 以Class 呼叫方式整合,模組化困難
例外處理-派送失敗 傳送人員不存在,可自動轉送管理者,再重新分派 需自行撰寫異常處理程式
例外處理-異常當機 啟動後自動重新執行

適合開發BPM Enable 的平台

任何的應用系統不論是線上交易或批次處理都離不開流程,BPM Enable是未來軟體發展的驅勢,但因為所處理的人與應用系統不同,在建構BPM Enable 的系統時該如何尋找一套適合的BPM平台呢?

  • 表單、流程、資料分離。
  • 具有完整的Web Service API,所提供的SDK不只是流程單一步驟的處理,亦可作為流程管理介面的開發。
  • 表單或自動化元件的開發工具需採用通用性的開發工具,如Java、 Dot.net。
  • 人與自動化元件都可作為流程的一個步驟。
閱讀更多