摘 要:本文主要闡述了構(gòu)建業(yè)務(wù)流程管理平臺(tái)研發(fā)工作背景、內(nèi)涵和主要做法,并用實(shí)例說(shuō)明了平臺(tái)的思想創(chuàng)新和技術(shù)創(chuàng)新,以及應(yīng)用效果,該平臺(tái)將為大型業(yè)務(wù)流程管理軟件提供了“快速、實(shí)用、經(jīng)濟(jì)”的開(kāi)發(fā)工具,提高開(kāi)發(fā)效率、降低維護(hù)成本。
關(guān)鍵詞:業(yè)務(wù)流程 管理平臺(tái) 研發(fā)
中圖分類號(hào):F270.7文獻(xiàn)標(biāo)識(shí)碼:A文章編號(hào):1674-098X(2012)09(a)-0018-02
1 業(yè)務(wù)流程管理平臺(tái)研發(fā)背景
業(yè)務(wù)流程管理,是一套達(dá)成企業(yè)各種業(yè)務(wù)環(huán)節(jié)整合的全面管理模式。采用業(yè)務(wù)流程管理能夠提高工作效率、改善工作質(zhì)量、固化企業(yè)流程、實(shí)現(xiàn)流程自動(dòng)化、實(shí)現(xiàn)團(tuán)隊(duì)合作、優(yōu)化流程。鐵能集團(tuán)信息化建設(shè)中遇到的以下三個(gè)方面的問(wèn)題,使得我們進(jìn)行業(yè)務(wù)流程管理平臺(tái)開(kāi)發(fā)研發(fā)成為必然。業(yè)務(wù)流程變化過(guò)于頻繁。隨著企業(yè)改革步伐的加快,大量的業(yè)務(wù)流程被持續(xù)的優(yōu)化,然而傳統(tǒng)的系統(tǒng)無(wú)法適應(yīng)業(yè)務(wù)流程的頻繁修改。造成業(yè)務(wù)人員和開(kāi)發(fā)人員不可調(diào)和的矛盾,但出現(xiàn)這種情況,并不是哪一方的錯(cuò),錯(cuò)的是舊的軟件開(kāi)發(fā)方式已經(jīng)不能適應(yīng)新的企業(yè)需求了。信息孤島林立。所謂信息孤島是指在一個(gè)單位的各個(gè)部門之間由于種種原因造成部門與部門之間完全孤立,各種信息無(wú)法順暢地在部門與部門之間流動(dòng),這樣就會(huì)形成信息孤島。信息孤島是目前企業(yè)信息化建設(shè)過(guò)程中非常嚴(yán)重的問(wèn)題,是信息化提升效率的重要瓶頸。沒(méi)有一個(gè)開(kāi)放的可持續(xù)開(kāi)發(fā)環(huán)境。在開(kāi)發(fā)各類企業(yè)應(yīng)用軟件時(shí),需要開(kāi)發(fā)許多相同的功能模塊,如用戶登錄模塊、系統(tǒng)日志模塊,隨著開(kāi)發(fā)項(xiàng)目的增加,越來(lái)越多的模塊,被重復(fù)開(kāi)發(fā),大量的浪費(fèi)了開(kāi)發(fā)時(shí)間與精力。
2 業(yè)務(wù)流程管理平臺(tái)內(nèi)涵和主要做法
為了解決以上制約鐵能集團(tuán)信息化建設(shè)的問(wèn)題,鐵能集團(tuán)提出了建立平臺(tái)的構(gòu)想,主要做了以下的工作。
2.1 應(yīng)用SOA架構(gòu)
SOA,即面向服務(wù)的技術(shù)。即具體應(yīng)用程序的功能是由一些松耦合并且具有統(tǒng)一接口的組件組合構(gòu)建起來(lái)的。當(dāng)系統(tǒng)需要增加業(yè)務(wù)功能時(shí),向平臺(tái)添加相應(yīng)服務(wù),不會(huì)影響整個(gè)系統(tǒng)的功能與結(jié)構(gòu),例如在該平臺(tái)下集成了流程服務(wù)、管理服務(wù)、權(quán)限服務(wù)、報(bào)表服務(wù)、表單服務(wù)等公共服務(wù),還包括其他的具體的業(yè)務(wù)服務(wù),如設(shè)備管理服務(wù)等,根據(jù)實(shí)際業(yè)務(wù)需求變化還可以為系統(tǒng)添加其他服務(wù),不影響原有系統(tǒng)集成的服務(wù)(見(jiàn)圖1平臺(tái)添加服務(wù)示意圖)。
2.2 建立業(yè)務(wù)流程管理平臺(tái)
完整的業(yè)務(wù)流程管理平臺(tái)由圖形化流程設(shè)計(jì)環(huán)境、流程管理與監(jiān)控、工流程引擎、使用者執(zhí)行環(huán)境以及整合各種資源的底層EAI平臺(tái)等主要元素所架構(gòu)而成,鐵能集團(tuán)業(yè)務(wù)流程管理平臺(tái)主要特點(diǎn)如下:(1)統(tǒng)一的組織結(jié)構(gòu)管理。業(yè)務(wù)流程是運(yùn)行在組織系統(tǒng)中的,要保證業(yè)務(wù)流程的流暢運(yùn)行,需要建立符合實(shí)際情況組織結(jié)構(gòu)模型。通過(guò)企業(yè)組織結(jié)構(gòu)的定義,使工作流引擎了解組織內(nèi)所有職能、每一個(gè)代表該崗位的個(gè)人及他們的從屬關(guān)系,這樣使得工作流引擎可快速正確地傳遞工作流。(2)工作流引擎。工作流引擎是業(yè)務(wù)流程管理的運(yùn)行和控制中心,它負(fù)責(zé)解釋流程設(shè)計(jì)器定義的業(yè)務(wù)流程邏輯,把任務(wù)分派給執(zhí)行者,并根據(jù)任務(wù)的返回結(jié)果決定下一步的任務(wù),控制并協(xié)調(diào)各種復(fù)雜工作流程的執(zhí)行并且同步各個(gè)客戶端的反應(yīng)。流程引擎根據(jù)組織機(jī)構(gòu)模型中所定義的職能分派策略獲取實(shí)際的執(zhí)行者,并同時(shí)獲得所需要的組織信息。(3)時(shí)間引擎。時(shí)間軸,包括時(shí)間軸定制管理與時(shí)間周期算法。基于時(shí)間軸的查詢、統(tǒng)計(jì)、提醒、事件觸發(fā)模塊,流程具體節(jié)點(diǎn)的時(shí)限提示。(4)工作流設(shè)計(jì)器。流程設(shè)計(jì)器提供了一個(gè)可視化的流程設(shè)計(jì)工具,可讓使用者在一個(gè)可視化的設(shè)計(jì)環(huán)境下用圖形的方式定義、修改業(yè)務(wù)流程。一個(gè)專業(yè)化的流程設(shè)計(jì)、開(kāi)發(fā)、調(diào)試環(huán)境,開(kāi)發(fā)人員可以在設(shè)計(jì)器上設(shè)計(jì)復(fù)雜的業(yè)務(wù)流程,可以對(duì)用戶設(shè)計(jì)的流程進(jìn)行各類分析與優(yōu)化,提供了本地調(diào)試與自動(dòng)化測(cè)試功能,提供了業(yè)務(wù)模型的推演功能。(5)表單設(shè)計(jì)器。不需要任何編程就能設(shè)計(jì)出各種報(bào)表,利用表單設(shè)計(jì)器提供的使用工具經(jīng)過(guò)拖拉、選擇、拷貝、復(fù)制即可實(shí)現(xiàn)報(bào)表制作。用戶可以在同一個(gè)流程中為每個(gè)環(huán)節(jié)都定義一個(gè)不同的表單,也可以定義相同的表單,支持Grid表、表中表。(6)流程監(jiān)控器。流程部署之后,需要隨時(shí)對(duì)其進(jìn)行管理與監(jiān)控,平臺(tái)為系統(tǒng)管理員提供了一個(gè)工作流引擎運(yùn)行時(shí)的實(shí)時(shí)監(jiān)控環(huán)境。可以對(duì)自己部署的業(yè)務(wù)流程進(jìn)行啟用、禁止等操作,也可將其返回給流程設(shè)計(jì)者以便修改等。(7)任務(wù)列表。為用戶提供了各類業(yè)務(wù)的導(dǎo)航,包括可啟動(dòng)流程、可管理流程、可考核流程、可查看流程、啟動(dòng)事項(xiàng)、參與任務(wù)、可分配任務(wù)、可接件任務(wù)、應(yīng)辦理任務(wù)、應(yīng)提交任務(wù)、可管理任務(wù)、可考核任務(wù)、可查看任務(wù)、超時(shí)任務(wù)、超時(shí)事項(xiàng)、啟動(dòng)未完成的流程,以及參與未完成的流程。(8)統(tǒng)計(jì)報(bào)表。以類似Excel的表格方式編輯報(bào)表,完美支持Excel的導(dǎo)入導(dǎo)出,具有復(fù)雜的表格樣式、復(fù)雜的數(shù)據(jù)組織、多個(gè)數(shù)據(jù)來(lái)源等顯著特點(diǎn)。
3 業(yè)務(wù)流程管理平臺(tái)創(chuàng)新
3.1 思想創(chuàng)新
(1)權(quán)限體系創(chuàng)新。在軟件系統(tǒng)中我們常會(huì)說(shuō)用戶有什么權(quán)限,在人員流動(dòng)過(guò)程中我們也不斷為用戶綁定權(quán)限和解除權(quán)限,也就是如下模型:用戶——功能權(quán)限。如果面對(duì)一個(gè)龐大的系統(tǒng),單就對(duì)用戶進(jìn)行權(quán)限設(shè)置已經(jīng)是一個(gè)復(fù)雜而煩瑣的事情,為了解決這個(gè)問(wèn)題通常的做法是引入角色的概念以實(shí)現(xiàn)功能權(quán)限和用戶的隔離,也就是如下的模型:用戶——角色——功能權(quán)限。這種模型雖然不再為用戶直接的綁定權(quán)限,但還是要為用戶綁定角色,而且角色的定義與設(shè)計(jì)依然是很煩瑣的事情,而且角色的定義只是為權(quán)限設(shè)計(jì)服務(wù),與業(yè)務(wù)的相關(guān)性很小。基于以上分析,為了彌補(bǔ)用戶——角色——功能的不足,在權(quán)限設(shè)計(jì)上我們將訪問(wèn)權(quán)限與職能相關(guān)聯(lián),職能再與用戶關(guān)聯(lián),模型如下:用戶——部門職能——功能權(quán)限。權(quán)限是分配給職能的,而不是分配給人的,也就是說(shuō)權(quán)限和人的無(wú)關(guān)性。人員在調(diào)整過(guò)程中必定要為其賦予部門職能,在得到部門職能的同時(shí)也就自動(dòng)獲得了與部門職能相對(duì)應(yīng)的權(quán)限。
(2)擴(kuò)展表方法創(chuàng)新。擴(kuò)展表用于設(shè)計(jì)在流程中使用的各類業(yè)務(wù)表單,管理業(yè)務(wù)表單上的元素在流程的具體業(yè)務(wù)節(jié)點(diǎn)上的權(quán)限,平臺(tái)采取“豎表”設(shè)計(jì)方法,取代了傳統(tǒng)的“橫表”設(shè)計(jì)。優(yōu)點(diǎn)如下:①實(shí)現(xiàn)數(shù)據(jù)關(guān)系與數(shù)據(jù)屬性的分離。在“橫表”設(shè)計(jì)方式下,數(shù)據(jù)關(guān)系與數(shù)據(jù)屬性是糾結(jié)在一起的,而應(yīng)用擴(kuò)展表后實(shí)現(xiàn)了數(shù)據(jù)關(guān)系與數(shù)據(jù)屬性相分離設(shè)計(jì)思想。這樣更便于數(shù)據(jù)的查詢、統(tǒng)計(jì)分析,以及顯示設(shè)計(jì)。②可以實(shí)現(xiàn)精細(xì)的權(quán)限約束。在業(yè)務(wù)系統(tǒng)中,經(jīng)常要求對(duì)權(quán)限的設(shè)置要精細(xì)到每條記錄的每個(gè)單元格,這在“橫表”設(shè)計(jì)中實(shí)現(xiàn)起來(lái)非常繁瑣,而在豎表結(jié)構(gòu)中確很容易實(shí)現(xiàn)。③可以直接兼容其他應(yīng)用系統(tǒng)的數(shù)據(jù)結(jié)構(gòu)。大型軟件應(yīng)用發(fā)展到現(xiàn)階段已經(jīng)進(jìn)入了多系統(tǒng)并存的時(shí)代,可以兼容其它系統(tǒng)的數(shù)據(jù)結(jié)構(gòu),已成為構(gòu)建系統(tǒng)架構(gòu)的迫切要求,使用擴(kuò)展表結(jié)構(gòu)可以很好的兼容其它系統(tǒng)的各種模式。④可以在不改變表結(jié)構(gòu)的情況下完成業(yè)務(wù)字段的擴(kuò)充,避免了用戶需要添加業(yè)務(wù)字段時(shí),需要開(kāi)發(fā)人員重新修改系統(tǒng)結(jié)構(gòu)的問(wèn)題。
3.2 技術(shù)創(chuàng)新
(1)流程管理。從流程建模,到流程部署、流程運(yùn)行控制,以及流程的管理監(jiān)控,形成完整的流程管理體系。業(yè)務(wù)流程管理的運(yùn)行和控制中心負(fù)責(zé)解釋流程設(shè)計(jì)器定義的業(yè)務(wù)流程邏輯,把任務(wù)分派給執(zhí)行者,并根據(jù)任務(wù)的返回結(jié)果決定下一步的任務(wù),控制并協(xié)調(diào)各種復(fù)雜工作流程的執(zhí)行并且同步各個(gè)客戶端的反映。提供統(tǒng)一的協(xié)同工作平臺(tái),使用戶能夠方便地進(jìn)行流程的啟動(dòng)、運(yùn)轉(zhuǎn)、歸檔等操作。提供對(duì)流程的管理與監(jiān)控功能,包括啟動(dòng)、停止,以及流程的流轉(zhuǎn)跟蹤等。以可視化的方式建立各種業(yè)務(wù)流程,即通過(guò)圖形化拖拽操作界面,用最少的時(shí)間設(shè)計(jì)或修改業(yè)務(wù)流程。
(2)表單定義。業(yè)務(wù)活動(dòng)中不可避免地會(huì)牽扯到相關(guān)的各種數(shù)據(jù),需要以表單的方式展現(xiàn)在活動(dòng)參與者的面前。系統(tǒng)提供表單設(shè)計(jì)器,進(jìn)行可視化界面設(shè)計(jì)。①支持流程內(nèi)每一個(gè)狀態(tài)綁定不同的表單,也支持多個(gè)狀態(tài)綁定相同表單,不同步驟綁定不同表單。②表單結(jié)構(gòu)以記錄方式存儲(chǔ),而不是以字段方式存儲(chǔ),實(shí)現(xiàn)表單項(xiàng)隨時(shí)增加。
(3)組織結(jié)構(gòu)管理。業(yè)務(wù)流程是運(yùn)行在組織系統(tǒng)中的,要保證業(yè)務(wù)流程的流暢運(yùn)行,需要建立與實(shí)際相符合的組織結(jié)構(gòu),并建立組織實(shí)體之間的各種關(guān)系:組織單元的上下級(jí)關(guān)系、職位和員工的關(guān)系。通過(guò)組織結(jié)構(gòu)的定義,使工作流引擎了解組織內(nèi)所有職能、每一個(gè)代表該職能的個(gè)人及他們的從屬關(guān)系,這樣使得工作流引擎可快速正確地傳遞工作流。
4 業(yè)務(wù)流程管理平臺(tái)效果
基于SOA架構(gòu),提供開(kāi)放的可持續(xù)開(kāi)發(fā)環(huán)境?;赟OA架構(gòu)下的業(yè)務(wù)流程管理平臺(tái),提供了管理服務(wù)、權(quán)限服務(wù)、表單服務(wù)、報(bào)表服務(wù)、流程服務(wù)等一系列服務(wù),通過(guò)該平臺(tái)實(shí)現(xiàn)軟件的可持續(xù)開(kāi)發(fā),為大型應(yīng)用軟件開(kāi)發(fā)提供有力支持。應(yīng)用擴(kuò)展表技術(shù)、工作流技術(shù),實(shí)現(xiàn)應(yīng)用軟件隨需而變。目前,信息系統(tǒng)開(kāi)發(fā)方式的普遍缺點(diǎn)在于對(duì)需求表達(dá)不清晰、效率不高。在這種思維方式下流程、數(shù)據(jù)被固化在系統(tǒng)中,企業(yè)不能隨著商業(yè)環(huán)境的變化而方便迅速地改變業(yè)務(wù)流程、業(yè)務(wù)數(shù)據(jù),而企業(yè)環(huán)境的變化促使企業(yè)必須快速地調(diào)整業(yè)務(wù)來(lái)響應(yīng)。通過(guò)業(yè)務(wù)流程管理,可以對(duì)業(yè)務(wù)流程進(jìn)行自動(dòng)化,并通過(guò)流程的分析及監(jiān)控功能,對(duì)業(yè)務(wù)進(jìn)行整合及計(jì)量,從業(yè)務(wù)角度、組織角度、IT角度都可得到可量化的改善效果,實(shí)現(xiàn)應(yīng)用軟件隨需而變。應(yīng)用松耦合,統(tǒng)一接口定義平臺(tái),打破“信息孤島”。為了簡(jiǎn)化軟件開(kāi)發(fā)中的重復(fù)繁重的基礎(chǔ)工作,適應(yīng)業(yè)務(wù)流程的多變性,打破信息孤島。平臺(tái)提供一個(gè)松耦合并且具有統(tǒng)一接口定義平臺(tái),可在這個(gè)平臺(tái)上持續(xù)開(kāi)發(fā)。提供對(duì)外的服務(wù)接口,以便于其它系統(tǒng)調(diào)用。提供靈活的數(shù)據(jù)存儲(chǔ)結(jié)構(gòu),便于從其它系統(tǒng)快速導(dǎo)入數(shù)據(jù),提供工作流系統(tǒng),以便于業(yè)務(wù)使用人員自定義業(yè)務(wù)流程。
業(yè)務(wù)流程管理平臺(tái)探索是鐵煤集團(tuán)總結(jié)了多年對(duì)業(yè)務(wù)流程管理的基礎(chǔ)上,以“快速、實(shí)用、經(jīng)濟(jì)”理念推出的一套基于SOA技術(shù)面向煤炭行業(yè)應(yīng)用軟件開(kāi)發(fā)的流程管理系統(tǒng)。應(yīng)用該平臺(tái)可以使軟件開(kāi)發(fā)人員“越過(guò)”最底層、最復(fù)雜的技術(shù),更多關(guān)注業(yè)務(wù)本身,應(yīng)用該平臺(tái)開(kāi)發(fā)軟件的過(guò)程也更簡(jiǎn)單、方便,更趨高效,將大幅度提高軟件開(kāi)發(fā)的效率和質(zhì)量。
參考文獻(xiàn)
[1]鳳羽翚,李嚴(yán)鋒,葉瓊偉.業(yè)務(wù)流程管理[M].清華大學(xué)出版社有限公司,2009,3.
[2]張玲玲,汪壽陽(yáng).業(yè)務(wù)流程導(dǎo)向的知識(shí)管理[M].科學(xué)出版社,2010,4.