国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      一種基于指令鏈的可靠性與性能一體化柔性工作流實現(xiàn)方法

      文檔序號:6539123閱讀:250來源:國知局
      一種基于指令鏈的可靠性與性能一體化柔性工作流實現(xiàn)方法
      【專利摘要】一種基于指令鏈的可靠性與性能一體化柔性工作流實現(xiàn)方法,它有四大步驟:一:定義指令集;包括定義業(yè)務(wù)項與執(zhí)行方式,指定業(yè)務(wù)項執(zhí)行者及其工作方式,定義工作時間,編輯工具、附件和說明,定義業(yè)務(wù)項ID以及業(yè)務(wù)項輸入項ID,生成業(yè)務(wù)項初始狀態(tài),以及簽發(fā)者信息;二:自動生成基于指令鏈的柔性工作流;通過解析任務(wù)執(zhí)行方式以及關(guān)聯(lián)的業(yè)務(wù)項構(gòu)建工作流邏輯,解析執(zhí)行者信息形成初始個人工作列表;三:指令運行與監(jiān)控;驅(qū)動指令運行,并根據(jù)指令的簽收與完成情況,即時調(diào)整業(yè)務(wù)項狀態(tài)及個人工作列表并進行監(jiān)控;四:指令動態(tài)調(diào)整;在基于指令的工作流執(zhí)行過程中,根據(jù)執(zhí)行情況動態(tài)的調(diào)整指令。本發(fā)明在計算機【技術(shù)領(lǐng)域】里有廣闊地應(yīng)用前景。
      【專利說明】一種基于指令鏈的可靠性與性能一體化柔性工作流實現(xiàn)方法
      【技術(shù)領(lǐng)域】
      [0001]本發(fā)明提供一種基于指令鏈的可靠性與性能一體化柔性工作流實現(xiàn)方法,尤其涉及一種基于指令鏈方式,用于企業(yè)可靠性與性能一體化研發(fā)過程管控的柔性工作流實現(xiàn)方法,屬于計算機【技術(shù)領(lǐng)域】。
      【背景技術(shù)】
      [0002]工作流(Workflow)技術(shù)本質(zhì)是“使業(yè)務(wù)過程的部分或整體在計算機應(yīng)用環(huán)境下的自動化”,它可以支持多個參與者之間按照某種預(yù)定義的規(guī)則在計算機協(xié)同工作模式(Computer Supported Cooperative work, CSCff)下,自動化的傳遞文檔、信息或任務(wù)的過程從而實現(xiàn)某個預(yù)期的目標,目前已廣泛應(yīng)用于現(xiàn)代化企業(yè)的日常研發(fā)工作中。
      [0003]傳統(tǒng)工作流技術(shù)主要用于相對固化的業(yè)務(wù)過程,近年來,為有效處理企業(yè)的各類非確定型業(yè)務(wù)及意外情況,近年來研究者開始進行工作流柔性化的相關(guān)工作,如提出“選擇-調(diào)整”、“異常處理”等柔性化策略。但相較于一般的業(yè)務(wù)過程,企業(yè)的可靠性工作具有項目多,耦合多、反復(fù)權(quán)衡迭代多、反饋分支不確定等特點,此外部分可靠性工作項具有可選性,且開展時機,開展程度受研發(fā)過程進展、費用、進度等多因素影響,不宜固化。因此,當(dāng)將可靠性工作納入產(chǎn)品研發(fā)過程,形成可靠性與性能一體化研發(fā)過程時,簡單的工作流柔化技術(shù)難以取得理想效果,有必要從需求出發(fā),直接給出一種支持可靠性與性能一體化研發(fā)過程的柔性工作流。

      【發(fā)明內(nèi)容】

      [0004]本發(fā)明的目的為企業(yè)的研發(fā)過程提供一種柔性工作流,旨在解決可靠性工作融入企業(yè)可研發(fā)過程后,傳統(tǒng)工作流技術(shù)無法有效處理可靠性工作項多且不確定、耦合項多、迭代多、分支不確定等問題。
      [0005]本發(fā)明的目的是提供了一種基于指令鏈的可靠性與性能一體化柔性工作流的實現(xiàn)方法,它主要包含以下步驟:
      [0006]步驟一:定義指令集。
      [0007]包括定義業(yè)務(wù)項與執(zhí)行方式,指定業(yè)務(wù)項執(zhí)行者及其工作方式,定義工作時間,編輯工具、附件和說明,定義業(yè)務(wù)項ID以及業(yè)務(wù)項輸入項ID,生成業(yè)務(wù)項初始狀態(tài),以及簽發(fā)
      者信息。
      [0008](I)定義業(yè)務(wù)項,可以填入多個業(yè)務(wù)項。其執(zhí)行方式為N/K (N中取K模式),N為業(yè)務(wù)項數(shù)量,根據(jù)輸入的業(yè)務(wù)項數(shù)量自動生成。K取值范圍是[1-N],且默認值為N。即默認執(zhí)行方式是并發(fā)業(yè)務(wù),也可把K值調(diào)整為I…N-1,此時表示各分支完成K項業(yè)務(wù),即可以認為該指令集完成。
      [0009](2)指定業(yè)務(wù)執(zhí)行者,可以針對同一業(yè)務(wù)項指定多個執(zhí)行者。其執(zhí)行方式為N/K(N中取K模式),N為業(yè)務(wù)執(zhí)行者數(shù)量,根據(jù)輸入的執(zhí)行者名單自動生成。K取值范圍是[1-N],且默認值為1。即默認工作方式是有一名執(zhí)行者完成業(yè)務(wù)即可。也可把K值調(diào)整為2…N,此時表示至少K個人簽收業(yè)務(wù)才可以。
      [0010](3)業(yè)務(wù)項工作時間指定,必須指定該業(yè)務(wù)項的三個時間,即開始時間,結(jié)束時間以及告警時間(即接近完成給予警示的時間),要求開始時間早于告警時間,告警時間早于結(jié)束時間。同時當(dāng)前業(yè)務(wù)項的開始時間不能早于其輸入業(yè)務(wù)項的開始時間。
      [0011](4)基于ID編號的業(yè)務(wù)項邏輯定義,首先定義當(dāng)前業(yè)務(wù)項的ID編號,采用自動編號方式,然后編輯輸入業(yè)務(wù)項的ID編號,默認為空,即沒有輸入業(yè)務(wù)項。
      [0012](5)編輯業(yè)務(wù)項輔助信息,包括編輯工具,可以為業(yè)務(wù)項指定軟件工具(含激活方式);編輯附件,可以為業(yè)務(wù)項添加文檔、文件作為參考;此外可以編輯業(yè)務(wù)項說明,通過文本方式對業(yè)務(wù)項進行進一步說明。
      [0013](6)簽發(fā)指令,當(dāng)指令的所有信息編輯完并確認后,可以簽發(fā)指令。在這一過程中,“業(yè)務(wù)項狀態(tài)”默認填入“未簽收”,“指令簽發(fā)人”默認填入指令編輯者的信息。
      [0014]步驟二:自動生成基于指令鏈的柔性工作流。
      [0015]通過解析任務(wù)執(zhí)行方式以及關(guān)聯(lián)的業(yè)務(wù)項構(gòu)建工作流邏輯,解析執(zhí)行者信息形成初始個人工作列表。
      [0016](1)解析指令集的任務(wù)執(zhí)行方式,N=1時,為單項工作,N>1,且K=N,則為并發(fā)業(yè)務(wù)。當(dāng)N>1,且1≤K〈N時,為K/N業(yè)務(wù),對指令集中的業(yè)務(wù)項添加K/N監(jiān)控標記。
      [0017](2)解析關(guān)聯(lián)業(yè)務(wù)項,構(gòu)建工作流邏輯。根據(jù)當(dāng)前業(yè)務(wù)項的輸入項ID建立業(yè)務(wù)項的輸入輸出關(guān)系矩陣A。在A中,如果業(yè)務(wù)項i對業(yè)務(wù)項j有輸入,則A的元素au=l,否則為0,此外規(guī)定an=0。如果業(yè)務(wù)項i對業(yè)務(wù)項j有輸入,且i有并發(fā)或K/N業(yè)務(wù)項k,則默認k對j有輸入,即aw=l。根據(jù)矩陣與圖的轉(zhuǎn)換關(guān)系,即可生成流程圖。
      [0018]在生成流程圖的過程中,如果某業(yè)務(wù)項沒有任何輸入和輸出,則判定為單項獨立業(yè)務(wù),如果某業(yè)務(wù)項只有輸出,則為工作流的起點,如果某業(yè)務(wù)項只有輸入,則為工作流的匯點,如果某個業(yè)務(wù)項既有輸入也有輸出,則是工作流的中間環(huán)節(jié)。
      [0019](3)解析執(zhí)行者信息,配置初始個人工作列表。根據(jù)執(zhí)行者名單,將該業(yè)務(wù)項推送至所有執(zhí)行者的當(dāng)前工作列表中,主要信息包括業(yè)務(wù)項的工作時間、工具、附件、業(yè)務(wù)項說明以及簽發(fā)者等,同時賦予指令初始狀態(tài)為“未簽收”。如果N>1,且1≤K<N時,還需要為相關(guān)執(zhí)行者添加K/N監(jiān)控標記。
      [0020]步驟三:指令運行與監(jiān)控
      [0021]驅(qū)動指令運行,并根據(jù)指令的簽收與完成情況,即時調(diào)整業(yè)務(wù)項狀態(tài)及個人工作列表。并進行監(jiān)控。
      [0022](1)簽收狀態(tài)變更。當(dāng)執(zhí)行者簽收任務(wù)后,則該工作列表中該業(yè)務(wù)項狀態(tài)從“未簽收”變更為“已簽收”。同時對于添加K/N監(jiān)控標簽的執(zhí)行者,只要有K個執(zhí)行者進行簽收,則其余N-K個人的工作列表中自動刪除該業(yè)務(wù)項。
      [0023](2)完成狀態(tài)變更。在任務(wù)截止時間內(nèi)完成任務(wù),并進行了提交,則該業(yè)務(wù)項狀態(tài)變更為“已完成”,同時移至歷史工作列表中。如果輸入任務(wù)項狀態(tài)未變更為已完成,則不允許提交任務(wù)。如果業(yè)務(wù)項添加K/N標簽(即在同一指令集內(nèi)存在N>1,且1 ≤ K〈N時的情況),當(dāng)有K項任務(wù)被提交,則其余N-K個業(yè)務(wù)項的狀態(tài)更為“已完成”,并移至歷史工作列表中。[0024](3)告警狀態(tài)變更。無論執(zhí)行者是否簽收業(yè)務(wù)項,只要超出告警時間,仍未提交,則該業(yè)務(wù)項狀態(tài)變更為“告警”。
      [0025](4)超時狀態(tài)變更。無論執(zhí)行者是否簽收業(yè)務(wù)項,只要超出完成時間,仍未提交,則該業(yè)務(wù)項狀態(tài)變更為“超時”。
      [0026](5)委托狀態(tài)變更。如果業(yè)務(wù)項發(fā)生了委托,則業(yè)務(wù)項狀態(tài)變更為“委托”,該業(yè)務(wù)項一方面轉(zhuǎn)移到當(dāng)前執(zhí)行者的歷史工作列表,另一方面同時推送至新執(zhí)行者的個人工作列表中。
      [0027](6)異常狀態(tài)變更。如果業(yè)務(wù)項被指令簽發(fā)者掛起,則變更“掛起”狀態(tài),無法操作,等待進一步指示,如果業(yè)務(wù)項最終被指令簽發(fā)者中止,則業(yè)務(wù)項狀態(tài)變更為“中止”,并移至歷史工作列表。
      [0028](7)指令運行情況監(jiān)控。記錄各指令完成情況,推送至初始簽發(fā)者。當(dāng)出現(xiàn)委托、告警和超時情況時,需提醒簽發(fā)者。同時指令簽發(fā)者可以查看自己發(fā)出的所有指令(包括指令委托)的運行情況,查看方式是依據(jù)業(yè)務(wù)項關(guān)聯(lián)關(guān)系解析出的工作流邏輯。按照顏色對指令的完成情況進行標識,包括未簽收“白色”,已簽收“黃色”,已完成“綠色”,告警“紅色”,超時“黑色”,委托“紫色”。
      [0029]步驟四:指令動態(tài)調(diào)整
      [0030]在基于指令的工作流執(zhí)行過程中,根據(jù)執(zhí)行情況動態(tài)的調(diào)整指令。包括工作完成后的新指令定義、無法完成工作后的委托、流程出現(xiàn)異常時進行掛起及再定義。
      [0031](I)工作完成后,有后續(xù)工作需求,按情況自行定義后續(xù)工作指令集,操作同步驟一,但在輸入業(yè)務(wù)項內(nèi)自動填入已完成業(yè)務(wù)項,建立業(yè)務(wù)項關(guān)聯(lián)關(guān)系。
      [0032](2)無法完成工作后的委托,業(yè)務(wù)項處于未簽收或已簽收狀態(tài),出于不預(yù)知的原因(如出差,工作調(diào)動,請假)無法完成工作時,經(jīng)判斷時間充足,可以進行業(yè)務(wù)項委托,并指定新的業(yè)務(wù)執(zhí)行者。由引擎將該任務(wù)轉(zhuǎn)發(fā)至新的執(zhí)行者,并更新指令運行狀態(tài),支持監(jiān)控。
      [0033](3)無法完成工作后報告簽發(fā)者,業(yè)務(wù)項處于未簽收或已簽收狀態(tài),出于不預(yù)知的原因(如出差,工作調(diào)動,請假)無法完成工作時,經(jīng)判斷時間不充足,向簽發(fā)者進行報告。
      [0034](4)流程出現(xiàn)異常時掛起,指令簽發(fā)者收到無法完成任務(wù)的請求或監(jiān)控反饋回異常信息(如告警或超時)情況下,可以對流程進行掛起,異常業(yè)務(wù)項及其后續(xù)的相關(guān)業(yè)務(wù)項將被置于掛起狀態(tài),無法被操作。
      [0035]( 5 )流程再定義。當(dāng)流程掛起后,對異常業(yè)務(wù)項進行中止,并再定義新的業(yè)務(wù)項,包括更改業(yè)務(wù)項內(nèi)容、執(zhí)行時間和執(zhí)行者,如果更改涉及到關(guān)聯(lián)事項也需要同步進行處理。
      [0036]本發(fā)明通過以上步驟給出一種基于指令鏈的可靠性與性能一體化柔性工作流實現(xiàn)方法,可以有效支持企業(yè)復(fù)雜多變的可靠性與性能一體化研發(fā)過程。其優(yōu)點在于:①可以快速定制多個并發(fā)流程分支②可以靈活指定多人完成任務(wù)的方式③可以根據(jù)工作完成情況實現(xiàn)流程的邊執(zhí)行邊定義④可以對流程運行情況進行全面監(jiān)控并按需進行調(diào)整。
      【專利附圖】

      【附圖說明】
      [0037]圖1為本發(fā)明中所述方法的整體架構(gòu)框圖
      [0038]圖2為本發(fā)明中指令集定義的業(yè)務(wù)過程圖
      [0039]圖3為本發(fā)明中自動生成柔性工作流的業(yè)務(wù)過程圖[0040]圖4為本發(fā)明中解析工作流邏輯時,輸入輸出關(guān)系矩陣到流程圖的轉(zhuǎn)換過程
      [0041]圖5為本發(fā)明中指令運行與監(jiān)控的業(yè)務(wù)過程圖
      [0042]圖6為本發(fā)明中指令動態(tài)調(diào)整的業(yè)務(wù)過程圖
      【具體實施方式】
      [0043]為使本發(fā)明的技術(shù)方案、特征及優(yōu)點得到更清楚的了解,以下結(jié)合附圖,作詳細說明。本發(fā)明給出了一種基于指令鏈的可靠性與性能一體化柔性工作流程實現(xiàn)方法,可用于支持企業(yè)可靠性與性能一體化研發(fā)過程。本發(fā)明可用于通用計算機網(wǎng)絡(luò)環(huán)境中,如由服務(wù)器與個人計算機組成的網(wǎng)絡(luò),特別適用于Web化的B/S結(jié)構(gòu)。本發(fā)明可以由計算機程序模塊進行描述,通用的計算機程序模塊應(yīng)包括執(zhí)行特定任務(wù)的對象、組件、算法、變量等。本發(fā)明的整體架構(gòu),見圖1所示。其具體實施步驟是:
      [0044]步驟一:定義指令集,如圖2所示。
      [0045]主要工作內(nèi)容包括定義業(yè)務(wù)項與執(zhí)行方式,指定業(yè)務(wù)項執(zhí)行者及其工作方式,定義工作時間,編輯工具、附件和說明,定義業(yè)務(wù)項ID以及業(yè)務(wù)項輸入項ID,生成業(yè)務(wù)項初始狀態(tài),以及簽發(fā)者信息。
      [0046](I)定義業(yè)務(wù)項,可以填入多個業(yè)務(wù)項。其執(zhí)行方式為N/K (N中取K模式),N為業(yè)務(wù)項數(shù)量,根據(jù)輸入的業(yè)務(wù)項數(shù)量自動生成。K取值范圍是[1-N],且默認值為N。即默認執(zhí)行方式是并發(fā)業(yè)務(wù),也可把K值調(diào)整為I…N-1,此時表示各分支完成K項業(yè)務(wù),即可以認為該指令集完成。
      [0047]舉例如下:
      [0048]例I在同一指令集 下發(fā)布3個并發(fā)業(yè)務(wù)項,任意兩個完成即可完成該指令集。
      [0049]填入3個并發(fā)業(yè)務(wù)項的名稱,N=3,同時將K從3調(diào)整為2。然后定義相關(guān)業(yè)務(wù)項
      信息即可。
      [0050](2)指定業(yè)務(wù)執(zhí)行者,可以針對同一業(yè)務(wù)項指定多個執(zhí)行者。其執(zhí)行方式為N/K(N中取K模式),N為業(yè)務(wù)執(zhí)行者數(shù)量,根據(jù)輸入的執(zhí)行者名單自動生成。K取值范圍是[1-N],且默認值為I。即默認工作方式是有一名執(zhí)行者完成業(yè)務(wù)即可。也可把K值調(diào)整為2…N,此時表示至少K個人簽收業(yè)務(wù)才可以。
      [0051]舉例如下:
      [0052]例2某一個任務(wù),職員A、職員B、職員C任何兩個完成即可。
      [0053]在執(zhí)行人一欄填入職員A、職員B、職員C,N=3,再將K從默認值I調(diào)整為2即可。
      [0054](3)業(yè)務(wù)項工作時間指定,必須指定該業(yè)務(wù)項的三個時間,即開始時間,結(jié)束時間以及告警時間(即接近完成給予警示的時間),要求開始時間早于告警時間,告警時間早于結(jié)束時間。同時當(dāng)前業(yè)務(wù)項的開始時間不能早于其輸入業(yè)務(wù)項的開始時間。
      [0055](4)基于ID編號的業(yè)務(wù)項邏輯定義,首先定義當(dāng)前業(yè)務(wù)項的ID編號,采用自動編號方式,然后編輯輸入業(yè)務(wù)項的ID編號,默認為空,即沒有輸入業(yè)務(wù)項。
      [0056](5)編輯業(yè)務(wù)項輔助信息,包括編輯工具,可以為業(yè)務(wù)項指定軟件工具(含激活方式);編輯附件,可以為業(yè)務(wù)項添加文檔、文件作為參考;此外可以編輯業(yè)務(wù)項說明,通過文本方式對業(yè)務(wù)項進行進一步說明。
      [0057](6)簽發(fā)指令,當(dāng)指令的所有信息編輯完并確認后,可以簽發(fā)指令。在這一過程中,“業(yè)務(wù)項狀態(tài)”默認填入“未簽收”,“指令簽發(fā)人”默認填入指令編輯者的信息。
      [0058]步驟二:自動生成基于指令鏈的柔性工作流,如圖3所示。
      [0059]通過解析任務(wù)執(zhí)行方式以及關(guān)聯(lián)的業(yè)務(wù)項構(gòu)建工作流邏輯,解析執(zhí)行者信息形成初始個人工作列表。
      [0060](1)解析指令集的任務(wù)執(zhí)行方式,N=I時,為單項工作,N>1,且K=N,則為并發(fā)業(yè)務(wù)。當(dāng)N>1,且1≤K〈N時,為K/N業(yè)務(wù),對指令集中的業(yè)務(wù)項添加K/N監(jiān)控標記。
      [0061](2)解析關(guān)聯(lián)業(yè)務(wù)項,構(gòu)建工作流邏輯。根據(jù)當(dāng)前業(yè)務(wù)項的輸入項ID建立業(yè)務(wù)項的輸入輸出關(guān)系矩陣A。在A中,如果業(yè)務(wù)項i對業(yè)務(wù)項j有輸入,則A的元素au=l,否則為0,此外規(guī)定an=0。如果業(yè)務(wù)項i對業(yè)務(wù)項j有輸入,且i有并發(fā)或K/N業(yè)務(wù)項k,則默認k對j有輸入,即aw=l。根據(jù)矩陣與圖的轉(zhuǎn)換關(guān)系,即可生成流程圖。
      [0062]在生成流程圖的過程中,如果某業(yè)務(wù)項沒有任何輸入和輸出,則判定為單項獨立業(yè)務(wù),如果某業(yè)務(wù)項只有輸出,則為工作流的起點,如果某業(yè)務(wù)項只有輸入,則為工作流的匯點,如果某個業(yè)務(wù)項既有輸入也有輸出,則是工作流的中間環(huán)節(jié)。
      [0063]舉例如下:
      [0064]例3,假設(shè)有5項業(yè)務(wù)項,編號分別為A01,A02,A03,A04,A05。已知A02的輸入項是A01,A03的輸入項為AOI,A04的輸入項為A02和A03,A05的輸入項為A04,試解析工作
      流邏輯。
      [0065]如圖4所示,首先根據(jù)輸入項關(guān)系建立輸入輸出關(guān)系矩陣。按已知條件,可得a12=l, a13=l, a24=l, a34=l, a45=l,其他元素為0。然后根據(jù)矩陣與圖具有唯一的轉(zhuǎn)換關(guān)系,即可繪制出流程圖。在繪圖過程中,可以按照第I列“只有輸出”,判定AOl為起點??梢园凑盏?行“只有輸入”判定A05為匯點。其余節(jié)點為中間業(yè)務(wù)項。
      [0066](3)解析執(zhí)行者信息,配置初始個人工作列表。根據(jù)執(zhí)行者名單,將該業(yè)務(wù)項推送至所有執(zhí)行者的當(dāng)前工作列表中,主要信息包括業(yè)務(wù)項的工作時間、工具、附件、業(yè)務(wù)項說明以及簽發(fā)者等,同時賦予指令初始狀態(tài)為“未簽收”。如果N>1,且1≤K<N時,還需要為相關(guān)執(zhí)行者添加K/N監(jiān)控標記。
      [0067]步驟三:指令運行與監(jiān)控,如圖5所示。
      [0068]驅(qū)動指令運行,并根據(jù)指令的簽收與完成情況,即時調(diào)整業(yè)務(wù)項狀態(tài)及個人工作列表。并進行監(jiān)控。
      [0069](1)簽收狀態(tài)變更。當(dāng)執(zhí)行者簽收任務(wù)后,則該工作列表中該業(yè)務(wù)項狀態(tài)從“未簽收”變更為“已簽收”。同時對于添加K/N監(jiān)控標簽的執(zhí)行者,只要有K個執(zhí)行者進行簽收,則其余N-K個人的工作列表中自動刪除該業(yè)務(wù)項。
      [0070]舉例如下:
      [0071]例4假設(shè)業(yè)務(wù)項S在指定任務(wù)執(zhí)行人時,相關(guān)職員為職員A、職員B、職員C,已知N=3, K=2,根據(jù)任務(wù)完成情況調(diào)整個人工作列表中業(yè)務(wù)項。
      [0072]首先,職員Α、B、C均可登陸后,在個人當(dāng)前工作列表中查看到業(yè)務(wù)項S,默認狀態(tài)為“未簽收”。假設(shè)職員Α、Β簽收了任務(wù),則Α、Β個人工作列表中仍然保留業(yè)務(wù)項S,狀態(tài)變?yōu)椤耙押炇铡?,C再次登陸后則在個人工作列表中無法再看到業(yè)務(wù)項S。
      [0073](2)完成狀態(tài)變更。如果在任務(wù)截止時間內(nèi)完成任務(wù),并進行了提交,則該業(yè)務(wù)項狀態(tài)變更為“已完成”,同時移至歷史工作列表中。如果輸入任務(wù)項狀態(tài)未變更為已完成,則不允許提交任務(wù)。如果業(yè)務(wù)項添加K/N標簽(即在同一指令集內(nèi)存在N>1,且I ( K〈N時的情況),當(dāng)有K項任務(wù)被提交,則其余N-K個業(yè)務(wù)項的狀態(tài)更為“已完成”,并移至歷史工作列表中。
      [0074]舉例如下:
      [0075]例5假設(shè)某一指令集包含3個業(yè)務(wù)項i,j, k,其執(zhí)行者分別為職員A、職員B、職員C。業(yè)務(wù)項執(zhí)行方式為N/K,N=3, K=2,根據(jù)任務(wù)完成情況調(diào)整個人工作列表中業(yè)務(wù)項。
      [0076]首先,各并發(fā)業(yè)務(wù)項被簽收后,狀態(tài)變更為“已簽收”,如果職員A和B都已經(jīng)完成工作并提交,則職員Α、B、C的個人工作別表中的業(yè)務(wù)項均變更為“已完成”,并轉(zhuǎn)移到歷史工作列表中。
      [0077](3)告警狀態(tài)變更。無論執(zhí)行者是否簽收業(yè)務(wù)項,只要超出告警時間,仍未提交,則該業(yè)務(wù)項狀態(tài)變更為“告警”。
      [0078](4)超時狀態(tài)變更。無論執(zhí)行者是否簽收業(yè)務(wù)項,只要超出完成時間,仍未提交,則該業(yè)務(wù)項狀態(tài)變更為“超時”。
      [0079](5)委托狀態(tài)變更。如果業(yè)務(wù)項發(fā)生了委托,則業(yè)務(wù)項狀態(tài)變更為“委托”,該業(yè)務(wù)項一方面轉(zhuǎn)移到當(dāng)前執(zhí)行者的歷史工作列表,另一方面同時推送至新執(zhí)行者的個人工作列表中。
      [0080](6)異常狀態(tài)變更。如果業(yè)務(wù)項被指令簽發(fā)者掛起,則變更“掛起”狀態(tài),無法操作,等待進一步指示,如果業(yè)務(wù)項最終被指令簽發(fā)者中止,則業(yè)務(wù)項狀態(tài)變更為“中止”,并移至歷史工作列表。
      [0081](7)指令運行情況監(jiān)控。記錄各指令完成情況,推送至初始簽發(fā)者。當(dāng)出現(xiàn)委托、告警和超時情況時,需提醒簽發(fā)者。同時指令簽發(fā)者可以查看自己發(fā)出的所有指令(包括指令委托)的運行情況,查看方式是依據(jù)業(yè)務(wù)項關(guān)聯(lián)關(guān)系解析出的工作流邏輯。按照顏色對指令的完成情況進行標識,包括未簽收“白色”,已簽收“黃色”,已完成“綠色”,告警“紅色”,超時“黑色”,委托“紫色”。
      [0082]步驟四:指令動態(tài)調(diào)整,如圖6所示。
      [0083]在基于指令的工作流執(zhí)行過程中,根據(jù)執(zhí)行情況動態(tài)的調(diào)整指令。包括工作完成后的新指令定義、無法完成工作后的委托、流程出現(xiàn)異常時進行掛起及再定義。
      [0084]( I)工作完成后,有后續(xù)工作需求,按情況自行定義后續(xù)工作指令集,操作同步驟一,但在輸入業(yè)務(wù)項內(nèi)自動填入已完成業(yè)務(wù)項,建立業(yè)務(wù)項關(guān)聯(lián)關(guān)系。
      [0085](2)無法完成工作后的委托,業(yè)務(wù)項處于未簽收或已簽收狀態(tài),出于不預(yù)知的原因(如出差,工作調(diào)動,請假)無法完成工作時,經(jīng)判斷時間充足,可以進行業(yè)務(wù)項委托,并指定新的業(yè)務(wù)執(zhí)行者。由引擎將該任務(wù)轉(zhuǎn)發(fā)至新的執(zhí)行者,并更新指令運行狀態(tài),支持監(jiān)控。
      [0086](3)無法完成工作后報告簽發(fā)者,業(yè)務(wù)項處于未簽收或已簽收狀態(tài),出于不預(yù)知的原因(如出差,工作調(diào)動,請假)無法完成工作時,經(jīng)判斷時間不充足,向簽發(fā)者進行報告。
      [0087](4)流程出現(xiàn)異常時掛起,指令簽發(fā)者收到無法完成任務(wù)的請求或監(jiān)控反饋回異常信息(如告警或超時)情況下,可以對流程進行掛起,異常業(yè)務(wù)項及其后續(xù)的相關(guān)業(yè)務(wù)項將被置于掛起狀態(tài),無法被操作。
      [0088]舉例如下:
      [0089]例6已知5個業(yè)務(wù)項AOl到Α05,執(zhí)行人分別是職員Α_Ε。假設(shè)職員C在執(zhí)行Α03中已進入告警狀態(tài),但發(fā)現(xiàn)無法按時完成。同時指令初始簽發(fā)者未及時查看監(jiān)控流程運行情況。此外,A03是A04、A05的輸入項,試問如何處理。
      [0090]A03的執(zhí)行者職員C發(fā)現(xiàn)無法完成后,應(yīng)向指令初始簽發(fā)者匯報,初始簽發(fā)者接到通知后掛起A03、A04、A05。相關(guān)業(yè)務(wù)項執(zhí)行者職員C-E的個人工作列表中相關(guān)業(yè)務(wù)項狀態(tài)顯示掛起,無法執(zhí)行相關(guān)操作。
      [0091](5)流程再定義。當(dāng)流程掛起后,對異常業(yè)務(wù)項進行中止,并再定義新的指令集,包括更改業(yè)務(wù)項內(nèi)容、執(zhí)行時間和執(zhí)行者,如果更改涉及到關(guān)聯(lián)事項也需要同步進行處理。
      [0092]舉例如下:
      [0093]例7,接例6。初始簽發(fā)者認為A03應(yīng)該仍由職員C完成,同時延時后影響到業(yè)務(wù)A04,不影響A05,如何處理。
      [0094]初始簽發(fā)者,通過修改業(yè)務(wù)項A03的完成時間后,同步修改A04的相應(yīng)工作時間,然后重新啟動流程。業(yè)務(wù)A04不受任何影響。職員C-E個人工作列表中相關(guān)業(yè)務(wù)項狀態(tài)變更為“掛起”前狀態(tài)。如原來為“未簽收”,則仍為“未簽收”。
      【權(quán)利要求】
      1.一種基于指令鏈的可靠性與性能一體化柔性工作流實現(xiàn)方法,其特征在于:它包含以下步驟: 步驟一:定義指令集 包括定義業(yè)務(wù)項與執(zhí)行方式,指定業(yè)務(wù)項執(zhí)行者及其工作方式,定義工作時間,編輯工具、附件和說明,定義業(yè)務(wù)項ID以及業(yè)務(wù)項輸入項ID,生成業(yè)務(wù)項初始狀態(tài),以及簽發(fā)者信息; (1)定義業(yè)務(wù)項,可填入多個業(yè)務(wù)項,其執(zhí)行方式為N/K,N中取K模式,N為業(yè)務(wù)項數(shù)量,根據(jù)輸入的業(yè)務(wù)項數(shù)量自動生成;K取值范圍是[1-Ν],且默認值為N,即默認執(zhí)行方式是并發(fā)業(yè)務(wù),也可把K值調(diào)整為I…Ν-1,此時表示各分支完成K項業(yè)務(wù),即認為該指令集完成; (2)指定業(yè)務(wù)執(zhí)行者,針對同一業(yè)務(wù)項指定多個執(zhí)行者,其執(zhí)行方式為Ν/Κ,Ν中取K模式,N為業(yè)務(wù)執(zhí)行者數(shù)量,根據(jù)輸入的執(zhí)行者名單自動生成;Κ取值范圍是[1-Ν],且默認值為I ;即默認工作方式是有一名執(zhí)行者完成業(yè)務(wù)即可;也可把K值調(diào)整為2…N,此時表示至少K個人簽收業(yè)務(wù)才可以; (3)業(yè)務(wù)項工作時間指定,必須指定該業(yè)務(wù)項的三個時間,即開始時間,結(jié)束時間以及告警時間即接近完成給予警示的時間,要求開始時間早于告警時間,告警時間早于結(jié)束時間,同時當(dāng)前業(yè)務(wù)項的開始時間不能早于其輸入業(yè)務(wù)項的開始時間; (4)基于ID編號的業(yè)務(wù)項邏輯定義,首先定義當(dāng)前業(yè)務(wù)項的ID編號,采用自動編號方式,然后編輯輸入業(yè)務(wù)項的ID編號,默認為空,即沒有輸入業(yè)務(wù)項; (5)編輯業(yè)務(wù)項輔助信息,包括編輯工具,為業(yè)務(wù)項指定軟件工具;編輯附件,為業(yè)務(wù)項添加文檔、文件作為參考;此外編輯業(yè)務(wù)項說明,通過文本方式對業(yè)務(wù)項進行進一步說明; (6)簽發(fā)指令,當(dāng)指令的所有信息編輯完并確認后,簽發(fā)指;在這一過程中,“業(yè)務(wù)項狀態(tài)”默認填入“未簽收”,“指令簽發(fā)人”默認填入指令編輯者的信息; 步驟二:自動生成基于指令鏈的柔性工作流 通過解析任務(wù)執(zhí)行方式以及關(guān)聯(lián)的業(yè)務(wù)項構(gòu)建工作流邏輯,解析執(zhí)行者信息形成初始個人工作列表; (1)解析指令集的任務(wù)執(zhí)行方式,N=I時,為單項工作,Ν>1,且Κ=Ν,則為并發(fā)業(yè)務(wù);當(dāng)Ν>1,且1 ≤Κ〈Ν時,為Κ/Ν業(yè)務(wù),對指令集中的業(yè)務(wù)項添加Κ/Ν監(jiān)控標記; (2)解析關(guān)聯(lián)業(yè)務(wù)項,構(gòu)建工作流邏輯;根據(jù)當(dāng)前業(yè)務(wù)項的輸入項ID建立業(yè)務(wù)項的輸入輸出關(guān)系矩陣A ;在A中,如果業(yè)務(wù)項i對業(yè)務(wù)項j有輸入,則A的元素aij=l,否則為O,此外規(guī)定an=0 ;如果業(yè)務(wù)項i對業(yè)務(wù)項j有輸入,且i有并發(fā)或K/N業(yè)務(wù)項k,則默認k對j有輸入,即aw=l ;根據(jù)矩陣與圖的轉(zhuǎn)換關(guān)系,即可生成流程圖; 在生成流程圖的過程中,如果某業(yè)務(wù)項沒有任何輸入和輸出,則判定為單項獨立業(yè)務(wù),如果某業(yè)務(wù)項只有輸出,則為工作流的起點,如果某業(yè)務(wù)項只有輸入,則為工作流的匯點,如果某個業(yè)務(wù)項既有輸入也有輸出,則是工作流的中間環(huán)節(jié); (3)解析執(zhí)行者信息,配置初始個人工作列表,根據(jù)執(zhí)行者名單,將該業(yè)務(wù)項推送至所有執(zhí)行者的當(dāng)前工作列表中,主要信息包括業(yè)務(wù)項的工作時間、工具、附件、業(yè)務(wù)項說明以及簽發(fā)者,同時賦予指令初始狀態(tài)為“未簽收”;如果N>1,且I ( K〈N時,還需要為相關(guān)執(zhí)行者添加K/N監(jiān)控標記;步驟三:指令運行與監(jiān)控 驅(qū)動指令運行,并根據(jù)指令的簽收與完成情況,即時調(diào)整業(yè)務(wù)項狀態(tài)及個人工作列表并進行監(jiān)控; (1)簽收狀態(tài)變更;當(dāng)執(zhí)行者簽收任務(wù)后,則該工作列表中該業(yè)務(wù)項狀態(tài)從“未簽收”變更為“已簽收”,同時對于添加K/N監(jiān)控標簽的執(zhí)行者,只要有K個執(zhí)行者進行簽收,則其余N-K個人的工作列表中自動刪除該業(yè)務(wù)項; (2)完成狀態(tài)變更;在任務(wù)截止時間內(nèi)完成任務(wù),并進行了提交,則該業(yè)務(wù)項狀態(tài)變更為“已完成”,同時移至歷史工作列表中;如果輸入任務(wù)項狀態(tài)未變更為已完成,則不允許提交任務(wù);如果業(yè)務(wù)項添加K/N標簽,即在同一指令集內(nèi)存在N>1,且I < K〈N時的情況,當(dāng)有K項任務(wù)被提交,則其余N-K個業(yè)務(wù)項的狀態(tài)更為“已完成”,并移至歷史工作列表中; (3)告警狀態(tài)變更;無論執(zhí)行者是否簽收業(yè)務(wù)項,只要超出告警時間,仍未提交,則該業(yè)務(wù)項狀態(tài)變更為“告警”; (4)超時狀態(tài)變更;無論執(zhí)行者是否簽收業(yè)務(wù)項,只要超出完成時間,仍未提交,則該業(yè)務(wù)項狀態(tài)變更為“超時”; (5)委托狀態(tài)變更;如果業(yè)務(wù)項發(fā)生了委托,則業(yè)務(wù)項狀態(tài)變更為“委托”,該業(yè)務(wù)項一方面轉(zhuǎn)移到當(dāng)前執(zhí)行者的歷史工作列表,另一方面同時推送至新執(zhí)行者的個人工作列表中; (6)異常狀態(tài)變更;如果業(yè)務(wù)項被指令簽發(fā)者掛起,則變更“掛起”狀態(tài),無法操作,等待進一步指示,如果業(yè)務(wù)項最終被指令簽發(fā)者中止,則業(yè)務(wù)項狀態(tài)變更為“中止”,并移至歷史工作列表;· (7)指令運行情況監(jiān)控;記錄各指令完成情況,推送至初始簽發(fā)者;當(dāng)出現(xiàn)委托、告警和超時情況時,需提醒簽發(fā)者,同時指令簽發(fā)者查看自己發(fā)出的所有指令及指令委托的運行情況,查看方式是依據(jù)業(yè)務(wù)項關(guān)聯(lián)關(guān)系解析出的工作流邏輯;按照顏色對指令的完成情況進行標識,包括未簽收“白色”,已簽收“黃色”,已完成“綠色”,告警“紅色”,超時“黑色”,委托“紫色”; 步驟四:指令動態(tài)調(diào)整 在基于指令的工作流執(zhí)打過程中,根據(jù)執(zhí)彳丁情況動態(tài)的調(diào)整指令;包括工作完成后的新指令定義、無法完成工作后的委托、流程出現(xiàn)異常時進行掛起及再定義; (1)工作完成后,有后續(xù)工作需求,按情況自行定義后續(xù)工作指令集,操作同步驟一,但在輸入業(yè)務(wù)項內(nèi)自動填入已完成業(yè)務(wù)項,建立業(yè)務(wù)項關(guān)聯(lián)關(guān)系; (2)無法完成工作后的委托,業(yè)務(wù)項處于未簽收或已簽收狀態(tài),出于不預(yù)知的原因如出差,工作調(diào)動,請假無法完成工作時,經(jīng)判斷時間充足,進行業(yè)務(wù)項委托,并指定新的業(yè)務(wù)執(zhí)行者;由引擎將該任務(wù)轉(zhuǎn)發(fā)至新的執(zhí)行者,并更新指令運行狀態(tài),支持監(jiān)控; (3 )無法完成工作后報告簽發(fā)者,業(yè)務(wù)項處于未簽收或已簽收狀態(tài),出于不預(yù)知的原因如出差,工作調(diào)動,請假無法完成工作時,經(jīng)判斷時間不充足,向簽發(fā)者進行報告; (4)流程出現(xiàn)異常時掛起,指令簽發(fā)者收到無法完成任務(wù)的請求或監(jiān)控反饋回異常信息如告警或超時情況下,可對流程進行掛起,異常業(yè)務(wù)項及其后續(xù)的相關(guān)業(yè)務(wù)項將被置于掛起狀態(tài),無法被操作; (5 )流程再定義;當(dāng)流程掛起后,對異常業(yè)務(wù)項進行中止,并再定義新的業(yè)務(wù)項,包括更改業(yè)務(wù)項 內(nèi)容、執(zhí)行時間和執(zhí)行者,如果更改涉及到關(guān)聯(lián)事項也需要同步進行處理。
      【文檔編號】G06Q10/06GK103824162SQ201410072431
      【公開日】2014年5月28日 申請日期:2014年2月28日 優(yōu)先權(quán)日:2014年2月28日
      【發(fā)明者】馮強, 任羿, 孫博, 楊德真 申請人:北京航空航天大學(xué)
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1