亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        輕量級(jí)動(dòng)態(tài)工作流引擎的設(shè)計(jì)與實(shí)現(xiàn)

        2014-12-23 01:24:32郭玉彬蔡澤野林澤偉徐銀鵬
        關(guān)鍵詞:結(jié)點(diǎn)引擎實(shí)例

        郭玉彬,蔡澤野,林澤偉,徐銀鵬

        (華南農(nóng)業(yè)大學(xué) 信息學(xué)院,廣東 廣州510642)

        0 引 言

        動(dòng)態(tài)工作流技術(shù)是專門為企業(yè)適應(yīng)復(fù)雜多變的市場(chǎng)而提出來,近年來已成工作流領(lǐng)域的研究熱點(diǎn)。很多工作流廠商和學(xué)者對(duì)這一技術(shù)進(jìn)行了很多研究和實(shí)現(xiàn),例如,F(xiàn)ang Ru等[1]研究過程模型的動(dòng)態(tài)性問題,定義了5種過程模型的變更模式,當(dāng)流程發(fā)生變更時(shí),綜合利用這5種模式進(jìn)行流程變更。北京航空航天大學(xué)的孫海龍教授團(tuán)隊(duì)[2,3]設(shè)計(jì)并實(shí)現(xiàn)了一個(gè)支持動(dòng)態(tài)演化的組合服務(wù)執(zhí)行引擎,用于可信軟件的動(dòng)態(tài)演化,其組合服務(wù)運(yùn)行實(shí)例遷移算法,其核心算法LiveMig是組合服務(wù)運(yùn)行實(shí)例算法。南京大學(xué)呂建教授團(tuán)隊(duì)[4-6]研究了過程以及服務(wù)組合的動(dòng)態(tài)演化問題,提出了一種基于柔性遷移技術(shù)的過程動(dòng)態(tài)演化方法,并給出支持自適應(yīng)性的可變過程模型及其實(shí)現(xiàn)。另外,文獻(xiàn)[7-10]分別給出不同環(huán)境中動(dòng)態(tài)工作流引擎的設(shè)計(jì)與實(shí)現(xiàn)方案。

        本文研究動(dòng)態(tài)工作流引擎的設(shè)計(jì)與實(shí)現(xiàn),提出一種輕量級(jí)動(dòng)態(tài)工作流引擎的框架結(jié)構(gòu),稱為L(zhǎng)WDWE(lightweight dynamic workflow engine)。該引擎借用Petri網(wǎng)的思想,將模型看作靜態(tài)結(jié)構(gòu),將過程實(shí)例看作托肯(token)所代表的系統(tǒng)狀態(tài)下一系列變遷(transition)的發(fā)生。由此可將工作流模型與實(shí)例完全分開,方便對(duì)過程修改的支持和實(shí)例的動(dòng)態(tài)遷移。LWDWE 支持基于過程和基于活動(dòng)的兩種動(dòng)態(tài)修改策略,本文首先給出LWDWE 支持的工作流模型、架構(gòu)和接口設(shè)計(jì)和調(diào)度機(jī)制,然后給出流程的動(dòng)態(tài)修改策略及過程動(dòng)態(tài)修改算法。最后,給出利用Spring 和Hibernate開源框架實(shí)現(xiàn)的原型系統(tǒng),并通過一個(gè)應(yīng)用實(shí)例證明了引擎設(shè)計(jì)的可用性。

        1 輕量級(jí)動(dòng)態(tài)工作流引擎的分析與設(shè)計(jì)

        1.1 LWDWE中的工作流模型

        jBPM 是當(dāng)前流行的工作流執(zhí)行引擎,它使用用JPDL(jBPM process definition language)語(yǔ)言描述基本的工作流程。借鑒JPDL 思想,LWDWE 將工作流中各元素抽象為控制節(jié)點(diǎn)和業(yè)務(wù)節(jié)點(diǎn)兩類,控制節(jié)點(diǎn)是工作流中用來控制流程流轉(zhuǎn)的節(jié)點(diǎn),業(yè)務(wù)節(jié)點(diǎn)是流程中需要參與者或者第三方應(yīng)用程序參與的節(jié)點(diǎn)。而流程是由兩種節(jié)點(diǎn)組合起來,完成某種應(yīng)用功能的執(zhí)行步驟序列。

        表1給出本文流程節(jié)點(diǎn)的說明。LWDWE 共使用三類業(yè)務(wù)節(jié)點(diǎn)FormTask、ToolTask 和SubFlowTask,其中FormTask是表單任務(wù),即需要參與者以表單提交方式完成的任務(wù),ToolTask 用于實(shí)現(xiàn)第三方工具的調(diào)用,Sub-FlowTask 是嵌套子流程,方便流程的層次化設(shè)計(jì)??刂乒?jié)點(diǎn)分Start、End、Split、Join、Decision和State這6種。借助這些控制節(jié)點(diǎn)可實(shí)現(xiàn)順序、并發(fā)、聚合、判斷等流程結(jié)構(gòu)。

        LWDWE使用與JPDL類似的標(biāo)簽,如<process>、<start>、<end>、<split>和<transition>等來表示流程。圖1給出一個(gè)簡(jiǎn)單的流程實(shí)例及其XML表示。該流程只Start、End、A 和B 這4 個(gè)結(jié)點(diǎn)。結(jié)點(diǎn)A 是表單結(jié)點(diǎn),其ID 為3,其后續(xù)結(jié)點(diǎn)只有一個(gè),即結(jié)點(diǎn)B。結(jié)點(diǎn)A、B之間的順序關(guān)系通過結(jié)點(diǎn)A 的transition屬性表示。一般業(yè)務(wù)結(jié)點(diǎn)的transition屬性只有一個(gè)取值,即它與前、后序結(jié)點(diǎn)處于順序關(guān)系。而控制結(jié)點(diǎn)的transition屬性可取多值,表示可能與前、后序結(jié)點(diǎn)處于選擇或并發(fā)關(guān)系。

        表1 流程節(jié)點(diǎn)的詳細(xì)說明

        圖1 一個(gè)工作流實(shí)例及其XML文件

        1.2 LWDWE架構(gòu)設(shè)計(jì)

        LWDWE采用總線型結(jié)構(gòu),如圖2 所示,整個(gè)引擎由一個(gè)運(yùn)行總線(ExecutionContext)和以接口形式掛載其上的服務(wù)構(gòu)成??偩€型的設(shè)計(jì)可將所有服務(wù)集中起來,便于工作流引擎的統(tǒng)一調(diào)用,管理和配置簡(jiǎn)單,且具較好的可擴(kuò)展性。當(dāng)需要擴(kuò)展新功能時(shí),可增加新的服務(wù)接口并掛載在運(yùn)行總線上。而系統(tǒng)已有服務(wù)的功能修改則可通過重寫接口實(shí)現(xiàn)類來實(shí)現(xiàn)。

        圖2 LWDWE架構(gòu)設(shè)計(jì)

        如圖2所示,工作流引擎對(duì)外提供各種服務(wù)接口,包括:流程執(zhí)行服務(wù)接口(ExecutionService)、流程部署服務(wù)接口(RepositoryService)、人工服務(wù)接口(TaskService)、流程管理控制服務(wù)接口(ManagementService)、流程查詢服務(wù)接口(HistoryService)、身份認(rèn)證服務(wù)接口(IdentityService)、內(nèi)核管理器(KernelManager)和Dao工廠(DaoFactory)。LWDWE通過調(diào)用這些服務(wù)接口來實(shí)現(xiàn)創(chuàng)建、執(zhí)行和管理流程。

        ExecutionContext是運(yùn)行總線的實(shí)現(xiàn)類,所有的服務(wù)都掛載在上面。ExecutionService是流程執(zhí)行服務(wù)接口,是引擎中最常用的接口之一,提供創(chuàng)建流程實(shí)例、啟動(dòng)流程實(shí)例、推進(jìn)流程實(shí)例的運(yùn)轉(zhuǎn)和設(shè)置流程變量等功能接口。引擎通過該接口來控制流程的執(zhí)行。RepositoryService是流程的部署服務(wù)接口,提供對(duì)流程模板的部署、查詢和刪除操作。通過該接口,LWDWE可以輕易實(shí)現(xiàn)對(duì)流程的部署等

        TaskService是引擎的人工服務(wù)接口,提供對(duì)流程實(shí)例(Task)的創(chuàng)建、提交、查詢、保存和刪除等操作。當(dāng)流程流轉(zhuǎn)到表單任務(wù)節(jié)點(diǎn)時(shí),引擎會(huì)根據(jù)定義將任務(wù)實(shí)例分配給指定的參與者。ManagementService提供異步工作相關(guān)的執(zhí)行和查詢服務(wù)。HistoryService提供對(duì)已經(jīng)執(zhí)行的流程實(shí)例、任務(wù)實(shí)例和流程變量等的查詢。IdentityService,服務(wù)接口。提供對(duì)流程用戶及角色成員的身份認(rèn)證相關(guān)服務(wù)。KernelManager是維護(hù)流程正確運(yùn)轉(zhuǎn)的管理器。DaoFactory提供程序所需要的各種Dao操作。限于篇幅,本文僅在表2給出ExecutionService接口的詳細(xì)設(shè)計(jì),介紹主要接口函數(shù)信息。

        表2 ExecutionService接口的設(shè)計(jì)

        1.3 LWDWE調(diào)度方案

        LWDWE中,過程模型被看作一個(gè)Petri網(wǎng)的網(wǎng)結(jié)構(gòu),執(zhí)行實(shí)例則被看作一次執(zhí)行。啟動(dòng)一個(gè)流程實(shí)例的時(shí)候,LWDWE依據(jù)流程模板(ProcessDefinition)生成一個(gè)Execution來表示這個(gè)流程實(shí)例。當(dāng)流程實(shí)例流轉(zhuǎn)到某個(gè)節(jié)點(diǎn)時(shí),Execution根據(jù)節(jié)點(diǎn)類型獲取相應(yīng)的動(dòng)作并執(zhí)行。當(dāng)某結(jié)點(diǎn)執(zhí)行完成時(shí),則由Execution獲取節(jié)點(diǎn)的所有轉(zhuǎn)出連接?。╰ransition),依據(jù)相關(guān)流程變量的值選擇轉(zhuǎn)出連接弧、流轉(zhuǎn)到下一節(jié)點(diǎn)。

        工作流的流轉(zhuǎn)分順序與分發(fā)兩種情況。順序流轉(zhuǎn)指Execution完成一個(gè)節(jié)點(diǎn)的執(zhí)行后獲取其所有的轉(zhuǎn)出連接弧,從中選擇一個(gè)并流轉(zhuǎn)到下一節(jié)點(diǎn)。分發(fā)流轉(zhuǎn)則是指流程實(shí)例運(yùn)行遇到一個(gè)分發(fā)(Split)節(jié)點(diǎn)時(shí),流程實(shí)例會(huì)依據(jù)其轉(zhuǎn)出連接弧個(gè)數(shù),產(chǎn)生多個(gè)子流程,并使同時(shí)進(jìn)入這些子流程執(zhí)行。對(duì)分發(fā)結(jié)點(diǎn)的實(shí)現(xiàn),Execution對(duì)象保存一個(gè)List<Execution>類型的變量,引擎計(jì)算分發(fā)(Split)節(jié)點(diǎn)的具體轉(zhuǎn)出連接弧的數(shù)量,同時(shí)產(chǎn)生相應(yīng)數(shù)量的子Execution加入到該變量中,原Execution則在聚合(Join)節(jié)點(diǎn)等待。當(dāng)該變量中所有子Execution都到達(dá)聚合節(jié)點(diǎn)時(shí),原Execution將該變量清空并指定Join節(jié)點(diǎn)相應(yīng)的行為,然后流轉(zhuǎn)到下一節(jié)點(diǎn)。為區(qū)別Split節(jié)點(diǎn)和處于List變量中的Execution,系統(tǒng)用RootExecution 表示流程實(shí)例開始時(shí)綁定的Execution,而用SubExecution來表示List變量中的Execution。圖3給出具有兩個(gè)分支結(jié)點(diǎn)的分發(fā)流轉(zhuǎn)的執(zhí)行情況。

        工作流的順序流轉(zhuǎn)表達(dá)過程結(jié)點(diǎn)之間的順序、選擇關(guān)系,而分發(fā)操作表達(dá)過程結(jié)點(diǎn)之間的并發(fā)操作。由此,LWDWE可對(duì)所有包含順序、選擇、并發(fā)結(jié)構(gòu)工作流進(jìn)行執(zhí)行。

        圖3 分發(fā)流轉(zhuǎn)

        2 流程動(dòng)態(tài)修改策略及算法

        2.1 動(dòng)態(tài)修改策略

        流程動(dòng)態(tài)修改一般將其分為過程級(jí)修改和活動(dòng)級(jí)修改兩類[2]。其中過程級(jí)修改指流程實(shí)例運(yùn)行時(shí)對(duì)流程模板的修改。而活動(dòng)級(jí)修改指對(duì)流程實(shí)例中未運(yùn)行活動(dòng)的臨時(shí)修改,比如修改活動(dòng)屬性,這種修改只針對(duì)具體的流程實(shí)例,不改變流程模板。LWDWE對(duì)這兩種動(dòng)態(tài)修改都提供支持。

        對(duì)于過程級(jí)修改,目前動(dòng)態(tài)工作流系統(tǒng)一般采取重新啟動(dòng)、繼續(xù)執(zhí)行和轉(zhuǎn)換3種策略[4]。其中,轉(zhuǎn)換策略是指將正運(yùn)行的過程實(shí)例遷移到新的工作流程模板上運(yùn)行,這種策略不需要重啟流程,放棄實(shí)例已完成部的執(zhí)行結(jié)果,使得流程實(shí)例能夠跟上模板變化,具備靈活性,但其實(shí)現(xiàn)相對(duì)困難。

        本文利用流程模板的版本區(qū)別實(shí)現(xiàn)過程實(shí)例的轉(zhuǎn)換策略。即將對(duì)流程模板的修改用不同版本記錄。過程實(shí)例需要流轉(zhuǎn)到下一結(jié)點(diǎn)時(shí),依據(jù)條件選擇使用原版本的過程模板還是轉(zhuǎn)換到最新版本的過程模板繼續(xù)后續(xù)部分的執(zhí)行。由于動(dòng)態(tài)轉(zhuǎn)換時(shí)流程實(shí)例中的已經(jīng)產(chǎn)生了部分流程數(shù)據(jù),為避免與新定義模板的活動(dòng)產(chǎn)生數(shù)據(jù)沖突,本引擎給出如下的規(guī)定:

        假設(shè)M 為舊的過程模型,l為過程實(shí)例X 在舊的過程模型中已經(jīng)執(zhí)行的活動(dòng)序列。MN為修訂后的過程模型,ln為活動(dòng)序列l(wèi)在MN中的投影,若滿足:(M≠M(fèi)N)Λ(l=ln),則允許動(dòng)態(tài)轉(zhuǎn)換。其中條件(M≠M(fèi)N)表示新過程模板對(duì)舊過程模板進(jìn)行了修改,并不等價(jià)于舊過程模型。而(l=ln)保證已經(jīng)執(zhí)行過的活動(dòng)序列在新的過程模型未發(fā)生變化。

        2.2 動(dòng)態(tài)修改算法

        為防止錯(cuò)誤的修改,本文將過程修改看作對(duì)過程模板進(jìn)行增加或刪除結(jié)點(diǎn)的操作。插入或刪除的結(jié)點(diǎn)t簡(jiǎn)化為一個(gè)業(yè)務(wù)結(jié)點(diǎn)或一個(gè)split-join結(jié)構(gòu)包含的所有結(jié)點(diǎn)。簡(jiǎn)化的目的是簡(jiǎn)化模型檢查和正確性判定。對(duì)任意位置、任意結(jié)構(gòu)結(jié)點(diǎn)的插入,需要復(fù)雜的模型檢查與正確性判定算法支持,而這不是本文研究?jī)?nèi)容。

        算法1:流程模板插入結(jié)點(diǎn)的算法

        輸入:過程模板PD,結(jié)點(diǎn)屬性Map<String,String>property

        輸出:過程模板PD’

        步驟:

        (1)AddTask(int nodeId,Map<String,String>property)

        //動(dòng)態(tài)添加業(yè)務(wù)節(jié)點(diǎn),nodeId為當(dāng)前節(jié)點(diǎn)的Id,property為要添加的節(jié)點(diǎn)的屬性。

        (2)讀取當(dāng)前綁定的流程模板信息;根據(jù)NodeId找到當(dāng)前正在運(yùn)行的節(jié)點(diǎn);根據(jù)當(dāng)前運(yùn)行節(jié)點(diǎn)找到其下一個(gè)節(jié)點(diǎn)的Id,將其賦給NextId變量。

        (3)調(diào)用addElement 函數(shù)生成一個(gè)新節(jié)點(diǎn),并將Property信息賦給該節(jié)點(diǎn)的各個(gè)屬性。同時(shí)將NextId賦值給該節(jié)點(diǎn)的孩子節(jié)點(diǎn)Transition中的to屬性。

        (4)將步驟(2)中獲得的節(jié)點(diǎn)的孩子節(jié)點(diǎn)Transition的屬性賦值為步驟(3)中新生成的節(jié)點(diǎn)的Id。

        (5)返回修改后的流程模板信息。

        (6)根據(jù)修改后的流程模板信息生成新的流程模板PD’,將新的流程模板的版本加上1,同時(shí)將新的流程模板發(fā)布到數(shù)據(jù)庫(kù)中。

        (7)向正在運(yùn)行的流程實(shí)例發(fā)送版本更新信息。

        假設(shè)A 的轉(zhuǎn)出連接弧指向B,即A、B處于順序關(guān)系。在A、B兩結(jié)點(diǎn)之間插入一個(gè)新結(jié)點(diǎn)C 的工作包括:記錄A 的轉(zhuǎn)出連接弧(A 結(jié)點(diǎn)的Transition屬性);修改C 的轉(zhuǎn)出連接弧等于A 的轉(zhuǎn)出連接弧;修改A 的轉(zhuǎn)出連接弧指向C。刪除結(jié)點(diǎn)的操作與之相類似,假設(shè)結(jié)點(diǎn)A、B、C 處于順序關(guān)系,刪除B結(jié)點(diǎn)的操作即是將A 的轉(zhuǎn)出連接弧指向B的轉(zhuǎn)出連接弧的過程。

        算法1是LWDWE中所使用的插入結(jié)點(diǎn)的昝。限于篇幅,本文略去了刪除結(jié)點(diǎn)的算法。

        在一個(gè)過程實(shí)例執(zhí)行時(shí),用戶可動(dòng)態(tài)修改該本實(shí)例的執(zhí)行。這種修改可以是增加或刪除一個(gè)業(yè)務(wù)結(jié)點(diǎn)、修改某個(gè)結(jié)點(diǎn)的屬性等。LWDWE 中,這些修改的實(shí)現(xiàn)通過將過程模板復(fù)制到本實(shí)例中,并切斷模板與實(shí)例之間的聯(lián)系來實(shí)現(xiàn)。即只允許用戶的操作對(duì)本過程實(shí)例起作用,而屏蔽掉它對(duì)過程模板的影響。在一個(gè)動(dòng)態(tài)修改過的過程實(shí)例完成后,用戶也可選擇 “升級(jí)”操作,從該實(shí)例中抽取過程模板并發(fā)布出去,供以后的過程實(shí)例調(diào)用。

        2.3 一個(gè)動(dòng)態(tài)工作流實(shí)例

        本節(jié)給出一個(gè)簡(jiǎn)單的請(qǐng)假系統(tǒng)的應(yīng)用案列來驗(yàn)證引擎的功能,公司請(qǐng)假的一般流程如下:①職員填寫請(qǐng)假單,提供名字、請(qǐng)假天數(shù)和請(qǐng)假原因等信息。②經(jīng)理對(duì)請(qǐng)假信息進(jìn)行審批,若請(qǐng)假小于等于3 天,直接給出審批結(jié)果,準(zhǔn)假或不準(zhǔn)假。若請(qǐng)假大于3天,則轉(zhuǎn)到下一步驟,由老板進(jìn)行審批。③老板給出審批結(jié)論,準(zhǔn)假或不準(zhǔn)假。圖4給出使用本系統(tǒng)生成的請(qǐng)假工作流的圖形表示。圖中有一個(gè)分支結(jié)點(diǎn),依據(jù)請(qǐng)假天數(shù)分兩種情況處理。

        圖4 公司請(qǐng)假流程

        當(dāng)一個(gè)實(shí)例開始運(yùn)行時(shí),LWDWE 從過程模型生成請(qǐng)假實(shí)例的執(zhí)行模板。但在執(zhí)行過程中,可靈活改變工作流實(shí)例的處理過程。假設(shè)職員1提交請(qǐng)假申請(qǐng),而且請(qǐng)假天數(shù)小于等于3天。則職員提交請(qǐng)假申請(qǐng)后,系統(tǒng)為經(jīng)理生成工作任務(wù)。如圖5所示,經(jīng)理登錄系統(tǒng)后看到1個(gè)請(qǐng)假實(shí)例和一個(gè)待辦任務(wù)。此時(shí)經(jīng)理可修改流程實(shí)例,添加新的任務(wù)節(jié)點(diǎn)。如果經(jīng)理增加任務(wù)結(jié)點(diǎn) “總監(jiān)審批”,則總監(jiān)登錄系統(tǒng)后,可看到該流程實(shí)例及其待辦任務(wù),且系統(tǒng)中流程定義TestWorkflow 增加一個(gè)新版本的定義,如圖6所示。此時(shí)流程實(shí)例2流轉(zhuǎn)到 “總監(jiān)審批”節(jié)點(diǎn),實(shí)現(xiàn)了流程實(shí)例在運(yùn)行期間的動(dòng)態(tài)修改流程模板并遷移的功能。

        3 結(jié)束語(yǔ)

        本文設(shè)計(jì)并實(shí)現(xiàn)了一種動(dòng)態(tài)輕量級(jí)工作流引擎LWDWE。在架構(gòu)方面,使用總線型的引擎架構(gòu);在工作流模型上,給出了一種工作流實(shí)現(xiàn)模型和節(jié)點(diǎn)的調(diào)度機(jī)制。對(duì)動(dòng)態(tài)修改策略進(jìn)行改進(jìn)并支持流程實(shí)例的動(dòng)態(tài)修改。論文首先給出系統(tǒng)支持的工作流模型和引擎調(diào)度機(jī)制,給出引擎的架構(gòu)及關(guān)鍵實(shí)現(xiàn)算法,并通過實(shí)例證明了該引擎的可用性。

        圖5 經(jīng)理審批階段的主界面

        圖6 總監(jiān)審批的主界面

        本論文僅實(shí)現(xiàn)了對(duì)動(dòng)態(tài)工作流的支持,未深入考慮動(dòng)態(tài)流程的正確性問題,設(shè)計(jì)并實(shí)現(xiàn)流程模型及實(shí)例的正確性驗(yàn)證算法是本作者下一步的工作。

        [1]Fang Ru,Zou Zhile,Stratan C,et al.Dynamic support for BPEL process instance adaptation [C]//Hawaii,USA:Proceeding of service Computing,2008:327-334.

        [2]Zeng Jin,Huai Jinpeng,Sun Hailong,et al.LiveMig:An approach to live instance migration in composite service evolution [C]//IEEE International Conference on Web Services,2009:679-686.

        [3]ZENG Jin,SUN Hailong,LIU Xudong,et al.Dynamic evo- lution mechanism for trustworthy software based on service composition [J].Journal of Software,2010,21 (2):261-276 (in Chinese).[曾晉,孫海龍,劉旭東,等.基于服務(wù)組合的可信軟件動(dòng)態(tài)演化機(jī)制 [J].軟件學(xué)報(bào),2010,21 (2):261-276.]

        [4]SONG Wei,MA Xiaoxing,HU Hao,et al.Dynamic evolution of processes in process-aware information system [J].Journal of Software,2011,22 (3):417-438 (in Chinese).[宋巍,馬曉星,胡昊,等.過程感知信息系統(tǒng)中過程的動(dòng)態(tài)演化過程感知信息系統(tǒng)中過程的動(dòng)態(tài)演化 [J].軟件學(xué)報(bào),2011,22 (3):417-438.]

        [5]SONG Wei,MA Xiaoxing,LU Jian.Instance migration in dynamic evolution of web service compositions[J].Chinese Journal of Computers,2009,32 (9):1816-1831 (in Chinese).[宋巍,馬曉星,呂建.Web服務(wù)組合動(dòng)態(tài)演化的實(shí)例可遷移性 [J].計(jì)算機(jī)學(xué)報(bào),2009,32 (9):1816-1831.]

        [6]XU Gang,SONG Wei,HU Hao,et al.Design and implementation of process system supporting process dynamic updating [J].Computer Sciences,2012,39 (11A):434-439 (in Chinese).[徐剛,宋巍,胡昊,等.一種支持過程動(dòng)態(tài)更新的過程系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn) [J].計(jì)算機(jī)科學(xué),2012,39 (11A):434-439.]

        [7]Baird R,Jorgenson N,Gamble R.Self-adapting workflow reconfiguration [J].Journal of Systems and Software,2011,84 (3):510-524.

        [8]ZHAN Zhen.The research and implementation of dynamic workflow technology based on.net[D].Wuhan:Huazhong University of Science and Technology,2012 (in Chinese).[詹振.基于.NET 的動(dòng)態(tài)工作流技術(shù)的研究與實(shí)現(xiàn)[D].武漢:華中科技大學(xué),2012.]

        [9]Yu G,Zhao P,Di L,et al.BPELPower—A BPEL execution engine for geospatial web services[J].Computers & Geosciences 2012,47:87-101.

        [10]Romain R,Vitae M L,Vitae S R.OpenMOLE,a workflow engine specifically tailored for the distributed exploration of simulation models [J].Future Generation Computer Systems,2013,29 (8):1981-1990.

        猜你喜歡
        結(jié)點(diǎn)引擎實(shí)例
        Ladyzhenskaya流體力學(xué)方程組的確定模與確定結(jié)點(diǎn)個(gè)數(shù)估計(jì)
        藍(lán)谷: “涉藍(lán)”新引擎
        商周刊(2017年22期)2017-11-09 05:08:31
        無形的引擎
        河南電力(2015年5期)2015-06-08 06:01:46
        基于Cocos2d引擎的PuzzleGame開發(fā)
        完形填空Ⅱ
        完形填空Ⅰ
        基于Raspberry PI為結(jié)點(diǎn)的天氣云測(cè)量網(wǎng)絡(luò)實(shí)現(xiàn)
        基于DHT全分布式P2P-SIP網(wǎng)絡(luò)電話穩(wěn)定性研究與設(shè)計(jì)
        One Engine?。蹋澹妫糁皇O乱粋€(gè)引擎
        結(jié)點(diǎn)位移的確定
        亚洲综合一区二区三区久久| 亚洲av永久无码精品网址| 精品国产青草久久久久福利| 亚洲精品国偷拍自产在线观看| 国产免费午夜a无码v视频| 国产精品第1页在线观看| 在线看片国产免费不卡| 亚洲青青草视频在线播放| 狼人综合干伊人网在线观看| 日韩av中文字幕波多野九色| 国产一区二区三区av免费| 亚洲人成无码区在线观看| 亚洲色www成人永久网址| 欧美老妇与禽交| 亚洲人成绝费网站色www| 久久精品国产69国产精品亚洲| 国产乱码卡二卡三卡老狼| 久久人人97超碰超国产| 九九99国产精品视频| 综合图区亚洲另类偷窥| 国产三级av大全在线爽| 国产18禁黄网站免费观看| 狠狠色狠狠色综合网| 免费无码又爽又刺激聊天app| 国产精品天天看大片特色视频| 亚洲素人日韩av中文字幕| 今井夏帆在线中文字幕| 欧美性猛交xxxx乱大交极品| 一本一道久久a久久精品综合| 亚洲精品免费专区| 伊在人亚洲香蕉精品区麻豆| 日韩日本国产一区二区| 亚洲中文字幕久久精品一区| 熟女无套内射线观56| 国产V日韩V亚洲欧美久久| 国产三级自拍视频在线| 国产精品综合女同人妖| 射精专区一区二区朝鲜| 久久精品波多野结衣中文字幕 | 日本国产一区二区在线| 亚洲一区在线观看中文字幕|