


下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、基于工作流引擎的信息系統(tǒng)通用框架設(shè)計(jì)1.1.1框架模型SysUser表是記錄系統(tǒng)所有用戶信息的地方,包括系統(tǒng)的認(rèn)證,其中IfOnLeave表示用戶是否處在休假,IfLogging表示相關(guān)的用戶是否登錄到系統(tǒng)。這兩個(gè)信息在工作流引擎中 將被作為任務(wù)分配的提示信息。UserInFunc/RoleInFunc表是用來表示系統(tǒng)用戶 /角色和系統(tǒng)模塊之間的關(guān)系,記錄不同的用戶/角色擁有哪些不同的模塊,以及對(duì)該模塊的操作權(quán)限。Department和Team分別表示部門和團(tuán)隊(duì), 部門通常表示縱向的行政隸屬關(guān)系, 而團(tuán)隊(duì) 通常表示橫向的合作關(guān)系。 Department和Team分別通過相應(yīng)的 SuperDep
2、tID和SuperTeamID 關(guān)聯(lián)使得在部門之間和團(tuán)隊(duì)之間分別形成樹狀的上下級(jí)關(guān)系。機(jī)構(gòu)模型中的部門、團(tuán)隊(duì)、人員以及相互間的關(guān)系為大型企業(yè)尤其是從事技術(shù)工作的 企業(yè)的機(jī)構(gòu)建模提供了有力的支持,同時(shí)也為現(xiàn)代企業(yè)流行的管理模式一一“矩陣管理”提供了支持。當(dāng)然,對(duì)于小型機(jī)構(gòu)而言,完全可以考慮只定義 Department或者Team其中之一。 由于Department和Team之間在ER圖中并無聯(lián)系,因此缺少其中一個(gè)并不會(huì)破壞機(jī)構(gòu)模型 的完整性。1.1.2信息模型信息模型的核心是控制節(jié)點(diǎn)表ControlNode,其他相關(guān)的表結(jié)構(gòu)主要有業(yè)務(wù)過程Process、活動(dòng)節(jié)點(diǎn)表 Activity、任務(wù)指派規(guī)則
3、表 AssignRule、任務(wù)狀態(tài)表 TaskStatus任務(wù)列 表ToDoTaskList以及已完成的任務(wù)列表HaveDoneTasks。1、活動(dòng)類型每個(gè)業(yè)務(wù)過程由若干業(yè)務(wù)活動(dòng)組成,不同的業(yè)務(wù)活動(dòng)通過各不相同的ActID來唯一標(biāo)識(shí),ActType則指明相應(yīng)活動(dòng)的類型。同一個(gè)業(yè)務(wù)活動(dòng)在工作流運(yùn)行時(shí)可能具有多個(gè)實(shí)例(instanee)。我們將活動(dòng)的實(shí)例稱為任務(wù),將屬于同一業(yè)務(wù)過程的任務(wù)稱為屬于同一批次的任務(wù)。有的業(yè)務(wù)活動(dòng)可能針對(duì)具體的業(yè)務(wù)環(huán)節(jié),即在前臺(tái)(后臺(tái))對(duì)應(yīng)實(shí)際的應(yīng)用邏輯;有 的業(yè)務(wù)活動(dòng)則不針對(duì)具體的業(yè)務(wù)環(huán)節(jié)?;顒?dòng)類型分類見表1:表1活動(dòng)名中文名說明INITIAL初始化活動(dòng)業(yè)務(wù)過程的第一個(gè)
4、活動(dòng),不針對(duì)具體業(yè)務(wù)環(huán)節(jié)。NORMAL常規(guī)交互活動(dòng)一般的人機(jī)交互活動(dòng)類型DUMMY啞活動(dòng)不針對(duì)具體業(yè)務(wù)環(huán)節(jié),它可以作為某些活動(dòng)的虛擬后繼活動(dòng),還 可以使用它來構(gòu)造更為復(fù)雜的業(yè)務(wù)規(guī)則。COMPLETION終結(jié)活動(dòng)表明相應(yīng)業(yè)務(wù)過程的終結(jié),不針對(duì)具體業(yè)務(wù)環(huán)節(jié)。2、控制類型控制節(jié)點(diǎn)表ControlNode中的CtrNodeType表示控制節(jié)點(diǎn)的類型,按照前文的分析,控 制節(jié)點(diǎn)的類型見表 2:表2控制類型名中文名說明DIRECT無條件轉(zhuǎn)移不做任何動(dòng)作,直接激活下一個(gè)節(jié)點(diǎn)。AND_BRANCH與分支控制流經(jīng)此處的任務(wù)將進(jìn)行與分支,通過查找TaskStatus表來決定下一動(dòng) 作。AND_MERGE與合并控制
5、流經(jīng)此處的任務(wù)將進(jìn)行與合并同步,通過查找TaskStatus表來決定下 一動(dòng)作。OR_BRANCH或分支控制流經(jīng)此處的任務(wù)將進(jìn)行或分支,通過查找TaskStatus表來決定下一動(dòng) 作。OR_MERGE或合并控制流經(jīng)此處的任務(wù)將進(jìn)行或合并同步,通過查找TaskStatus表來決定下 一動(dòng)作。VOTE_MERGE投票合并控制通過查找TaskStatus表來決定投票結(jié)果。上面所定義的6中控制類型的節(jié)點(diǎn),若不能滿足業(yè)務(wù)要求,可以自定義其他的控制節(jié) 點(diǎn)類型。3、任務(wù)狀態(tài)任務(wù)狀態(tài)表TaskStatus實(shí)際就是一個(gè)保存一個(gè)流程實(shí)例的所有活動(dòng)節(jié)點(diǎn)的狀態(tài)圖集。該表在一個(gè)流程實(shí)例產(chǎn)生之時(shí)一并產(chǎn)生所有活動(dòng)節(jié)點(diǎn)的初始
6、狀態(tài)。生成以后則由控制節(jié)點(diǎn)來動(dòng)態(tài)修改其狀態(tài)。任何活動(dòng)節(jié)點(diǎn)實(shí)例的狀態(tài)可能如表3:表3任務(wù)狀態(tài)名中文名說明SLEEPING睡眠狀態(tài)流程實(shí)例創(chuàng)建時(shí)統(tǒng)一設(shè)置所有活動(dòng)節(jié)點(diǎn)為該狀態(tài),等待喚醒。WAITING就緒狀態(tài)前趨控制節(jié)點(diǎn)將活動(dòng)喚醒,等待人工處理。PROCESSING處理狀態(tài)表示正在進(jìn)行人工處理,等待處理結(jié)果。DONE_PASSED處理結(jié)束通過狀態(tài)表示人工處理結(jié)束,移交給控制節(jié)點(diǎn)繼續(xù)下一步處理。DONE_VETOED處理結(jié)束未通過狀 態(tài)表示人工處理結(jié)束,處理意見為“否決”,同時(shí)移交給控制節(jié)點(diǎn) 繼續(xù)下一步處理。表TaskStatus實(shí)際上是一個(gè)流程實(shí)例的狀態(tài)圖,在流程創(chuàng)建初期一并創(chuàng)建。一個(gè)活動(dòng)可以同時(shí)具
7、有多個(gè)實(shí)例,即任務(wù),這些實(shí)例可以是屬于統(tǒng)一批次的,也可能屬于不同批次,表TaskStatus中SerialNo (流水號(hào))來標(biāo)識(shí)任務(wù)所屬的批次,所有屬于同一批次的任務(wù)具有相 同的流水號(hào)。不同的任務(wù)之間則通過唯一的SerialNo進(jìn)行標(biāo)識(shí)。4、任務(wù)隊(duì)列和已完成任務(wù)隊(duì)列任務(wù)隊(duì)列ToDoTaskList用于記錄那些已經(jīng)創(chuàng)建但尚未完成的任務(wù)。根據(jù)控制算法,在表TaskStatus中將后繼節(jié)點(diǎn)狀態(tài)設(shè)置為 WAITING,同時(shí)向ToDoTaskList表中添加一條信息, 系統(tǒng)的用戶在登錄后,可以通過查詢這個(gè)任務(wù)隊(duì)列,看到該任務(wù)。在用戶處理過程中時(shí),將它設(shè)為PROCESSING狀態(tài),防止其他用戶對(duì)正在處理的
8、任務(wù)又進(jìn)行處理,造成結(jié)果不一致。已完成任務(wù)隊(duì)列 HaveDoneTasks用于記錄那些已經(jīng)正常結(jié)束的任務(wù),CompletionFlag表示相應(yīng)任務(wù)的結(jié)束標(biāo)記。UserID表示執(zhí)行此任務(wù)的實(shí)際人員,GrantorID若不為空,則表示此次任務(wù)的執(zhí)行過程是經(jīng)過授權(quán)的,GrantorID指明相應(yīng)的授權(quán)人員。1.1.3任務(wù)指派任務(wù)指派是指依照某種規(guī)則將任務(wù)分配給具體人員來執(zhí)行。只有常規(guī)交互活動(dòng)才涉及 到任務(wù)指派的問題;其他活動(dòng)要么在前臺(tái)不具備實(shí)際的應(yīng)用邏輯,要么由工作流引擎自動(dòng)調(diào)用,因此與任務(wù)指派無關(guān)。在前文中已經(jīng)提到了許多表和字段將聯(lián)合用于工作流引擎的任務(wù)指派,其核心表結(jié)構(gòu)為AssignRule,每一
9、個(gè)常規(guī)交互活動(dòng)在AssignRule表都對(duì)應(yīng)一條記錄。BasedOn指明任務(wù)指派的基準(zhǔn),它可以取值見表4之一:表4指派規(guī)則說明DEPT_BASED基于部門進(jìn)行任務(wù)指派,DeptID用于指定執(zhí)行此活動(dòng)的部門。TEAM_BASED基于團(tuán)隊(duì)進(jìn)行任務(wù)指派,TeamID用于指定執(zhí)行此活動(dòng)的團(tuán)隊(duì)。ROLE_BASED基于角色進(jìn)行任務(wù)指派,RoleID用于指定執(zhí)行此活動(dòng)的角色。USER_DEFINED基于自定義的方式進(jìn)行任務(wù)指派,ExeFuncID指明相應(yīng)的自定義執(zhí)行程序。任務(wù)指派的基準(zhǔn)確定了可以執(zhí)行相應(yīng)任務(wù)的群體,具體指派到哪些實(shí)際人員還取決于任務(wù)指派方法Method,Method可以取值見表5:表5任務(wù)
10、指派方法說明ALL任務(wù)將分配給由BasedOn指定的群體中的所有人員。LEAST_WORKING_LIST任務(wù)將分配給指定群體中的工作量最少的人員,工作量的多少可以通過ToDoTaskList的統(tǒng)計(jì)數(shù)據(jù)得到。FCFA先來先分配,即將任務(wù)隊(duì)列中最早創(chuàng)建的任務(wù)分配給相應(yīng)群體中最先提岀 執(zhí)行任務(wù)請(qǐng)求的個(gè)體,任務(wù)的創(chuàng)建時(shí)間由DateCreated指示。PRIORITY基于優(yōu)先數(shù)分配,只適合于ROLE_BASED任務(wù)指派基準(zhǔn)。在表UserlnRole 中有個(gè)字段PriorityNo用于指定相應(yīng)人員的優(yōu)先級(jí)。本例中指列出了四種指派方法,用戶可以根據(jù)具體需要來添加新的任務(wù)指派方法。1.2控制模型控制模型將信
11、息模型、機(jī)構(gòu)模型和框架模型有機(jī)的結(jié)合在一起,它根據(jù)其中定義的業(yè)務(wù)規(guī)則來流轉(zhuǎn)業(yè)務(wù) 流程,控制模型是工 作引擎的控制中心。圖2是基于工作 引擎的信息系統(tǒng)通 用框架的結(jié)構(gòu)圖。調(diào)度中心 調(diào)度中心接受 從個(gè)性化界面(外部 接口)發(fā)送過來流程 控制的請(qǐng)求(如業(yè)務(wù) 初始化、獲取任務(wù)以 及結(jié)束任務(wù)等),根 據(jù)不同的請(qǐng)求類型I信息模型機(jī)構(gòu)模型框架模型個(gè)性化用戶界面日志信息調(diào)用相應(yīng)的處理模塊完成與本次請(qǐng)求相關(guān)的操作并將結(jié)果返回。該操作是基于DBMS的并發(fā)機(jī)制和鎖機(jī)制來實(shí)現(xiàn)工作流引擎的控制模型, 不需要諸如請(qǐng)求隊(duì)列等形式的數(shù)據(jù)結(jié)構(gòu)。 從而實(shí)現(xiàn)了多個(gè)外部請(qǐng)求之間的獨(dú)立性。狀態(tài)圖管理調(diào)度中心在收到活動(dòng)節(jié)點(diǎn)狀態(tài)變化觸發(fā)之
12、后,根據(jù)其后繼控制節(jié)點(diǎn)的類型,調(diào)用不同的算法,計(jì)算并設(shè)置 控制節(jié)點(diǎn)后繼節(jié)點(diǎn)的 狀態(tài),來生成狀態(tài)圖。 所涉及到狀態(tài)圖中活 動(dòng)節(jié)點(diǎn)的各種狀態(tài)見 表3,他們之間的轉(zhuǎn)換 關(guān)系見圖3。任務(wù)管理任務(wù)管理主要根據(jù)調(diào)度中心的指示完成諸如任務(wù)創(chuàng)建、任務(wù)狀態(tài)的轉(zhuǎn)換以及相關(guān)數(shù)據(jù) 的維護(hù)等工作。每次“結(jié)束任務(wù)”的外部請(qǐng)求將觸發(fā)調(diào)度中心調(diào)用“任務(wù)管理”為后繼活動(dòng) (如果存在的話)創(chuàng)建新的實(shí)例;同時(shí),其他不同的外部請(qǐng)求也將觸發(fā)“任務(wù)管理”實(shí)施任 務(wù)狀態(tài)的切換。任務(wù)指派任務(wù)指派處理只是針對(duì) NORMAL活動(dòng),通常情況下,在任務(wù)狀態(tài)由“SLEEPING ”切換到“ WAITING ”過程中完成任務(wù)的指派工作,即處于就緒狀態(tài)的任務(wù)在通常情況下都確定了 其執(zhí)行者(FCFA除外)。任務(wù)指派過程首先根據(jù)任務(wù)指派基準(zhǔn)確定可以執(zhí)行此任務(wù)的群體人 員,通常情況下這是一個(gè)包含多個(gè)人員的集合;然后根據(jù)任務(wù)指派方法確定由這個(gè)群體中的哪些個(gè)體來執(zhí)行任務(wù),執(zhí)行任務(wù)的個(gè)體標(biāo)識(shí)記錄在相應(yīng)任務(wù)記錄的UserID字段中。在前面已經(jīng)對(duì)任務(wù)指派方法進(jìn)行了解釋
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025至2030年中國擴(kuò)散硅動(dòng)變送器數(shù)據(jù)監(jiān)測研究報(bào)告
- 2025至2030年中國天然乳膠數(shù)據(jù)監(jiān)測研究報(bào)告
- 肝移植心理護(hù)理
- 2025至2030年中國全自動(dòng)五頭軋花機(jī)數(shù)據(jù)監(jiān)測研究報(bào)告
- 二零二五年度貨車駕駛員勞動(dòng)合同及運(yùn)輸服務(wù)質(zhì)量承諾合同
- 二零二五年度家裝工程驗(yàn)收及保修協(xié)議
- 二零二五年度甲級(jí)寫字樓租賃合同(含5A智能化)
- 二零二五年度電子支付服務(wù)退款協(xié)議
- 二零二五年度影視制作勞務(wù)費(fèi)合同范本
- 二零二五年度雇主免責(zé)協(xié)議書:人工智能研發(fā)項(xiàng)目風(fēng)險(xiǎn)免責(zé)條款
- 2025年湖南環(huán)境生物職業(yè)技術(shù)學(xué)院單招職業(yè)技能測試題庫及答案一套
- 14 文言文二則 學(xué)弈 教學(xué)設(shè)計(jì)-2024-2025學(xué)年語文六年級(jí)下冊(cè)統(tǒng)編版
- Unit 4 Eat Well(大單元教學(xué)設(shè)計(jì))2024-2025學(xué)年七年級(jí)英語下冊(cè)同步備課系列(人教版2024)
- 2024-2030年中國游戲直播行業(yè)市場深度分析及投資策略研究報(bào)告
- 統(tǒng)編版小學(xué)語文六年級(jí)下冊(cè)第四單元《理想和信念》作業(yè)設(shè)計(jì)
- 2025年春季學(xué)期學(xué)校工作計(jì)劃及安排表
- 化驗(yàn)班組安全培訓(xùn)
- 英語-廣東省大灣區(qū)2025屆高三第一次模擬試卷和答案
- 丹佛斯變頻器培訓(xùn)經(jīng)典課件
- 2024年06月日照銀行社會(huì)招聘筆試歷年參考題庫附帶答案詳解
- 烤房租賃合同范例
評(píng)論
0/150
提交評(píng)論