国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于工作流的協(xié)同會商模型研究與設(shè)計

2017-02-06 00:26賀榮蔡麗麗
軟件 2016年6期
關(guān)鍵詞:工作流

賀榮+蔡麗麗

摘要:針對協(xié)同會商系統(tǒng)對于規(guī)程化電子會議支持不足的問題,研究并設(shè)計了一種基于工作流的協(xié)同會商模型。該模型采用工作流技術(shù)實現(xiàn)規(guī)程化電子會議過程中的控制,保障協(xié)同會商有序、有效開展。面向業(yè)務(wù)需求分析了流程化協(xié)同會商模式,研究了流程任務(wù)封裝、流程編排與模板套用、流程動態(tài)管控等技術(shù),完成了基于工作流的協(xié)同會商系統(tǒng)軟件結(jié)構(gòu)設(shè)計和交互接口設(shè)計。

關(guān)鍵詞:協(xié)同會商;工作流;web電子會議;表征狀態(tài)轉(zhuǎn)移

引言

協(xié)同會商是指多人以會議室、電視電話網(wǎng)絡(luò)或IP網(wǎng)絡(luò)為媒介,針對某一項任務(wù)或?qū)n},開展協(xié)同研討、交互和工作的過程。網(wǎng)絡(luò)化環(huán)境下的協(xié)同會商系統(tǒng)是通過計算機軟件系統(tǒng)和IP網(wǎng)絡(luò),面向異地用戶,針對共同的會商任務(wù)建立統(tǒng)一的協(xié)同會商環(huán)境,解決異地用戶無法實施溝通和交換信息的問題。隨著計算機軟件技術(shù)的迅速發(fā)展和IP網(wǎng)絡(luò)通信質(zhì)量的提升,網(wǎng)絡(luò)化環(huán)境下的協(xié)同會商系統(tǒng)能夠支持的交互手段和信息共享方式逐步豐富,已經(jīng)能夠滿足異地用戶協(xié)同研討和交互需求,但受限于用戶分布異地的特性,對于協(xié)同會商過程中研討過程的控制一直是該類系統(tǒng)的弱項,尤其對于具有嚴格會議議程要求的協(xié)同會商場景,難以通過單純的權(quán)限控制模型保證會議的有序、有效開展。

結(jié)合上述問題,本文研究并設(shè)計了一種基于工作流的協(xié)同會商模型,采用工作流技術(shù)實現(xiàn)流程化的協(xié)同會商,首先針對需求研究流程化的協(xié)同會商模式,以及流程任務(wù)封裝、編排、討論和動態(tài)管控方式,隨后進行了軟件結(jié)構(gòu)設(shè)計和交互接口設(shè)計。

1流程化協(xié)同會商模型

1.1協(xié)同會商模式

本文研究與設(shè)計的協(xié)同會商系統(tǒng)面向網(wǎng)絡(luò)化環(huán)境下的多人異地研討需求,基于協(xié)作空間實現(xiàn)多模式協(xié)同會議和研討功能。協(xié)作空間是在分布異構(gòu)系統(tǒng)中構(gòu)建的支持動態(tài)信息共享、交互和應(yīng)用協(xié)同的虛擬環(huán)境。它具備明確的空間邊界,提供豐富的應(yīng)用協(xié)作模式和嚴格的協(xié)同數(shù)據(jù)管控機制,支持地理分散的協(xié)同應(yīng)用共享數(shù)據(jù)、交換信息和協(xié)調(diào)任務(wù)。

協(xié)作空間由協(xié)作任務(wù)、協(xié)作成員和協(xié)同數(shù)據(jù)組成。協(xié)作任務(wù)是在協(xié)作空間中進行應(yīng)用協(xié)同的起因,通常協(xié)作任務(wù)都具備明確的任務(wù)目標、任務(wù)起始時間和完成期限;協(xié)作成員是應(yīng)用協(xié)同的實現(xiàn)主體,處于不同地理位置的協(xié)作成員通過應(yīng)用系統(tǒng)在協(xié)作空間中完成規(guī)定的協(xié)作任務(wù);協(xié)同數(shù)據(jù)包含應(yīng)用協(xié)同過程中產(chǎn)生的業(yè)務(wù)數(shù)據(jù)和應(yīng)用協(xié)同完成后形成的結(jié)論數(shù)據(jù)。協(xié)作空間的設(shè)計目的在于有效管理協(xié)作任務(wù)、協(xié)作成員、協(xié)同數(shù)據(jù),以及應(yīng)用協(xié)同過程中三者之間的關(guān)系。

本系統(tǒng)需要支持的協(xié)同會商模式主要包括:

1)自由交互模式:由管理員配置空間參與成員列表,空間開放后用戶可自由加入?yún)f(xié)作空間,并自由使用空間內(nèi)的各類多媒體交互手段。

2)協(xié)商研討模式:由管理員配置空間參與成員列表、角色和權(quán)限,角色包括主持人、成員、訪客,開放后只有參與成員列表的用戶可加入?yún)f(xié)作空間,空間內(nèi)用戶默認按照配置的權(quán)限使用多媒體交互手段,當(dāng)需要使用不具備權(quán)限的交互手段時需主持人批準。

3)評審會議模式:由管理員配置空間參與成員列表和協(xié)作流程,開放后只有參與成員列表的用戶可加入?yún)f(xié)作空間,空間內(nèi)用戶按照配置好的協(xié)作流程開展協(xié)同工作。

可以看出,自由交互模式和協(xié)商研討模式適用于臨機日常的協(xié)同會商場景,通過協(xié)作空間的故有屬性和權(quán)限控制模型可以實現(xiàn),但評審會議模式的協(xié)同會商場景要求按照嚴格的工作會議流程開展多人協(xié)同會商,同時需要根據(jù)不同的工作會議議程按需對協(xié)同會商流程進行配置和調(diào)整。

針對評審會議模式的協(xié)同會商需求,本文研究并設(shè)計了基于工作流的協(xié)同會商模型,在會議準備階段由會議組織者編排、繪制會議議程;在會議進行階段,與會人員按照會議議程開展協(xié)同會商,由工作流引擎按照會議議程控制協(xié)同會商過程。

1.2流程任務(wù)封裝

應(yīng)用系統(tǒng)在使用工作流引擎時通常需要經(jīng)歷流程編排、流程發(fā)布和流程執(zhí)行三個過程,其中流程編排采用BPMN2.0等標準,通常由技術(shù)人員完成。本系統(tǒng)采用流程編排功能實現(xiàn)對會議議程的編排和繪制,這就要求會議組織者需要具備一定的專業(yè)基礎(chǔ),一般的普通用戶未經(jīng)培訓(xùn)很難正確繪制流程。因此,為了降低流程編排的難度,本文將對任務(wù)節(jié)點進行封裝,將集成信息參數(shù)和分支規(guī)則參數(shù)等信息封裝進任務(wù)節(jié)點,形成普通用戶能夠直觀理解使用的業(yè)務(wù)環(huán)節(jié)模型。同時,將可合并的任務(wù)節(jié)點封裝成一個業(yè)務(wù)任務(wù)模型,從而簡化流程環(huán)節(jié),減少編排者工作量。流程任務(wù)封裝過程中關(guān)于流程和任務(wù)模型的定義如下:

在不影響協(xié)同會商業(yè)務(wù)執(zhí)行的前提下,為了盡量降低流程的復(fù)雜度,任務(wù)封裝時須遵循以下幾點規(guī)則:

1)一個封裝后的任務(wù)模型只有一個輸入和一個輸出;

2)多個任務(wù)節(jié)點封裝成一個任務(wù)模型時,各任務(wù)節(jié)點的執(zhí)行角色必須一致;

3)流程進行任務(wù)模型封裝后,簡化成一個順序型流程;

4)流程中存在分支時,只能存在一個分支形成主流程;

5)封裝后的任務(wù)模型只對使用者暴露必要的人機交互信息設(shè)置。

以啟動會議模型為例,通過原始流程環(huán)節(jié)分析,將啟動會議和自由/協(xié)商模式分支封裝成啟動會議模型,形成一個分支任務(wù)模型,它的ME={啟動會議,分支,研討,結(jié)束},mi=(啟動會議,分支,in),mo=(分支,null,out,<審評批復(fù)>)。

以評審會會議議程為例,原始的協(xié)同會議流程涉及了分支節(jié)點、并發(fā)環(huán)節(jié)等復(fù)雜流程節(jié)點類型,尤其是分支節(jié)點需要分支規(guī)則判斷,如圖1所示所示。

首先,分析協(xié)同會商的業(yè)務(wù)流程,從業(yè)務(wù)層級上將會商流程分割成業(yè)務(wù)顆粒度最小的任務(wù)環(huán)節(jié),如圖2所示。通過對任務(wù)環(huán)節(jié)的信息分析,抽取各環(huán)節(jié)的執(zhí)行信息以及環(huán)節(jié)之間的執(zhí)行邏輯信息,結(jié)合基于流程的協(xié)同會商實現(xiàn)方式將信息劃分為靜態(tài)類執(zhí)行信息和動態(tài)類執(zhí)行信息。靜態(tài)類執(zhí)行信息是指業(yè)務(wù)環(huán)節(jié)的固定信息,一旦確定下來就較少會發(fā)生變動,多為協(xié)同會商與流程之間的集成協(xié)作信息,不需要公布與流程參與者知曉,例如分支節(jié)點的分支判斷規(guī)則信息;動態(tài)類執(zhí)行信息是指業(yè)務(wù)環(huán)節(jié)中會根據(jù)實際場景發(fā)生變化的信息,需要協(xié)同會商流程策劃者(發(fā)起者)在會商啟動之前具體指定,例如業(yè)務(wù)環(huán)節(jié)的參與者。

1.3流程編排與模板套用

當(dāng)任務(wù)模型封裝完畢后,用戶直接基于這些任務(wù)模型進行協(xié)同會商流程編排,并生成流程與任務(wù)模型的關(guān)聯(lián)關(guān)系和模型與模型之間的執(zhí)行次序信息。當(dāng)發(fā)布流程時,流程將通過關(guān)聯(lián)關(guān)系獲取任務(wù)模型的具體信息,根據(jù)任務(wù)模型的封裝信息解析生成相應(yīng)的流程定義片段,最終根據(jù)模型與模型之間的執(zhí)行次序信息將已解析生成的流程定義片段銜接形成完整的流程定義文件。由于本文研究的流程服務(wù)采用BPMN2.0標準協(xié)議,故而流程編排解析任務(wù)模型時將遵循BPMN2.0協(xié)議,生成符合該標準格式的流程定義描述文件。下面是流程解析算法,parseProeess()是算法名稱。

parseProeess(){

for(each model in MODEL){

//循環(huán)解析任務(wù)模型

generateModelBPMN(model);

}

for(each flow in MPL){

//連接各模型的片段信息

assemblingModel(now.source,floW.target);

}}下面是任務(wù)模型的解析算法,generateModelBPMN(model)是算法名稱,model是任務(wù)模型對象。generateModelBPMN(model){

for(each me in model.ME){

//根據(jù)BPMN20協(xié)議生成元素節(jié)點的描述信息

generateElementBPMN(me);

//處理元素節(jié)點的屬性信息

for(each mp in model.MP){

//根據(jù)BPMN20協(xié)議生成元素節(jié)點屬性信息

generateProperties(mp);

}

for(each mf in model.MF){

//根據(jù)元素節(jié)點的執(zhí)行次序生成流程執(zhí)行規(guī)則

generateFlow(mf.source,mf.target,mfc);

if(mf.t=IN){

//建立輸入節(jié)點關(guān)系,以便流程后續(xù)組裝各任務(wù)模型的執(zhí)行次序

addIngoings(me);

}else if(mf.t=OUT){

//建立輸出節(jié)點關(guān)系,以便流程后續(xù)組裝各任務(wù)模型的執(zhí)行次序

addOutgoings(me);

}

}

}}

為了實現(xiàn)流程的復(fù)用,進一步簡化流程編排工作量,流程化協(xié)同會商模型引入了模板概念,根據(jù)常見的協(xié)同會商場景預(yù)先準備協(xié)同會商模板庫,用戶可直接根據(jù)模板的輸入輸出要求設(shè)定相關(guān)參數(shù),如指定與會人員,從而啟動協(xié)同會商。同時,當(dāng)場景發(fā)生變化時或新增場景時,用戶可以基于原有模板直接修改,或者直接在模板庫中添加新模板。

1.4流程動態(tài)管控

真實應(yīng)用環(huán)境中,由于業(yè)務(wù)的變化或是其他情況的出現(xiàn),協(xié)同會商流程不是一成不變,流程化的協(xié)同會商必須能夠及時適應(yīng)這些變化。針對這種適應(yīng)需求,流程化協(xié)同會商模型設(shè)計時添加了流程動態(tài)管控機制。

使用場景的變更映射至流程所呈現(xiàn)出的變更情況有兩種,一是任務(wù)模型內(nèi)部執(zhí)行流程發(fā)生變化,二是流程環(huán)節(jié)發(fā)生變化。針對這兩種情況,流程動態(tài)管控機制引入了版本控制,通過版本控制管理流程定義和任務(wù)模型的變化。當(dāng)任務(wù)模型內(nèi)部發(fā)生變化時,通過修改模型的封裝信息,形成新版本的任務(wù)模型。當(dāng)流程重新發(fā)布時,流程將默認讀取最新版本的模型封裝信息解析生成流程定義文件。同時,流程依然可以根據(jù)實際情況需要選擇之前版本的任務(wù)模型進行編排解析。

當(dāng)流程環(huán)節(jié)發(fā)生變化時,則需要根據(jù)需求增加或減少任務(wù)環(huán)節(jié),修改流程的執(zhí)行路徑,重新發(fā)布流程。當(dāng)流程重新發(fā)布時,流程服務(wù)將升級流程的版本,原有的流程將繼續(xù)保留存在,已有正在執(zhí)行中的會商流程依舊按照原有的流程邏輯執(zhí)行。但新啟動的協(xié)同會商流程將自動按照最新版本的流程邏輯執(zhí)行。

2系統(tǒng)設(shè)計

2.1軟件結(jié)構(gòu)設(shè)計

基于工作流的協(xié)同會商系統(tǒng)為三個層次,存儲層提供用戶信息、流程描述、協(xié)作空間、離線消息和服務(wù)配置信息存儲功能;支撐層面向上層應(yīng)用提供協(xié)同服務(wù)和工作流引擎,包括協(xié)同服務(wù)管理、協(xié)同用戶管理、協(xié)同會話監(jiān)控、協(xié)作空間管理、流程任務(wù)流轉(zhuǎn)等功能;應(yīng)用層面向用戶提供基于瀏覽器的協(xié)同會商環(huán)境、流程編排工具和流程管理工具。

2.2交互接口設(shè)計

基于工作流的協(xié)同會商系統(tǒng)中協(xié)同服務(wù)和工作流引擎作為底端支撐服務(wù),面向基于瀏覽器的協(xié)同會商環(huán)境、流程編排工具和流程管理工具提供流程管理、任務(wù)管理和應(yīng)用協(xié)同接口;基于瀏覽器的協(xié)同會商環(huán)境和流程編排工具之間采用頁面集成的方式面向用戶提供統(tǒng)一的訪問頁面如表1所示。

底層協(xié)同服務(wù)和工作流引擎采用RESTlet框架為上層應(yīng)用提供基于RESTful的信息查詢和控制接口,通過URI方式對外發(fā)布訪問資源;針對會商過程中服務(wù)器主動推送消息的場景,采用HTML5中WebSocket特性提供全雙工的消息收發(fā)功能。

1)流程管理

流程定義是指一個已經(jīng)發(fā)布的流程描述模型,流程定義管理提供對流程模型的發(fā)布、刪除和查詢功能,流程實例是指一個正在執(zhí)行的具體流程,是流程定義實例化后的流程,與流程定義是一對多的關(guān)系。資源類見表2。

流程發(fā)布是通過POST請求方式將流程編排生成的流程模型描述文件部署至流程服務(wù)中,由流程服務(wù)解析描述文件生成流程模型,支持協(xié)同會商為流程定義設(shè)定類別標識{identifier},以便流程定義的后續(xù)查詢和管理。

流程實例管理支持協(xié)同會商服務(wù)通過流程類別標識獲取該分類下的流程實例列表,同時支持根據(jù)流程定義ID查詢流程實例。

工作流引擎提供流程實例啟動接口,啟動流程則實例化該流程,創(chuàng)建一個實例對象并開始流程流轉(zhuǎn)。它支持協(xié)同會商通過POST請求方式傳遞流程啟動所需的參數(shù)信息。當(dāng)流程啟動后,協(xié)同會商可以通過流程實例查詢或是流程實例獲取的接口查詢實例信息,也可以通過調(diào)用流程實例刪除或者流程實例中止的方式提前結(jié)束流程。與流程定義管理中的流程刪除不同,流程實例刪除只刪除該實例,不影響該流程其他的實例流轉(zhuǎn)。流程定義中的流程刪除則是刪除流程定義,同時將該流程下所有的流程實例一并刪除。

2)任務(wù)管理

任務(wù)管理提供協(xié)同會商對任務(wù)的統(tǒng)一管理接口,支持對流程運轉(zhuǎn)中的任務(wù)進行提交、分派等處理操作,推動流程的流轉(zhuǎn)。任務(wù)管理類資源包括了任務(wù)完成、任務(wù)分派、任務(wù)獲取、任務(wù)查詢、任務(wù)執(zhí)行參數(shù)獲取,見表3。

當(dāng)流程實例化,協(xié)同會商可以通過流程環(huán)節(jié)的參與者或參與者角色查詢對應(yīng)的任務(wù)列表,并通過請求任務(wù)完成資源提交任務(wù),推動流程的進程。當(dāng)任務(wù)僅指定了參與者角色,尚未指定具體執(zhí)行者時,協(xié)同會商通過調(diào)用任務(wù)分派資源將任務(wù)分派至具體的執(zhí)行者。當(dāng)任務(wù)已指定執(zhí)行者但執(zhí)行中需要更改執(zhí)行者,則可通過任務(wù)重分派資源修改任務(wù)的執(zhí)行者。任務(wù)分派、完成和重分派資源均支持通過POST請求方式傳遞任務(wù)處理所需的參數(shù)信息。

協(xié)同會商與流程服務(wù)提供的資源接口之間的交互數(shù)據(jù)格式采用JSON格式,資源接口接收JSON格式的輸入?yún)?shù),并返回JSON格式的響應(yīng)信息。

3)應(yīng)用協(xié)同

應(yīng)用協(xié)同提供用戶管理、空間管理和消息收發(fā)接口,見表4。

應(yīng)用協(xié)同提供靜態(tài)信息查詢控制和動態(tài)信息操作兩類資源,其中靜態(tài)信息查詢控制均采用REST模式對外發(fā)布資源,主要包括用戶查詢、用戶創(chuàng)建、用戶刪除、協(xié)作空間查詢、協(xié)作空間創(chuàng)建和協(xié)作空間刪除;動態(tài)信息操作均采用HTML5中WebSocket技術(shù),完成全雙工的瀏覽器與服務(wù)器交互,主要包括系統(tǒng)接人、加入空間、退出空間、消息發(fā)送、消息接收和狀態(tài)感知。

3結(jié)束語

本文介紹了采用工作流技術(shù)實現(xiàn)的多用戶協(xié)同會商模式,研究了流程化協(xié)同會商模型,并對其中流程任務(wù)封裝、流程編排與模板套用、流程動態(tài)管控技術(shù)進行深入分析,最后完成了基于工作流的協(xié)同會商系統(tǒng)結(jié)構(gòu)設(shè)計和交互接口設(shè)計。目前基于工作流的協(xié)同會商模型已應(yīng)用于B/S模式的協(xié)同會商系統(tǒng)中,填補了系統(tǒng)對于具有嚴格會議議程要求協(xié)同會商場景的空白,能夠支撐網(wǎng)絡(luò)環(huán)境下規(guī)程化電子會議的有序開展。下一階段,考慮在本文的工作基礎(chǔ)上進一步拓展流程化協(xié)同會商的應(yīng)用領(lǐng)域,進一步優(yōu)化現(xiàn)有系統(tǒng)。

猜你喜歡
工作流
支持節(jié)點協(xié)同的工作流模型構(gòu)建方法研究
基于工作流2.0的智慧教室設(shè)計與研究
工作流在電力生產(chǎn)管理信息系統(tǒng)中的設(shè)計和應(yīng)用
基于J2EE的電子政務(wù)系統(tǒng)研究與應(yīng)用
基于J2EE的電子政務(wù)系統(tǒng)研究與應(yīng)用
404 Not Found

404 Not Found


nginx
新竹市| 绩溪县| 蚌埠市| 台北县| 清徐县| 临汾市| 永宁县| 陆河县| 西吉县| 绵阳市| 扶沟县| 三门县| 黄陵县| 元谋县| 葫芦岛市| 富宁县| 丁青县| 阿拉善右旗| 宜城市| 博爱县| 丘北县| 新兴县| 东方市| 凭祥市| 琼海市| 建宁县| 客服| 徐闻县| 漳浦县| 宕昌县| 平舆县| 前郭尔| 浦县| 巩留县| 海门市| 黔江区| 道真| 新竹县| 隆德县| 司法| 阿图什市|