<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    posts - 193,  comments - 520,  trackbacks - 0

    這是我們(東方易維)工作流產品設計過程中采取的設計:

    一、流程實例的狀態

       狀態分為5種:實例化、執行中、掛起、手工結束、正常結束。

       狀態的變遷如下圖:


    二、節點實例的狀態

    狀態分為5種:實例化、執行中、掛起、手工結束、正常結束。

    狀態的變遷如下圖:


    三、具體節點的狀態

       細分:

    A、人工節點、等待節點

    這兩個節點被觸發后存在一個執行等待的過程,所以可以被用戶直接掛起和手工結束。人工節點的掛起意味著所有未完成工作項的掛起,同時相應時間服務的時間計算的掛起。手工結束會使流程跳過該節點(所有工作項手工結束),繼續往后流轉。

    B、開始節點、結束節點、分支節點、自動節點

    這些節點的特點在于被觸發后立刻執行和流轉,所以不會存在掛起和手工結束的狀態。

    C、并發節點、匯聚節點

    并發節點和匯聚節點不存在掛起的狀態,同時不能被用戶直接手工結束,它們的狀態受流程實例狀態和相關節點實例狀態的影響。

    并發節點和匯聚節點的情況復雜一些,分模式討論


    1

    1、同步匯聚(圖1

    根據情況觸發節點0、節點1、節點2中的一個或多個,匯聚節點等待所有實際觸發的節點完成后再執行流轉。中間匯聚節點只會產生一個實例。

    1.1、正常流轉時的處理策略

    當匯聚節點未被觸發時(即節點0、節點1、節點2都未執行結束),并發節點處于執行狀態,一旦匯聚節點被觸發(即節點0、節點1、節點2有一個執行結束),并發節點正常結束并且匯聚節點處于執行狀態,所有并發出的節點實例執行結束后,匯聚節點正常結束,流程繼續流轉。

    1.2、用戶掛起、手工結束相關節點的處理策略

    1.2.1、匯聚節點未激活時

    節點0、節點1、節點2的掛起和恢復執行不會影響并發節點的狀態(依舊處于執行狀態);節點0、節點1、節點2的任一手工結束都會觸發匯聚節點,使并發節點正常結束,如果所有并發的節點實例都結束(包括手工結束和正常結束),匯聚節點正常結束,觸發流程流轉。

    1.2.2、匯聚節點已激活時

    節點0、節點1、節點2的掛起和恢復執行不會影響匯聚節點的狀態(依舊處于執行狀態);節點0、節點1、節點2的手工結束會影響匯聚節點的狀態,每個節點實例的手工結束會引起匯聚節點的判斷,如果所有并發的節點實例(包括正常結束和手工結束)都結束,匯聚節點正常結束,觸發流程流轉。

    1.3、用戶掛起、手工結束流程的處理策略

    1.3.1、匯聚節點未激活時

    流程的掛起和恢復執行不會影響并發節點的狀態(依舊處于執行狀態),節點0、節點1、節點2會被全部掛起或恢復;流程的手工結束會引起所有節點的手工結束。

    1.3.2、匯聚節點已激活時

    流程的掛起和恢復執行不會影響匯聚節點的狀態(依舊處于執行狀態),節點0、節點1、節點2未執行結束的實例會被全部掛起或恢復;流程的手工結束會引起所有節點的手工結束。

    2、nOutOfM匯聚(圖1

    根據情況觸發節點0、節點1、節點2中的一個或多個,匯聚節點等待N個實際觸發的節點完成后即執行流轉(N>0N<MM為實際觸發的節點個數),在N<=0N>=M的情況下即為同步匯聚。中間匯聚節點只會產生一個實例。

    2.1、正常流轉時的處理策略

    當匯聚節點未被觸發時(即節點0、節點1、節點2都未執行結束),并發節點處于執行狀態,一旦匯聚節點被觸發(即節點0、節點1、節點2有一個執行結束),并發節點正常結束并且匯聚節點處于執行狀態,N個并發出的節點實例執行結束后,匯聚節點正常結束,流程繼續流轉,M-N的節點實例被手工結束。

    2.2、用戶掛起、手工結束相關節點的處理策略

    2.2.1、匯聚節點未激活時

    節點0、節點1、節點2的掛起和恢復執行不會影響并發節點的狀態(依舊處于執行狀態);節點0、節點1、節點2的任一手工結束都會觸發匯聚節點,使并發節點正常結束,如果N個并發的節點實例都手工結束,并發節點正常結束,觸發匯聚節點,匯聚節點正常結束,觸發流程流轉,M-N的節點實例被手工結束。

    2.2.2、匯聚節點已激活時

    節點0、節點1、節點2的掛起和恢復執行不會影響匯聚節點的狀態(依舊處于執行狀態);節點0、節點1、節點2的手工結束會影響匯聚節點的狀態,每個節點實例的手工結束會引起匯聚節點的判斷,如果N個并發的節點實例(包括正常結束和手工結束)都結束,匯聚節點正常結束,觸發流程流轉,M-N的節點實例被手工結束。

    2.3、用戶掛起、手工結束流程的處理策略

    2.3.1、匯聚節點未激活時

    流程的掛起和恢復執行不會影響并發節點的狀態(依舊處于執行狀態),節點0、節點1、節點2會被全部掛起或恢復;流程的手工結束會引起所有節點的手工結束。

    2.3.2、匯聚節點已激活時

    流程的掛起和恢復執行不會影響匯聚節點的狀態(依舊處于執行狀態),節點0、節點1、節點2未執行結束的實例會被全部掛起或恢復;流程的手工結束會引起所有節點的手工結束。

    3、辨別匯聚(圖1

    nOutOfM匯聚的特例,N=1

    4、多實例匯聚(圖2


    2

    根據情況觸發節點0、節點1中的一個或多個,節點0和節點1任意一個執行結束后都會觸發匯聚節點產生一個新的實例,匯聚節點實例緊接著觸發節點2,節點2也會產生多個實例。

    4.1、正常流轉時的處理策略

    當匯聚節點未被觸發時(即節點0、節點1都未執行結束),并發節點處于執行狀態,一旦匯聚節點被觸發(即節點0、節點1有一個執行結束),匯聚節點會緊接著觸發節點2,匯聚節點正常結束。所有并發出的節點實例執行結束后,并發節點正常結束。

    4.2、用戶掛起、手工結束相關節點的處理策略

    節點0、節點1的掛起和恢復執行不會影響并發節點的狀態(依舊處于執行狀態);節點0、節點1的手工結束會影響并發節點和匯聚節點的狀態,每個節點實例的手工結束會引起匯聚節點產生新的實例并觸發節點2,同時會引起并發節點的判斷,如果所有并發的節點實例都手工結束,并發節點正常結束。

    4.3、用戶掛起、手工結束流程的處理策略

    流程的掛起和恢復執行不會影響并發節點的狀態(依舊處于執行狀態),節點0、節點1、節點2會被全部掛起或恢復;流程的手工結束會引起所有未結束節點的手工結束。

    5、隱式結束,沒有匯聚節點與并發節點對應(圖3


    3

    所有節點結束時(正常結束或手工結束),并發節點正常結束。流程的手工結束會引起所有未結束節點的手工結束。

    四、流程實例狀態變化對節點實例狀態造成的影響

    1、流程實例的掛起

       A類節點掛起,BC類節點不受影響。同時在流程實例恢復執行之前,A類節點不允許用戶直接恢復執行。

    2、流程實例的手工結束

       所有節點全部手工結束。

    五、節點實例狀態變化對流程實例狀態造成的影響

    隱式結束的情況下,節點的手工結束或正常結束都會觸發流程的判斷,如果所有的節點都已結束則流程結束。



    http://www.tkk7.com/ronghao 榮浩原創,轉載請注明出處:)
    posted on 2008-05-26 19:36 ronghao 閱讀(1606) 評論(2)  編輯  收藏 所屬分類: SOA、BPM

    FeedBack:
    # re: 工作流流程狀態管理及變遷
    2008-05-27 09:57 | dennis
    這樣的分類其實將資源與節點混合了,例如自動節點、人工節點以及如匯聚節點這樣的說法,其實是由它們的觸發者來稱呼的,自動節點和and-join,and-split節點都是由自動資源觸發,人工節點就是由人力資源觸發;將節點(或者說工作項)與資源分離清楚,顯然更利于實現和分析。  回復  更多評論
      
    # re: 工作流流程狀態管理及變遷[未登錄]
    2008-05-27 10:01 | ronghao
    @dennis
    是這樣的,我的理解是只有人工節點需要人員參與(即產生工作項),其他節點都是自動完成的或系統觸發的。  回復  更多評論
      
    <2008年5月>
    27282930123
    45678910
    11121314151617
    18192021222324
    25262728293031
    1234567

    關注工作流和企業業務流程改進。現就職于ThoughtWorks。新浪微博:http://weibo.com/ronghao100

    常用鏈接

    留言簿(38)

    隨筆分類

    隨筆檔案

    文章分類

    文章檔案

    常去的網站

    搜索

    •  

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 亚洲精品夜夜夜妓女网| 亚洲色偷偷偷鲁综合| 亚洲国产精品xo在线观看| 久久大香香蕉国产免费网站| 亚洲无码在线播放| 光棍天堂免费手机观看在线观看| 国产亚洲福利在线视频| 成人免费乱码大片A毛片| 国产亚洲精品激情都市| 特级做A爰片毛片免费看无码| 91麻豆精品国产自产在线观看亚洲 | 亚洲av麻豆aⅴ无码电影| 污视频网站在线免费看| 亚洲综合色在线观看亚洲| 中文字幕在线免费观看视频| 亚洲AV综合色区无码另类小说| 久久免费公开视频| 亚洲国产精品xo在线观看| 在线jlzzjlzz免费播放| 添bbb免费观看高清视频| 日本特黄特色免费大片| 一级特黄a免费大片| 亚洲成A人片在线观看无码不卡 | 免费国产黄线在线观看| 亚洲AV无码一区二区大桥未久| 一本久久综合亚洲鲁鲁五月天| 精品国产免费一区二区三区| 99久久亚洲综合精品成人网| AA免费观看的1000部电影| 亚洲av片在线观看| 亚洲精品午夜无码专区| 国产精彩免费视频| 亚洲AV日韩AV永久无码色欲| 丝袜熟女国偷自产中文字幕亚洲| 久9这里精品免费视频| 天堂亚洲国产中文在线| 久久综合亚洲色HEZYO国产| 一区二区三区福利视频免费观看| 亚洲一区二区无码偷拍| 亚洲一区精品无码| 黄色成人网站免费无码av|