曹波
【摘? 要】為提升工作流管理系統開發水平,論文選取面向服務架構SOA作為研究工具,提出基于SOA的工作流管理系統設計及應用研究。通過分析傳統工作流管理系統存在的問題,明確系統改進需求,按照SOA架構工作原理,設計系統模型。在某五金塑膠加工制造數字化項目管理系統開發應用中,根據產品制造管理需求,設計項目管理業務流程,按照系統邏輯架構,開發系統多個模塊,形成了完整的項目工作流管理系統。
【Abstract】In order to improve the development level of workflow management system, this paper selects service-oriented architecture SOA as the research tool, and proposes the design and application research of SOA-based workflow management system. By analyzing the existing problems of traditional workflow management systems, clarifying the system improvement requirements, and designing the system model in accordance with the working principle of the SOA architecture. In the development and application of a metal and plastic processing and manufacturing digital project management system, according to the requirements of product manufacturing management, the project management business process was designed, and the system logic architecture was used to develop multiple modules of the system to form a complete project workflow management system.
【關鍵詞】工作流;面向服務架構;管理系統;SOA架構
【Keywords】workflow; service-oriented architecture; management system; SOA architecture
【中圖分類號】TP311.5;TP311.1? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?【文獻標志碼】A? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?【文章編號】1673-1069(2021)06-0168-04
1 引言
信息時代的到來,為企業業務管理提供了便利條件,在一定程度上提高了企業業務流程管理(BPM,business process management)水平[1]。面對業務流程的不斷變化,加大了對業務流程管理的需求,急需采取一定處理措施,使得企業后端與BPM得以融合,彌補BPM固化處理業務的不足,通過建立服務架構,實現業務邏輯與信息的共享[2]。面向服務架構(SOA,service-oriented architecture)剛好滿足需求,所以本文選取此架構作為工作流管理系統改進研究工具,提出新的工作流管理系統設計方案,探究具體應用方法[3]。
2 傳統工作流管理系統的局限性及改進需求
2.1 傳統工作流管理系統應用局限性
為使企業業務管理更加規范,建立流程化管理體系,提升企業管理效率,避免信息孤立,我國業務管理學者提出了工作流模型。傳統模型將各個部門工作涉及的信息集中到一起,為用戶使用或者查閱提供便利條件[4]。隨著業務量和合作要求的增加,這種模型在應用中暴露出局限性問題。
第一,互操作性能薄弱。傳統模型應用中,支持工作流執行期間的部分服務管理,管理覆蓋面不全面,導致缺少控制數據,無法共享所有業務數據信息[5]。第二,不支持異構環境的工作流分布。傳統模型在局域網中應用較多,不支持Internet網絡,這與企業辦公業務流管理發展方向不符。第三,缺少動態建模功能。傳統模型采用靜態定義方法,對所需資源和執行期間的信息進行設定,并將模型的執行和定義拆分開來,對執行方案采取實例化處理,而后按照定義開始實施工作流管理[6]。如果在執行期間,某處資源發生了改變,此模式無法及時調整工作流。
2.2 工作流管理系統改進需求
當前企業對于工作流管理的需求,應該是可以支持不同環境下的運行,可以根據服務內容的變更,及時調整工作流管理方案[7]。在科學技術快速發展的時代背景下,選取一種應用程序體系結構的管理工具顯得尤為重要,利用此項工具調整工作流管理體系,建立獨立服務模塊。如果某一項業務流程需要調整,不會影響到其他流程的正常作業[8]。為滿足這些需求,本文提出了SOA技術應用研究,利用此項技術,調整工作流管理體系結構,提高管理系統的安全性能和服務質量。
3 SOA面向服務架構
3.1 SOA概述
SOA指的是一種支持獨立服務的程序體系結構,該結構布設了多個接口,各個接口均具有可調用特性,與平臺的硬件平臺連接,實現業務流程管理信息交流[9]。該體系結構在管理系統開發中的應用,根據業務服務需求,為各項業務編號,從而實現業務流程有序化管理。另外,SOA架構內部設置了松耦合模塊,支持不同環境的業務流程運行。當業務指標發生變化、企業合作伙伴關系發生變動等情況發生,該架構都可以根據業務變化情況,在短時間內更新管理體系,以滿足任務執行修改需求[10]。
3.2 SOA協議棧
SOA架構是以按需業務流程的管理為管控對象,根據業務管理需求,調整任務執行流程,從而實現預期工作流管理目標。Web服務作為SOA技術的應用基礎,在應用此項技術開展工作流管理工作時,應該以Web服務技術體系設定SOA標準和協議。按照此項要求,SOA協議棧如下:
按照功能不同,可以將SOA協議規范劃分為5個模塊,分別是UDDI、BPEL、SOAP、WSDL、HTTP、FTP、SMTP 7種協議規范。其中,HTTP、FTP、SMTP 3種協議規范實現的功能相同,即對消息傳輸協議進行限定;UDDI規范是對服務的發布進行管理,同時挖掘業務推行中存在的問題及特點;BPEL規范是對業務服務方式進行管理,要求將多項服務聚集到一體,按照服務先后順序不同,制定為業務推行流程;SOAP規范建立在XML基礎上,對不同業務服務消息進行管理;WSDL協議是對服務的詳細描述,通過設定服務標準,對工作流內容和管理方式進行進一步限定[11]。以上所有協議規范都是為工作流的管理、服務質量和安全奠定基礎。
3.3 SOA與工作流系統的結合
為充分發揮SOA在工作流管理中的作用,本研究對SOA中的獨立服務進行排序,按照先后順序進行調整,同時分析各個服務任務之間的關聯關系,將SOA架構貫穿于工作流體系中,形成完整的工作流管理架構。這種結合模式開發優點如下:①采用結合開發模式,在異構環境下部署業務流程,以此擴大管理系統應用范圍。此系統開發方法是以Web作為系統開發工具,對工作流采取封裝處理,從而打破工作流在局域網中管理應用的束縛。②加強流程管理操作性。以Web服務作為封裝結果,對工作引擎采取處理,建立復雜協作關系,打造工作請求——工作響應管理機制,實現多廠商之間的協調管理[12]。③支持工作重組。通過對應用程序采取封裝處理,得到多個獨立的服務。根據工作流執行需求,按照業務邏輯關系,重新組合服務業務,使得系統可以適應不同業務需求的工作流管理。
4 基于SOA架構的工作流管理系統設計
4.1 基于SOA架構的工作流管理系統模型
SOA架構在管理系統開發中的應用,支持多項管理功能開發,彌補了傳統工作流管理局限性不足的問題。本研究在原有的工作流管理架構基礎上進行了改進,按照SOA架構體系,調整過程定義工具,添加工作流數據庫,創建不同流程管理功能模塊,借助UDDI模塊,實現服務查找與執行、服務信息發布,通過Web服務接口,實現工作流服務模塊與提供服務業務模塊之間的通訊連接。圖1為基于SOA架構的工作流管理系統模型。
圖1中的系統模型以面向服務為工作流管理特性,通過建立Web通信接口,實現多個工作流引擎交互,經過封裝處理,向用戶提供高質量服務。該模型執行服務模塊可以是一個工作流引擎,也可以是多個工作流引擎。系統運行期間,根據服務業務工作流執行需求,調用應用程序,向其他工作流引擎發送本流程,從而建立各個業務流程之間的互操作關系,完成操作銜接。
考慮到業務流程環境為異構環境,為滿足此環境下的互操作需求,需要建立一套支持信息共享的控制數據管理模塊。該管理模塊選取業務流程執行語言(BPEL,business process execution language)作為建模工具,依據Web服務需求,編寫相應流程的執行程序,從而完成多項類型服務活動。本系統模型支持復雜工作流執行服務,采用上述方法建立多個流程以后,再將這些流程連接到一起,形成復雜的工作流執行體系。
4.2 基于SOA架構的業務流程集成
4.2.1 面向服務的系統封裝機制
本系統由3個封裝機制組成,這些機制均具有抽象特性:①操作。該機制可以運用面向對象程序來理解,利用程序方法進行描述。一般情況下,執行操作會導致數據改變,可以是一個數據,也可以是多個數據,采取修改、寫、讀等手段破壞數據的持久性。系統中,用組件或者應用程序來定義操作。②服務。該機制可以看作邏輯分組手段,根據操作需求,將具有一定關聯關系的操作封裝起來,組成操作集合。其中,各項操作具有獨立特性,在為用戶提供某項服務期間,無需等待當前操作結束后再開始,而是同時推進,按照業務邏輯關系,從數據庫中調用操作,重新組合即可。③流程。該機制指的是將流程發布轉換為借助Web平臺服務業務的發布,通過建立訪問通道,為用戶訪問業務提供了便利條件,加強了相互合作。不僅如此,此項機制的應用不局限于企業內部的業務流程的管理,能夠根據合作需求,跨公司建立訪問通道,將當前工作流設置為子工作流,采用嵌入處理方法,調整工作流結構。
4.2.2 系統服務調用機制
系統服務支持異步調用和同步調用2種方式,根據工作流任務執行時間需求,合理選取服務調用模式。如果執行時間比較急,則選取異步調用模式。服務調用主要操作步驟為:描述服務內容→發送服務請求→綁定服務操作→執行服務。一般情況下,將Web服務的實現與發布劃分為2種類型。其中一種類型為UDDI注冊,另外一種類型為靜態發現。用戶在申請Web服務期間,根據操作便捷需求,從2種途徑中選取1種。第一種途徑為以此項服務的描述語言文件作為開發工具,搜尋相關服務信息,另外一種途徑為采取UDDI注冊方式獲取詳細信息。利用得到的信息訪問Web服務接口,按照訪問協議,將編寫好的服務請求發送接口服務器,通過審核后調用數據庫,向用戶提供相應服務,開啟工作流管理模式。
5 SOA架構在科技項目管理系統開發中的應用
本文以某五金塑膠加工制造數字化項目為例,對SOA架構在項目管理系統中的開發應用展開研究,依據項目加工制造管理需求,設計項目管理業務流程、項目審批過程、系統邏輯架構。另外,按照系統功能不同,分別對各個功能模塊進行設計分析。
5.1 科技項目管理系統簡介
某五金塑膠加工制造數字化項目管理系統,是根據產品數字化制造需求,對產品制造環節加以管理,嚴格按照合同規定實施項目,要求工作流程與產品加工流程保持一致。利用數字化管理技術,簡化產品制造流程,以此提高制造效率。為提高產品制造管理水平,本系統著重強調了工作流執行審核環節,在此環節加強對項目管理方案的審核,從而提高方案可行性?;谏鲜鲩_發需求,本研究選取SOA架構作為系統開發工具,建立工作流引擎網絡體系,通過Web終端向用戶提供相應服務。
5.2 項目管理業務流程
關于五金塑膠加工制造數字化項目管理的業務流程,主要由6部分組成,采用活動節點連接方式描述,結構如圖2所示。
①項目申報:該項活動是項目管理的第一步,根據五金塑膠產品制造需求,擬定制造方案,并提交方案可行性報告等材料,申請產品制造機會。②項目審批:該項活動是項目管理的關鍵步驟,按照產品制造要求,判斷當前提交材料是否達到制造標準。如果達到標準,則審核通過,反之,對于當前制造材料申請不給予通過。③合同管理:該項活動是雙方建立合作關系的重要步驟,需要在合同中體現彼此的要求和能力,使得雙方的權益得到保障。④項目實施:該項活動是產品制造環節的描述,以合同標準作為活動執行依據,按照活動服務內容的先后順序開始實施。⑤項目驗收:該項活動是對項目實施成果的檢驗,以合同要求標準作為驗收依據,仔細排查五金塑膠產品制造是否符合質量要求,并生成檢驗報告。⑥成果推廣與專利管理:這2項業務并行執行,完成項目驗收活動以后,為本項目申請專利,并對專利加以維護管理的同時,將項目執行得到的成果推廣出去,讓更多人知曉本產品制造成果,為企業品牌樹立提供幫助。
5.3 項目審批過程
項目審批作為項目管理工作流的關鍵步驟,在很大程度上決定了接下來的產品制造是否可以順利開展。因此,本系統強調了項目審批過程,以科技管理科為首,對項目進行初審,經過一系列復審和修改,最終生成可行性較高的產品制造方案。圖3為項目審批過程圖。
圖3中,由科技管理科負責項目初審,如果符合產品制造要求,則將此部分材料發送給總公司,由五金塑膠數字化加工制造高級技術人員,對項目方案進行復審。反之,返回下級單位,根據初審意見,修改項目計劃方案。假如本項目方案通過了復審,則將材料發送給總公司經理,由總經理決定是否使用此方案。反之,告知下級單位,當前提交的項目方案未通過復審,需要根據要求修改計劃,修改后再次提交審核。如果總公司經理認可項目計劃,則系統輸出“項目計劃通過審核”,反之,要求下級單位按照總經理給出的修改意見,調整項目計劃書,修改后再次提交審核。在此期間,如果其中任何一個環節的審核結果顯示“項目計劃不給予使用”,則表示對當前方案全部否定,不給予修改再提交的機會。
5.4 系統邏輯架構
為提高產品制造管理水平,本研究利用SOA架構,建立了工作流管理系統邏輯架構,使得產品制造管理具有較強的邏輯性,相互交換工作流引擎情況下,實現面向服務的智能化管理。圖4為系統邏輯架構。
圖4中,該架構是以Web瀏覽器作為系統用戶客戶端,與本地/Web服務端口建立通信連接,選擇相應功能開啟各項功能服務模式,通過建立工作流引擎網絡體系,在此環境下執行服務。位于最底層的是數據庫,為工作流執行提供相關數據。
5.5 系統模塊設計
按照系統邏輯架構,將系統拆分為4個模塊,分別對各個模塊的組成和功能進行設計。
①客戶端。該模塊指的是Web瀏覽器,作為人機交互的端口。②本地/Web服務。該模塊是面向對象服務的應用板塊,根據用戶操作需求,為用戶提供文檔管理、數據維護等服務。③工作流執行環境。該模塊是服務執行環境,利用監控工具、管理工具,在當前環境中推行工作流,從而實現產品制造操作的有序進行。④數據庫。該模塊是項目管理系統運行的支撐點,通過為系統提供業務數據和工作流數據,使得系統運行有據可依,按照數據關聯關系,加強產品制造設備作業的限制,使得制造操作更加精準化、有序化。
6 結語
本文選取面向服務架構SOA作為研究工具,探究工作流管理系統的設計方法。通過分析傳統工作流管理系統存在的問題,明確系統改進需求,將SOA架構應用至系統開發中,設計工作流管理系統模型。其中,系統業務流程集成采用了封裝機制和調用機制。為深入探究系統開發方案,本文以某五金塑膠加工制造數字化項目為例,設計基于SOA的管理系統,在邏輯架構、系統模塊、管理業務流程設計中展示面向服務架構的應用方法。
【參考文獻】
【1】李亞凱,沈彥,周一軍.基于SOA和柔性制造技術的生產調度系統[J].組合機床與自動化加工技術,2019(11):156-160.
【2】劉洪.基于服務組件的電子文件管理系統的對策研究[J].北京檔案,2018(8):32-34.
【3】張國亮,王鈺,王展妮,等.面向松耦合服務的機器人集成框架及應用研究[J].小型微型計算機系統,2018,39(4):651-656.
【4】張宇,吳文周,王琦,等.面向服務架構的南海地理信息決策模擬系統功能設計與實現[J].海洋環境科學,2018,37(1):137-142.
【5】葉蔚,常青,楊芳.基于虛擬化的移動應用架構研究和設計[J].計算機工程與設計,2019,40(2):292-297.
【6】陳甦欣,謝正瑩.基于SCADA系統的代理型MES架構研究[J].組合機床與自動化加工技術,2018(8):171-173.
【7】李莉,王建國,余文泉,等.基于服務化體系架構的嵌入式軟件研究與應用[J].火力與指揮控制,2019,44(11):180-185.
【8】李鵬,楊斌,劉怡諾,等.基于工作流的“農校對接”采購管理系統設計與實現[J].河北農業大學學報:農林教育版,2018,20(2):103-106.
【9】馬旭穎,張智勇,高德華,等.基于云服務架構的田間信息采集與分析系統設計[J].農業機械學報,2019,50(1):129-134.
【10】王璐,史志釗,史兆明.基于模型的懸掛物管理系統工程研究與應用[J].電光與控制,2018,25(4):101-105.
【11】王贊,陳光,董曉,等.基于工業互聯網的智慧能源服務系統架構研究[J].電力系統保護與控制,2020,48(3):77-83.
【12】李浩,陶飛,文笑雨,等.面向大規模個性化的產品服務系統模塊化設計[J].中國機械工程,2018,29(18):2204-2214.