張垚 張?zhí)煲弧≡瑤?/p>
摘要:跨終端、多專業(yè)數(shù)字化流程解決方案是公司完全自主研發(fā)的一套業(yè)務(wù)流程數(shù)字化服務(wù)平臺(tái),采用先進(jìn)、成熟的技術(shù)進(jìn)行開發(fā),界面簡(jiǎn)單,人性化強(qiáng),為用戶定制流程界面,同時(shí)具備很強(qiáng)的擴(kuò)展性,快捷部署新增審批流程。同時(shí),移動(dòng)應(yīng)用的推廣使得公司原有流程業(yè)務(wù)的用戶入口不再僅僅局限于局域網(wǎng)內(nèi)的PC端瀏覽器,業(yè)務(wù)流程走入移動(dòng)端,開發(fā)了移動(dòng)版待辦服務(wù)集成在公司移動(dòng)云APP,設(shè)計(jì)了統(tǒng)一業(yè)務(wù)處理接口,提供相關(guān)的數(shù)據(jù)處理服務(wù)進(jìn)行不同終端的數(shù)據(jù)同步,減少了開發(fā)工作和報(bào)錯(cuò)幾率。隨著業(yè)務(wù)的不斷發(fā)展,數(shù)字化流程已覆蓋多個(gè)專業(yè)領(lǐng)域,實(shí)現(xiàn)公司流程的全面數(shù)字化、規(guī)范化管理。
關(guān)鍵詞:跨終端;多專業(yè);統(tǒng)一業(yè)務(wù)處理接口;數(shù)字化流程
中圖分類號(hào):TP311 ? ? ?文獻(xiàn)標(biāo)識(shí)碼:A
文章編號(hào):1009-3044(2019)14-0271-02
1 背景
公司的內(nèi)控制度中包含多個(gè)專業(yè)的業(yè)務(wù)流程,從科技管理到監(jiān)察管理,從人力資源到行政管理,從財(cái)務(wù)管理到信息管理,這些業(yè)務(wù)流程早已成為了公司員工日常工作中的重要組成部分,每年都產(chǎn)生近千份各類流程紙質(zhì)審批單,員工線下跑流程也極大降低了流程流轉(zhuǎn)效率,影響其主業(yè)工作的開展。將紙質(zhì)流程進(jìn)行數(shù)字化搭建,對(duì)推進(jìn)公司無紙化辦公、實(shí)現(xiàn)工作降本增效有著重要意義。
近幾年,為深入貫徹公司數(shù)字化發(fā)展的目標(biāo),實(shí)現(xiàn)公司各類業(yè)務(wù)審批流程的全面數(shù)字化、規(guī)范化管理,各部門所提出的數(shù)字化流程開發(fā)需求逐年增多,所涉及的專業(yè)類別越發(fā)多樣,流程上線急迫的要求與開發(fā)人員稀缺的壓力,需要有更完善的數(shù)字化流程解決方案來應(yīng)對(duì)。
同時(shí),為了提高流程待辦處理效率,滿足公司員工隨時(shí)隨地處理待辦的要求,為員工提供一個(gè)任意時(shí)間、任何地點(diǎn)都可工作的辦公環(huán)境,借助手機(jī)、平板電腦等各類移動(dòng)終端在工作、生活中的廣泛使用,需要實(shí)現(xiàn)數(shù)字化流程的跨終端運(yùn)行。
跨終端、多專業(yè)數(shù)字化流程解決方案的設(shè)計(jì)目標(biāo)是為公司各類業(yè)務(wù)流程提供一整套多種終端都可操作、集流程啟動(dòng)、審批、流轉(zhuǎn)、查詢、統(tǒng)計(jì)、管理、通知、控制等功能于一體的服務(wù)平臺(tái),實(shí)現(xiàn)提高工作效率,規(guī)范公司流程的目的。
2 技術(shù)架構(gòu)
數(shù)字化流程基于JAVA語言進(jìn)行開發(fā),采用ORACLE數(shù)據(jù)庫進(jìn)行數(shù)據(jù)管理,使用WEBLOGIC提供WEB服務(wù),通過JDBC實(shí)現(xiàn)ORACLE低層數(shù)據(jù)庫通信,采用synchroflowBPM流程引擎進(jìn)行流程模型搭建設(shè)計(jì)與流程流轉(zhuǎn)控制管理,使用JQUERY等前沿技術(shù)進(jìn)行功能的制定與完善,同時(shí)使系統(tǒng)功能具備良好的用戶體驗(yàn)效果,利用潤(rùn)乾報(bào)表技術(shù)實(shí)現(xiàn)報(bào)表自動(dòng)生成功能,使用NTKO文檔控件技術(shù)實(shí)現(xiàn)審批單的在線預(yù)覽、下載、填報(bào)、審批等操作,同時(shí)系統(tǒng)也在不斷優(yōu)化,采用POI等后臺(tái)文檔生成技術(shù)進(jìn)行審批單自動(dòng)生成,采用H5等前臺(tái)技術(shù)實(shí)現(xiàn)流程附件批量上傳,移動(dòng)端使用基于AngularJS的混合應(yīng)用UI框架進(jìn)行前端設(shè)計(jì),實(shí)現(xiàn)跨平臺(tái),利用nodeJS設(shè)計(jì)業(yè)務(wù)共享接口與移動(dòng)端對(duì)接。隨著技術(shù)上的不斷創(chuàng)新,功能上的不斷優(yōu)化,系統(tǒng)的穩(wěn)定性、健壯性、可操作性也不斷提升,實(shí)現(xiàn)了用戶需求和業(yè)務(wù)變更的快速響應(yīng)與實(shí)現(xiàn)。
3 一整套完善的搭建模式
公司數(shù)字化流程已正式運(yùn)行了3年多時(shí)間,隨著業(yè)務(wù)范圍的不斷擴(kuò)展,系統(tǒng)功能的不斷升級(jí)和優(yōu)化,數(shù)字化流程已覆蓋了越來越多的專業(yè)領(lǐng)域,系統(tǒng)功能越發(fā)完備,流程中的各項(xiàng)完善服務(wù)對(duì)系統(tǒng)提供了有效支持,基于工作流模型的統(tǒng)一標(biāo)準(zhǔn),結(jié)合流程實(shí)際的業(yè)務(wù)需求,對(duì)流程生命周期中所衍生的相關(guān)功能進(jìn)行迭代開發(fā),形成了一整套完整的數(shù)字化流程搭建模式,新流程的開發(fā)基本跳不出現(xiàn)有數(shù)字化流程的服務(wù)體系,能夠?qū)崿F(xiàn)全方位的功能覆蓋,使其能夠快速被搭建,持續(xù)交付并穩(wěn)定運(yùn)行。
圖1
流程搭建模式涵蓋工作流模型搭建、頁面模版式開發(fā)、基礎(chǔ)數(shù)據(jù)維護(hù)管理、流程信息檢索模塊、報(bào)表服務(wù)、審批單自動(dòng)生成技術(shù)、郵件系統(tǒng)、電子簽名服務(wù)、流程監(jiān)控服務(wù)、文檔批量上傳技術(shù)等完善的流程要素,滿足公司流程的全面數(shù)字化、規(guī)范化管理。
工作流模型:synchroflowBPM工作流引擎服務(wù),實(shí)現(xiàn)模型可視化管理,對(duì)工作流實(shí)例以及全局變量進(jìn)行管控。
流程節(jié)點(diǎn):模版化定制開發(fā),按照節(jié)點(diǎn)類型,利用JSP+主流前臺(tái)UI框架,定制代碼級(jí)頁面模版,提高開發(fā)效率。
工作待辦:與公司門戶網(wǎng)站集成,通過郵件服務(wù)接口實(shí)現(xiàn)提醒功能,并部署移動(dòng)端審批應(yīng)用。
流程審批單:利用POI后臺(tái)文檔生成技術(shù),根據(jù)書簽位置自動(dòng)寫入信息,用戶一鍵生成。
統(tǒng)計(jì)報(bào)表:使用潤(rùn)乾報(bào)表服務(wù)組件,實(shí)現(xiàn)報(bào)表模型可視化,開發(fā)了報(bào)表服務(wù)接口,可生成多種類型報(bào)表。
電子簽名:開發(fā)電子簽名服務(wù)接口,自動(dòng)獲取用戶簽字圖片,獲取速度快捷。
大附件批量上傳:利用H5技術(shù)開發(fā)大附件批量上傳組件,實(shí)現(xiàn)可視化進(jìn)度條。
通用基礎(chǔ)數(shù)據(jù)維護(hù):包括權(quán)限、功能點(diǎn)、人員、各類流程基礎(chǔ)數(shù)據(jù)的全面控制。
業(yè)務(wù)流程共享接口服務(wù):同步移動(dòng)端與PC端的業(yè)務(wù)服務(wù),實(shí)現(xiàn)流程業(yè)務(wù)與移動(dòng)云對(duì)接。
混合應(yīng)用UI框架:移動(dòng)端的前端開發(fā)框架,原生輕量級(jí)框架,實(shí)現(xiàn)跨平臺(tái)終端。
4 業(yè)務(wù)流程共享接口
移動(dòng)互聯(lián)網(wǎng)技術(shù)不斷發(fā)展,使得人們對(duì)移動(dòng)辦公的需求越來越旺盛。通過手機(jī)、平板電腦等掌上智能終端,實(shí)現(xiàn)企業(yè)信息移動(dòng)化,最終達(dá)到隨時(shí)隨地進(jìn)行隨身的移動(dòng)化信息工作目的。公司數(shù)字化流程響應(yīng)移動(dòng)互聯(lián)的建設(shè)要求,著手開發(fā)移動(dòng)終端審批流程,形成一套針對(duì)公司所有數(shù)字化流程的移動(dòng)應(yīng)用開發(fā)、部署的技術(shù)解決方案。
其中最大的問題是公司業(yè)務(wù)流程源自公司內(nèi)控制度,制度在運(yùn)行過程中是不斷地修訂與完善,勢(shì)必會(huì)經(jīng)常對(duì)系統(tǒng)中的業(yè)務(wù)相關(guān)功能進(jìn)行修改與優(yōu)化,而PC端與移動(dòng)端所部署的站點(diǎn)不同,PC端是公司獨(dú)立的單體應(yīng)用系統(tǒng),而移動(dòng)端是基于公司移動(dòng)云應(yīng)用的流程辦理平臺(tái),屬于兩套系統(tǒng),如何使移動(dòng)平臺(tái)拿到PC端系統(tǒng)的業(yè)務(wù)邏輯,以及如何將這兩套系統(tǒng)的業(yè)務(wù)邏輯實(shí)現(xiàn)同步是個(gè)大難題。
提出方案:開發(fā)一個(gè)中間層,設(shè)計(jì)公司業(yè)務(wù)流程共享接口,按照移動(dòng)端的標(biāo)準(zhǔn)接口規(guī)范,實(shí)現(xiàn)對(duì)外接口和對(duì)內(nèi)接口,分別與移動(dòng)應(yīng)用和公司流程進(jìn)行無縫對(duì)接,打開內(nèi)外通道,使內(nèi)部業(yè)務(wù)邏輯直接為外部應(yīng)用系統(tǒng)提供服務(wù)。
設(shè)計(jì)思路:參考已有的WEB服務(wù)接口的格式規(guī)范,評(píng)價(jià)各個(gè)規(guī)范是否滿足公司數(shù)字化流程共享接口的需求,并制定合理的數(shù)據(jù)傳輸標(biāo)準(zhǔn);通過接口接收移動(dòng)平臺(tái)的數(shù)據(jù)請(qǐng)求,把數(shù)據(jù)封裝成公司現(xiàn)有在線業(yè)務(wù)邏輯所能接收的格式,向業(yè)務(wù)邏輯層提交數(shù)據(jù),封裝業(yè)務(wù)邏輯返回的結(jié)果,發(fā)送移動(dòng)平臺(tái)進(jìn)行響應(yīng);同時(shí),使用公司業(yè)務(wù)流程共享接口的請(qǐng)求必須在請(qǐng)求中加入令牌,才可以使用WEB服務(wù)接口。
技術(shù)路線:封裝通用性高的應(yīng)用服務(wù),迭代開發(fā)特殊的功能,使用螺旋上升式的軟件開發(fā)模式[1],設(shè)計(jì)分布式的組件化軟件構(gòu)架。對(duì)外接口的研發(fā)基于Node.js,提供了5個(gè)對(duì)外接口,實(shí)現(xiàn)了一種統(tǒng)一輸入規(guī)范的業(yè)務(wù)邏輯調(diào)用方式;對(duì)內(nèi)接口的研發(fā)基于Java EE研發(fā),對(duì)公司在線系統(tǒng)業(yè)務(wù)邏輯進(jìn)行合理抽象,并提供了3個(gè)低粒度對(duì)內(nèi)應(yīng)用程序接口;文檔的處理基于.NET Framework,研發(fā)了一個(gè)支持輸入DOC或DOCX文檔,輸出相應(yīng)的簽字文檔的Web 服務(wù)。
5 自適應(yīng)UI+分布式架構(gòu)的服務(wù)體系
公司數(shù)字化流程的發(fā)展也經(jīng)歷了從小到大,從少到多,從簡(jiǎn)單到復(fù)雜,從單一到多樣的過程,最初的數(shù)字化流程,應(yīng)用程序、數(shù)據(jù)庫、文件等所有的資源都在一臺(tái)服務(wù)器上,匯集一些免費(fèi)開源軟件和一臺(tái)虛擬機(jī)服務(wù)器就可以開始提供流程服務(wù),隨著業(yè)務(wù)的增長(zhǎng),技術(shù)的發(fā)展,訪問量的增加,用戶體驗(yàn)要求的提升,以及移動(dòng)設(shè)備走入工作環(huán)境,逐漸發(fā)展為多種終端UI體驗(yàn),以豐富的服務(wù)接口為支撐,多個(gè)子系統(tǒng)為業(yè)務(wù)平臺(tái)的分布式服務(wù)體系。將數(shù)字化流程按業(yè)務(wù)進(jìn)行縱向拆分,將一個(gè)大應(yīng)用拆分為多個(gè)小應(yīng)用,形成了多個(gè)較為獨(dú)立的子系統(tǒng)進(jìn)行流程管理,技術(shù)上進(jìn)行橫向拆分,將可復(fù)用的業(yè)務(wù),設(shè)計(jì)成服務(wù)接口,規(guī)范服務(wù)依賴關(guān)系,實(shí)現(xiàn)業(yè)務(wù)功能大分工,數(shù)據(jù)分離,存取分離,服務(wù)分離,應(yīng)用級(jí)負(fù)載均衡[2]。目前已有多個(gè)獨(dú)立的服務(wù)實(shí)現(xiàn)分布式,如電子簽名服務(wù)、文檔生成組件、工作流服務(wù)、郵件服務(wù)、報(bào)表服務(wù)、系統(tǒng)監(jiān)控等。
同時(shí),用戶終端類型的豐富,也對(duì)不同終端的UI展示提出了兼容性的要求,為使相同的前端展示在不同的終端下都有良好的用戶體驗(yàn),提出了自適應(yīng)UI設(shè)計(jì),利用響應(yīng)式UI與前端彈性框架的設(shè)計(jì),僅用一套用戶界面即可在不同終端正常顯示,減少了開發(fā)與維護(hù)的工作量,使用戶可在多種終端下實(shí)現(xiàn)良好的UI體驗(yàn)。
公司數(shù)字化流程經(jīng)過多年的發(fā)展,已逐步形成自適應(yīng)UI+分布式架構(gòu)的服務(wù)體系,能夠更好地應(yīng)對(duì)公司未來越來越多的復(fù)雜業(yè)務(wù)流程。
6 總結(jié)
跨終端、多專業(yè)數(shù)字化流程解決方案是完全自主研發(fā)的公司業(yè)務(wù)流程數(shù)字化服務(wù)平臺(tái),具有完全自主知識(shí)產(chǎn)權(quán),從2014年首批內(nèi)控流程上線以來已使用4年多的時(shí)間,管理流程已達(dá)126個(gè),啟動(dòng)流程近90000次,涉及專業(yè)包括了內(nèi)部監(jiān)督、財(cái)務(wù)管理、科技管理、人力資源、行政綜合、黨工團(tuán)管理、信息化管理、物資與采辦、法律管理、保密管理等;按照業(yè)務(wù)類型的不同,搭建了十多個(gè)子系統(tǒng)管理流程,對(duì)公司的流程數(shù)字化管理起到了很好的支撐作用。
參考文獻(xiàn):
[1] 周揚(yáng). 軟件開發(fā)過程模型的應(yīng)用與發(fā)展[J]. 電子制作, 2014(19): 54-55.
[2] 張俊鴻. 深入理解java:5. Java分布式架構(gòu)[EB/OL]. https://www.cnblogs.com/my376908915/p/6813321.html.
【通聯(lián)編輯:謝媛媛】