<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

    回退(Rollback WorkItem)

    回退是工作流參與者對自己“待辦任務(wù)”(實際是對工作項)的一種操作,即參與者主動回退待辦任務(wù)列表中的任務(wù)到已經(jīng)執(zhí)行過的人工節(jié)點。

    為什么要回退?

    參與者接受任務(wù)后,發(fā)現(xiàn)不應(yīng)由自己辦理此任務(wù)或以前的執(zhí)行者辦理有錯誤等情況后,需要將此接受的任務(wù)回退給以前某個節(jié)點的執(zhí)行者重新辦理。

    回退模式

    回退的情況實際上是非常復(fù)雜的,其中包括了參與者的重新選擇以及回退的條件判斷等等。這里先列出常見的回退模式(其實也是我們支持的模式)。

    串行

       

    這種情況最為簡單,后續(xù)節(jié)點可以回退到前續(xù)任意人工節(jié)點。回退后,節(jié)點重走。

    分支

       

    這種情況也相對簡單,實際執(zhí)行的分支上的節(jié)點可以回退到前續(xù)任意人工節(jié)點(不區(qū)分主支和分支)。同樣,主支上的節(jié)點也可以回退到任意實際執(zhí)行的分支上的節(jié)點。

    可能的問題:多次回退后的回退節(jié)點選擇。例如:第一次流程經(jīng)過節(jié)點2、節(jié)點3到達(dá)節(jié)點5,節(jié)點5可以回退到節(jié)點1、節(jié)點2和節(jié)點3的任意一個,此時節(jié)點5回退到節(jié)點1,節(jié)點1重走,這一次流程改為經(jīng)過節(jié)點4到達(dá)節(jié)點5,節(jié)點5回退時如何選擇回退節(jié)點?此時的策略是以最近實際執(zhí)行的分支為準(zhǔn),即節(jié)點5只允許回退到節(jié)點4和節(jié)點1,不允許回退到節(jié)點2和節(jié)點3。(抹去記憶)

    并發(fā)

       

    對于并發(fā)的情況,分支節(jié)點只允許在分支的節(jié)點間回退。


    同理,主支節(jié)點也只允許在主支的節(jié)點間回退。

    多實例匯聚

       

    在這種情況下,節(jié)點5會產(chǎn)生2個實例,實際相當(dāng)于繼續(xù)并發(fā)。節(jié)點5根據(jù)具體哪個節(jié)點觸發(fā)的它而產(chǎn)生回退節(jié)點。同時不允許回退到節(jié)點1以及前續(xù)的節(jié)點去。

    子流程

       

    支持子流程到父流程的回退,也支持父流程到子流程節(jié)點的回退。需要注意的是子流程節(jié)點有可能產(chǎn)生多個子流程實例,在這種情況下不支持父子流程之間的相互回退。

    回退節(jié)點的參與者選擇

    默認(rèn)策略是由原先節(jié)點的實際參與者重新處理,比如節(jié)點2回退到節(jié)點1,則節(jié)點1的實際參與者重新處理該節(jié)點任務(wù)。這也符合大多數(shù)實際的業(yè)務(wù)場景。

    在節(jié)點任務(wù)競爭參與的情況下,提供另一種策略,即讓人員重新競爭。

    回退的條件判斷

    對于多人(或者多部門,用戶)參與的工作項,提供不同的回退策略

    任意人回退即回退,剩余工作項手工終止

    最后提交人回退才回退

       流程定義期定義該策略。

       另外流程定義時提供節(jié)點可回退列表,由用戶在定義期對可回退的節(jié)點進(jìn)行限制。

    關(guān)于業(yè)務(wù)補償

    業(yè)務(wù)補償是一個很重要的概念,在回退的情況下需要相應(yīng)的回退部分業(yè)務(wù)操作。這里由引擎提供統(tǒng)一的接口,返回回退路徑,由客戶自定義代碼進(jìn)行匹配處理。

     

    關(guān)于實現(xiàn)

    很多工作流引擎通過流程定義時繪出回退線來顯式的支持回退,這種實現(xiàn)在業(yè)務(wù)復(fù)雜的情況下會造成流程圖的異常煩瑣,但是比較清晰,實現(xiàn)比較容易。隱式實現(xiàn)相比而言優(yōu)點更多。



    http://m.tkk7.com/ronghao 榮浩原創(chuàng),轉(zhuǎn)載請注明出處:)
    posted on 2008-06-24 09:12 ronghao 閱讀(2378) 評論(3)  編輯  收藏 所屬分類: SOA、BPM

    FeedBack:
    # re: 工作流回退模式分析
    2008-06-24 09:37 | davymemory
    你好,我是IT獵頭Camille,主要負(fù)責(zé)上海地區(qū)IT方面的職位。希望以后大家一起在職業(yè)路上共同進(jìn)步。不介意的話請加我的MSN:davycamille@hotmail.com  回復(fù)  更多評論
      
    # re: 工作流回退模式分析
    2008-06-24 10:13 | Always BaNg.
    Viso畫的圖?

    不知道是需求還是理論還是經(jīng)驗?
      回復(fù)  更多評論
      
    # re: 工作流回退模式分析
    2008-06-24 17:58 | ronghao
    @Always BaNg.
    是Viso

    是功能需求也是項目經(jīng)驗的總結(jié)  回復(fù)  更多評論
      
    <2008年6月>
    25262728293031
    1234567
    891011121314
    15161718192021
    22232425262728
    293012345

    關(guān)注工作流和企業(yè)業(yè)務(wù)流程改進(jìn)。現(xiàn)就職于ThoughtWorks。新浪微博:http://weibo.com/ronghao100

    常用鏈接

    留言簿(38)

    隨筆分類

    隨筆檔案

    文章分類

    文章檔案

    常去的網(wǎng)站

    搜索

    •  

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 国产美女无遮挡免费网站| 成人黄页网站免费观看大全| 亚洲国产成人久久笫一页| 国产AV无码专区亚洲AV蜜芽| 日本成人免费在线| 国产亚洲人成在线播放| 国产jizzjizz视频免费看| 成人精品国产亚洲欧洲| 免费一级毛片一级毛片aa| 深夜福利在线视频免费| 亚洲伊人色欲综合网| 九九美女网站免费| 亚洲高清免费在线观看| 中文字幕无码播放免费| 亚洲中文字幕AV每天更新| 又大又硬又爽免费视频| jizz免费观看| 亚洲国产精品自在线一区二区| 7m凹凸精品分类大全免费| 亚洲中文字幕无码一去台湾 | 91免费国产在线观看| 国产成人精品日本亚洲专| 国产在线观看免费不卡| 皇色在线免费视频| 中文字幕亚洲综合久久2| 午夜免费福利影院| 国产成人高清亚洲一区91| 亚洲不卡中文字幕无码| av无码久久久久不卡免费网站| 亚洲精品久久无码| 亚洲综合色婷婷七月丁香| 精品国产无限资源免费观看| 亚洲欧美日韩中文高清www777 | 亚洲AV无码成H人在线观看| 中文字幕久精品免费视频 | 丰满亚洲大尺度无码无码专线| 亚洲片一区二区三区| 免费黄色福利视频| 国产男女爽爽爽免费视频 | 亚洲综合伊人久久综合| 最近中文字幕无吗免费高清|