<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://m.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)

    隨筆分類

    隨筆檔案

    文章分類

    文章檔案

    常去的網站

    搜索

    •  

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 99久久免费看国产精品| 三上悠亚在线观看免费| 麻豆一区二区免费播放网站 | 亚洲不卡AV影片在线播放| 亚洲精品乱码久久久久蜜桃| 毛片a级毛片免费播放100| 日本亚洲精品色婷婷在线影院| 无码少妇一区二区浪潮免费| 亚洲婷婷第一狠人综合精品| 女人18毛片a级毛片免费| 亚洲国产欧美国产综合一区| 国产免费直播在线观看视频| 国产亚洲精彩视频| 久久久久国产亚洲AV麻豆| a级成人毛片免费图片| 亚洲av无码一区二区三区网站 | 成人无码WWW免费视频| 亚洲最新视频在线观看| 全免费毛片在线播放| 亚洲AV日韩AV一区二区三曲| 亚洲AV日韩精品一区二区三区 | 麻豆高清免费国产一区| 亚洲jjzzjjzz在线观看| 国产裸模视频免费区无码| 中美日韩在线网免费毛片视频| 亚洲成av人片天堂网| 亚洲一区二区三区免费在线观看 | 亚洲国产成人精品无码区在线秒播 | 日韩少妇内射免费播放| 久久亚洲高清观看| 日韩欧毛片免费视频| 免费一级毛片在线播放视频免费观看永久| 亚洲日本韩国在线| 久久w5ww成w人免费| 亚洲人成网站在线在线观看| 亚洲国产成人久久一区久久 | 四虎影视无码永久免费| 2020年亚洲天天爽天天噜| 亚洲AⅤ优女AV综合久久久| 久99久精品免费视频热77| 日本亚洲色大成网站www久久|