張易成
摘要:為了能夠更好地設(shè)計(jì)實(shí)現(xiàn)具體企業(yè)在各種分布式異構(gòu)業(yè)務(wù)環(huán)境系統(tǒng)中的具體業(yè)務(wù)流程,滿(mǎn)足具體企業(yè)基于云和互聯(lián)網(wǎng)的業(yè)務(wù)管理和加強(qiáng)企業(yè)間業(yè)務(wù)協(xié)作的基本需求,提出了基于SOA管理架構(gòu)的工作流業(yè)務(wù)管理信息系統(tǒng)。本文指出了目前現(xiàn)有工作流業(yè)務(wù)管理信息系統(tǒng)的各種局限性,分析了基于SOA與工作流業(yè)務(wù)管理信息系統(tǒng)的各種可能和組合性,提出了基于SOA管理架構(gòu)的工作流業(yè)務(wù)管理信息系統(tǒng)設(shè)計(jì)模型,闡述了基于SOA的具體業(yè)務(wù)流程及其集成管理機(jī)制。以具體企業(yè)信息科技管理項(xiàng)目業(yè)務(wù)管理信息系統(tǒng)設(shè)計(jì)為主范例,討論如何將基于SOA的工作流管理技術(shù)概念應(yīng)用于具體企業(yè)管理項(xiàng)目信息系統(tǒng)的設(shè)計(jì)開(kāi)發(fā)。
關(guān)鍵詞:面向服務(wù)架構(gòu);工作流;Web服務(wù);業(yè)務(wù)流程執(zhí)行語(yǔ)言;管理信息系統(tǒng)
一、SOA概述
SOA是一種服務(wù)器構(gòu)架,在這個(gè)構(gòu)架中,所有的特征也被界定為獨(dú)立的服務(wù),這些服務(wù)具備定義明確的可調(diào)用接口,獨(dú)立于促成它的操作系統(tǒng)、操作系統(tǒng)或者編程語(yǔ)言。按照定義的順序調(diào)用以形成流程。
SOA為松散耦合的系統(tǒng)提供支持,鑒于SOA的服務(wù)器可以滿(mǎn)足一直變化的壞境,比如頻繁變化的謀略、業(yè)務(wù)級(jí)別、業(yè)務(wù)優(yōu)先級(jí)、合作伙伴關(guān)系、行業(yè)狀態(tài)及其余與業(yè)務(wù)相關(guān)的要素,SOA的最終目標(biāo)是促成按照需要業(yè)務(wù),按照需要業(yè)務(wù)可以依據(jù)應(yīng)該對(duì)于完成或者執(zhí)行具體任務(wù)的形式展開(kāi)必要的變更。Web服務(wù)是SOA的技術(shù)根底,促成SOA的協(xié)議及規(guī)范合乎Web服務(wù)技術(shù)指標(biāo)體系。SOA協(xié)議棧是一種分層框架結(jié)構(gòu),相似于OSIRM網(wǎng)絡(luò)平臺(tái)的7層框架結(jié)構(gòu)。協(xié)議棧的左列顯示了SOA的基本功能層及各個(gè)層選用的協(xié)議標(biāo)準(zhǔn),右欄與構(gòu)架的服務(wù)水平及安全方面有關(guān)。
二、傳統(tǒng)工作流管理系統(tǒng)的局限性
1.互操作性不佳
工作流管理聯(lián)盟界定了工作流系統(tǒng)間的互操作性分析模型,該類(lèi)分析模型只能支持在不同工作流執(zhí)行服務(wù)間傳達(dá)的業(yè)務(wù)流程子集,使所有工作流引擎描述同一業(yè)務(wù)流程分析模型是無(wú)法促成的。工作流控制數(shù)據(jù)集無(wú)法更好地支持不同供應(yīng)商提供的工作流引擎之間的復(fù)雜協(xié)作。
2.不具有動(dòng)態(tài)建模能力
工作流業(yè)務(wù)流程建模技術(shù)設(shè)備提供了業(yè)務(wù)流程定義及業(yè)務(wù)流程執(zhí)行間的別離,業(yè)務(wù)流程信息內(nèi)容及所需教育資源在業(yè)務(wù)流程定義中靜態(tài)指定,業(yè)務(wù)流程案例化后,業(yè)務(wù)流程完全依照定義運(yùn)行。然而,在業(yè)務(wù)流程執(zhí)行的過(guò)程中,流程或它所應(yīng)該的教育資源常常能發(fā)生變化,工作流系統(tǒng)能及時(shí)響應(yīng)這些變動(dòng),比如動(dòng)態(tài)抉擇應(yīng)該調(diào)用的服務(wù)器應(yīng)該去做。
3.缺乏對(duì)分布異構(gòu)環(huán)境的支持
現(xiàn)有工作流管理系統(tǒng)的應(yīng)用環(huán)境主要是服務(wù)器,但是如今公司經(jīng)營(yíng)規(guī)模及經(jīng)營(yíng)范圍已擴(kuò)大到互聯(lián)網(wǎng)。底層軟件平臺(tái)可能不同,阻礙了煤炭企業(yè)在流程中的協(xié)作。
三、SOA架構(gòu)的工作流管理系統(tǒng)模型
考慮到在工作流信息管理軟件系統(tǒng)的整體設(shè)計(jì)中直接引入一套SOA軟件是可行的,以及設(shè)計(jì)有助于有效改善公司現(xiàn)有工作流信息管理軟件系統(tǒng)的各種功能局限性,對(duì)公司現(xiàn)有的工作流信息管理軟件系統(tǒng)設(shè)計(jì)架構(gòu)軟件進(jìn)行了設(shè)計(jì)改進(jìn),提出了基于SOA軟件架構(gòu)的工作流信息管理軟件系統(tǒng)設(shè)計(jì)模型。
工作流服務(wù)執(zhí)行管理服務(wù)由一個(gè)或多個(gè)工作流服務(wù)引擎接口組成,提供一個(gè)流程流自定義服務(wù)接口以自動(dòng)獲取每個(gè)流程流的定義,并通過(guò)每個(gè)執(zhí)行服務(wù)接口自動(dòng)調(diào)用整個(gè)應(yīng)用程序。
Web 服務(wù)業(yè)務(wù)流程執(zhí)行語(yǔ)言(BPEL)規(guī)范工具。BPEL 可用于描述可以完成任務(wù)的各種活動(dòng),例如調(diào)用 Web 服務(wù)、操作數(shù)據(jù)、引發(fā)錯(cuò)誤或終止流程,并且可以鏈接以創(chuàng)建復(fù)雜的流程。
四、基于SOA的業(yè)務(wù)流程集成
1.面向服務(wù)的封裝機(jī)制
⑴操作:具體實(shí)現(xiàn)與面向?qū)ο蟪绦蛳嗤话銇?lái)說(shuō),執(zhí)行一個(gè)操作都會(huì)讀取、寫(xiě)入或修改一個(gè)或多個(gè)持久化數(shù)據(jù)。任務(wù)允許在系統(tǒng)中實(shí)現(xiàn)更簡(jiǎn)單的應(yīng)用程序或組件。
⑵服務(wù): 代表一組邏輯操作,主要用作封裝一組互相關(guān)聯(lián)的操作。比如,業(yè)務(wù)流程活動(dòng)可以當(dāng)作獨(dú)立的服務(wù)來(lái)實(shí)現(xiàn),因此當(dāng)一個(gè)業(yè)務(wù)流程發(fā)生變化時(shí)候,不必像以前一樣重新開(kāi)發(fā)業(yè)務(wù)流程的某個(gè)部分的實(shí)現(xiàn),而抉擇及重新配置那些服務(wù)。
⑶流程: 將業(yè)務(wù)流程公布為Web服務(wù)促使業(yè)務(wù)管理合作伙伴能夠登錄她們自身的流程及更好的協(xié)作,也可以將它們作為子工作流包含在其他大規(guī)模工作流中,以實(shí)現(xiàn)跨企業(yè)的業(yè)務(wù)流程集成。
2.服務(wù)的調(diào)用機(jī)制
依據(jù)工作流中具體任務(wù)的緊急程度及復(fù)雜度,服務(wù)調(diào)用可以分成同步及異步兩種。比如,用戶(hù)認(rèn)證服務(wù)應(yīng)該依據(jù)用戶(hù)輸出立刻響應(yīng),所以再舉一個(gè)服務(wù)調(diào)用的例子需要同步的文件審查通常需要多人才能完成,有時(shí)需要幾天時(shí)間,在這種情況下,可以使用對(duì)服務(wù)的異步調(diào)用。
服務(wù)調(diào)用采用基于 HTTP 的請(qǐng)求-響應(yīng)模型。在這種服務(wù)請(qǐng)求同步或者數(shù)據(jù)處理調(diào)用中的服務(wù)同步模式下,服務(wù)請(qǐng)求響應(yīng)消息請(qǐng)求者向一個(gè)不同服務(wù)處理請(qǐng)求者和提供者響應(yīng)用戶(hù)同時(shí)發(fā)送一個(gè)服務(wù)處理請(qǐng)求或者響應(yīng)用戶(hù)消息,提供者響應(yīng)用戶(hù)同時(shí)處理一個(gè)服務(wù)響應(yīng)請(qǐng)求后,向一個(gè)服務(wù)處理請(qǐng)求者響應(yīng)用戶(hù)同時(shí)發(fā)送一個(gè)服務(wù)請(qǐng)求響應(yīng)消息請(qǐng)求相關(guān)消息。在請(qǐng)求被處理之前,請(qǐng)求者被置于等待響應(yīng)的狀態(tài)。在異步調(diào)用模式下,服務(wù)請(qǐng)求者發(fā)送請(qǐng)求并繼續(xù)執(zhí)行其工作,無(wú)需等待響應(yīng)。服務(wù)提供商可以花費(fèi)更較長(zhǎng)的時(shí)間來(lái)處理懇求而是在處理完成之后將響應(yīng)返回給請(qǐng)求者。
五、基于SOA的工作流管理系統(tǒng)的應(yīng)用
通過(guò)剖析科學(xué)技術(shù)建設(shè)項(xiàng)目管理系統(tǒng)原型的各功能模塊,搜集對(duì)于新系統(tǒng)的需求,可以決定是否將鑒于SOA的工作流分析模型應(yīng)用到新系統(tǒng)的設(shè)計(jì)及開(kāi)發(fā)中,方法論上及技術(shù)設(shè)備上也是可行的。
1.系統(tǒng)應(yīng)具備科技立項(xiàng)、立項(xiàng)、合同管理、項(xiàng)目執(zhí)行、立項(xiàng)、履約、專(zhuān)利管理等功能模塊,不難看出這些模塊按特定順序精確組合。完好的科學(xué)技術(shù)項(xiàng)目管理循環(huán),利用工作流技術(shù)設(shè)備對(duì)于管理業(yè)務(wù)流程展開(kāi)建模,保障業(yè)務(wù)流程在工作流引擎的控制之下運(yùn)行,不但可以輕松集成管理功能模塊,也可以為不同職能部門(mén)突破信息內(nèi)容壁壘,降低工作人員數(shù)目,進(jìn)一步提高管理效率。
2.大多數(shù)項(xiàng)目執(zhí)行單位是公司的基層單位,分布在相對(duì)分散的地區(qū),顯然無(wú)法將這些單位和科技管理部門(mén)用一個(gè)完整的局域網(wǎng)連接起來(lái)。鑒于SOA的工作流管理系統(tǒng)可以消除傳統(tǒng)式工作流管理系統(tǒng)無(wú)法支持分布式或者異構(gòu)壞境的優(yōu)點(diǎn)。
結(jié)束語(yǔ)
該文設(shè)計(jì)的鑒于SOA的工作流管理系統(tǒng)結(jié)合了Web服務(wù)技術(shù)及鑒于軟件工程可重用性方法論的工作流技術(shù),將流程封裝為Web服務(wù),具備松耦合特征及低集成能力。企業(yè)間本地和跨平臺(tái)流程的交互,讓資源共享變得簡(jiǎn)單便捷,降低企業(yè)成本。
參考文獻(xiàn)
[1]基于SOA架構(gòu)下人力資源管理系統(tǒng)設(shè)計(jì) [J]. 李玉玫.自動(dòng)化與儀器儀表. 2018(11).
[2]基于工作流技術(shù)框架下機(jī)關(guān)辦公管理系統(tǒng)的設(shè)計(jì)與分析 [J].徐曉斌.辦公自動(dòng)化. 2020(16).
[3]工作流技術(shù)在技術(shù)服務(wù)平臺(tái)中的設(shè)計(jì)與實(shí)現(xiàn) [J]. 石悅,武彤.計(jì)算機(jī)技術(shù)與發(fā)展. 2019(04).