陳琳
(杭州蕭山國際機(jī)場(chǎng) 浙江省杭州市 311207)
OA(Office Automation,辦公自動(dòng)化)旨在使企業(yè)內(nèi)部人員方便快捷地共享信息,高效協(xié)同工作,OA 以人為本的高效協(xié)作在中國企業(yè)管理軟件領(lǐng)域?qū)⑵浒l(fā)揮到了極致,成為企業(yè)部署協(xié)同管理的基礎(chǔ)。BPM(Business Process Management,業(yè)務(wù)流程管理)的概念源自國外,是一種以規(guī)范化的構(gòu)造端到端的卓越業(yè)務(wù)流程為中心,以持續(xù)的提高組織業(yè)務(wù)績效為目的的系統(tǒng)化方法。兩者之間有很多相近但不同的特點(diǎn),相近點(diǎn)是核心技術(shù)同為工作流引擎能力,BPM管理重點(diǎn)在于企業(yè)業(yè)務(wù)端到端的流程管理,OA 則在于企業(yè)行政管理業(yè)務(wù)流程需求。OA 的應(yīng)用側(cè)重是組織的管理以及人與人、部門與部門之間的協(xié)同辦公,是一種辦公方式;BPM 則側(cè)重于業(yè)務(wù)流程的標(biāo)準(zhǔn)化、流程化、自動(dòng)化、可控制等,是一系列系統(tǒng)化方法。而從適用對(duì)象方面來看沒有差異,OA 系統(tǒng)和BPM 系統(tǒng)都可面向企業(yè)內(nèi)外部用戶,實(shí)現(xiàn)信息共享、協(xié)同互通。BPM 很大的一個(gè)優(yōu)勢(shì)提供標(biāo)準(zhǔn)和技術(shù)能力,實(shí)現(xiàn)業(yè)務(wù)流程端到端串聯(lián)。OA 的優(yōu)勢(shì)是以流程驅(qū)動(dòng),服務(wù)于業(yè)務(wù)。所以BPM 的流程引擎提供的組件/服務(wù)更多,能力更加完備,平臺(tái)比較厚重,不有利于根據(jù)企業(yè)信息化架構(gòu)要求和業(yè)務(wù)變化需求快速調(diào)整。OA 的流程引擎是為業(yè)務(wù)服務(wù),能力豐富,平臺(tái)輕量,具有良好的彈性和擴(kuò)展性,可快速根據(jù)企業(yè)組織變化和業(yè)務(wù)調(diào)整做出響應(yīng)。
Lotus Notes/Domino 是IBM 的協(xié)同辦公平臺(tái),在國內(nèi)擁有廣泛的用戶,某些主流的協(xié)同辦公(OA)軟件產(chǎn)品仍基于這個(gè)平臺(tái)開發(fā),在穩(wěn)定性及易用性上具有明顯優(yōu)勢(shì),但由于推出時(shí)間較早、采用文檔數(shù)據(jù)庫等特點(diǎn),導(dǎo)致其流程集成能力偏弱且通用性不足,很多企業(yè)開始采用新的流程引擎集成替代,例如BPM 等,以滿足日益復(fù)雜的協(xié)同需求。由于BPM 投入較高,大型企業(yè)在內(nèi)部流程規(guī)范化及標(biāo)準(zhǔn)化體系已達(dá)到一定程度,實(shí)現(xiàn)效果確實(shí)會(huì)較理想。但相較于一部分中小型企業(yè),雖有一些自動(dòng)化“端對(duì)端”的業(yè)務(wù)流需求,內(nèi)部距離體系化的業(yè)務(wù)流程管理尚遠(yuǎn),從保護(hù)現(xiàn)有投資出發(fā),如何停留在OA 靈活可變的行政審批流程上并輔以可配置的通用型業(yè)務(wù)接口設(shè)計(jì)以便于集成外部系統(tǒng),也許是一種更具備現(xiàn)實(shí)意義的解決方案。本文的設(shè)計(jì)定位主要是試圖基于Domino 的OA 實(shí)現(xiàn)類BPM融合,破解Domino 工作流引擎的通用性方面的局限,滿足企業(yè)部分端對(duì)端的工作流要求。
基于OA 實(shí)現(xiàn)管理系統(tǒng)的類BPM 融合的方向,首先確立OA在企業(yè)業(yè)務(wù)管理系統(tǒng)中核心流程中心的定位,以實(shí)現(xiàn)跨系統(tǒng)的業(yè)務(wù)流程流轉(zhuǎn)與數(shù)據(jù)交互。事實(shí)上,許多企業(yè)內(nèi)部的管理系統(tǒng)如ERP、合同、招采等也內(nèi)置審批流,但是這些流程引擎的多樣性和靈活性不如OA,尤其一些業(yè)務(wù)單據(jù)可能涉及多部門會(huì)簽,復(fù)雜流程在OA 以外的外部系統(tǒng)上實(shí)現(xiàn)都較困難。因此,憑借OA 系統(tǒng)在流程管理與部門協(xié)同辦公方面的獨(dú)到優(yōu)勢(shì),進(jìn)一步整合其他管理類應(yīng)用系統(tǒng),通過建立統(tǒng)一標(biāo)準(zhǔn)的接口方式能夠適應(yīng)其它系統(tǒng)在OA 中流轉(zhuǎn)審批的需求,將這類應(yīng)用系統(tǒng)的審批流程放在OA 系統(tǒng)中進(jìn)行,所需的相關(guān)數(shù)據(jù)從原系統(tǒng)中實(shí)時(shí)采集抓取,流轉(zhuǎn)過程中及時(shí)反饋審批意見及結(jié)果,最終達(dá)到各系統(tǒng)之間互相支持、協(xié)同辦公的目標(biāo)。
圖1
建立通過Web Service 接口以XML 文本傳輸格式作為標(biāo)準(zhǔn)的接口傳輸協(xié)議,是確立OA 作為可配置的通用的流程中心的第二步。XML 已經(jīng)成為新的網(wǎng)頁標(biāo)示語言和數(shù)據(jù)交換方法。Domino 對(duì)XML 提供了強(qiáng)有力的支持,以及XML 本身具有的可擴(kuò)展性以及自我描述特性,使OA 系統(tǒng)與其它系統(tǒng)(如ERP 系統(tǒng))這兩種完全不同的應(yīng)用系統(tǒng)平臺(tái)、不同的底層數(shù)據(jù)庫類型交換數(shù)據(jù)成為可能。
Web Service:
Web Service 編輯Web service 是一個(gè)平臺(tái)獨(dú)立的,低耦合的,自包含的、基于可編程的web 的應(yīng)用程序,可使用開放的XML 標(biāo)準(zhǔn)來描述、發(fā)布、發(fā)現(xiàn)、協(xié)調(diào)和配置這些應(yīng)用程序,用于開發(fā)分布式的互操作的應(yīng)用程序。
XML:
可擴(kuò)展標(biāo)記語言,標(biāo)準(zhǔn)通用標(biāo)記語言的子集,是一種用于標(biāo)記電子文件使其具有結(jié)構(gòu)性的標(biāo)記語言。
基于Domino 表單域與XML 接口文本中字段的對(duì)應(yīng),在OA中實(shí)現(xiàn)外部系統(tǒng)單據(jù)在OA 系統(tǒng)中的流程審批,借助OA 系統(tǒng)的工作流引擎實(shí)現(xiàn)流程動(dòng)態(tài)維護(hù),并可將審批意見或其它信息反饋回外部系統(tǒng)中。由于XML 格式本身的標(biāo)準(zhǔn)性,OA 應(yīng)用中可實(shí)現(xiàn)可視化的配置界面,通過DOMINO 中的域設(shè)定匹配相應(yīng)的字段,解析任意外部系統(tǒng)通過Web Service 接口傳遞來的XML 文件,形成審批表單流轉(zhuǎn),以達(dá)到理想的靈活、通用、可配置的接口,進(jìn)一步鞏固OA 作為流程中心的存在。
圖2
在外部系統(tǒng)與OA 交互過程中,需要重點(diǎn)考慮數(shù)據(jù)的安全性與一致性兩個(gè)方面的問題。安全性主要是防止數(shù)據(jù)的丟失,比如接口的穩(wěn)定性以及業(yè)務(wù)操作模式的多樣性是否會(huì)引起傳遞過程中數(shù)據(jù)的丟失;一致性是保證OA 與其它系統(tǒng)在過程中及最終狀態(tài)下一定是一致,目前的實(shí)現(xiàn)場(chǎng)景是外部系統(tǒng)一旦進(jìn)入OA 審批后即單據(jù)鎖定,待OA 審批到一定階段有反饋信息后外部系統(tǒng)單據(jù)才可解鎖,進(jìn)行下一步操作,且單據(jù)內(nèi)容不可再次編輯。
由于許多企業(yè)存在著許多不同建設(shè)時(shí)期、不同架構(gòu)的信息系統(tǒng)孤島,因此上述設(shè)計(jì)思路源自于以下場(chǎng)景的技術(shù)實(shí)現(xiàn):
培訓(xùn)計(jì)劃審批作為OA 中的一個(gè)流程已實(shí)現(xiàn)多年,管理者已習(xí)慣在OA 中審批培訓(xùn)計(jì)劃,業(yè)務(wù)工作者在OA 上生成審批計(jì)劃,但培訓(xùn)計(jì)劃的統(tǒng)計(jì)、管理等一系列業(yè)務(wù)操作只能通過“紙上談兵”。隨著培訓(xùn)管理模塊作為企業(yè)資源管理系統(tǒng)(以下簡稱ERP)中的人力資源管理的一部分上線運(yùn)行,業(yè)務(wù)工作者在ERP 上實(shí)現(xiàn)了培訓(xùn)計(jì)劃的生成、管理。雖然門戶實(shí)現(xiàn)了用戶單點(diǎn)登錄,統(tǒng)一待辦,但無法改變ERP 審批流程不靈活的事實(shí),以及管理者對(duì)ERP 審批界面的不適應(yīng)。以需求為驅(qū)動(dòng),對(duì)技術(shù)實(shí)現(xiàn)難易度、費(fèi)用、系統(tǒng)影響等因素綜合考量后,最后確定了Domino 通用型流程引擎的設(shè)計(jì)思路。
事實(shí)上,通用型的流程引擎實(shí)現(xiàn)事實(shí)上不局限于ERP 這個(gè)單一的外部系統(tǒng),也不僅限于培訓(xùn)計(jì)劃審批某一項(xiàng)實(shí)際業(yè)務(wù),它完全可以根據(jù)需要外接不同類型架構(gòu)的外部系統(tǒng),不同的業(yè)務(wù)流審批,實(shí)現(xiàn)各種審批流的調(diào)用。從這一點(diǎn)來說,它有類似BPM 的融合理念。
如圖1所示。
3.2.1 接口配置文檔功能描述
用于創(chuàng)建接口配置文檔,根據(jù)billid 獲取需要?jiǎng)?chuàng)建的數(shù)據(jù)庫服務(wù)器名、路徑、對(duì)應(yīng)的業(yè)務(wù)類型、需要拷貝的字段和各個(gè)字段類型。接口配置文檔可以對(duì)輸入字段進(jìn)行取舍,調(diào)整OA 的審批流程,同時(shí)應(yīng)用系統(tǒng)輸入字段信息的調(diào)整也可以在配置文檔配置,由于配置文檔的存在,不必修改接口。
3.2.2 接口配置文檔表單設(shè)計(jì)
如圖2所示。
目前,BPM 的實(shí)現(xiàn)工具不少,還是要根據(jù)環(huán)境、成本、實(shí)現(xiàn)復(fù)雜度等因素選取合適的解決方案。本文主要考慮同一局域網(wǎng)內(nèi),通用流程調(diào)用的思路,側(cè)重于基于Domino 的OA 下,如何快速、經(jīng)濟(jì)地實(shí)現(xiàn)流程調(diào)用。流程調(diào)用的實(shí)踐結(jié)果表明,接口耦合度低,一方系統(tǒng)的不穩(wěn)定不會(huì)影響到對(duì)方系統(tǒng);避免了業(yè)務(wù)工作者在兩個(gè)系統(tǒng)重復(fù)輸入培訓(xùn)計(jì)劃,或應(yīng)用系統(tǒng)開發(fā)上化很多精力調(diào)整系統(tǒng)審批流以適應(yīng)辦公需要;充分利用了OA 系統(tǒng)在流程管理與部門協(xié)同辦公方面的優(yōu)勢(shì),將業(yè)務(wù)審批功能放在OA 系統(tǒng)中進(jìn)行,達(dá)到兩個(gè)系統(tǒng)之間相互支持、各取所長、協(xié)同辦公的目標(biāo)。此設(shè)計(jì)思路也適合于其他系統(tǒng)發(fā)起的審批,但需要注意的一點(diǎn)是,流程調(diào)用的方式需要滿足用戶一致性的條件,也就是,發(fā)送審批的應(yīng)用系統(tǒng)用戶,在OA 系統(tǒng)中也必須存在,且具有發(fā)起審批的權(quán)限。
當(dāng)前的流程調(diào)用實(shí)踐通過Webservice 的方式,從功能實(shí)現(xiàn)的角度看,也可以利用現(xiàn)有的企業(yè)數(shù)據(jù)總線,實(shí)現(xiàn)對(duì)輸入和輸出XML數(shù)據(jù)的傳輸,根據(jù)需要就地取材,節(jié)省開發(fā)成本。如果數(shù)據(jù)傳輸中需要圖片等數(shù)據(jù),也可以考慮架設(shè)FTP 等服務(wù)器的方法擴(kuò)展功能。