posts - 193,  comments - 520,  trackbacks - 0

          三、推模式

          在創(chuàng)建階段,系統(tǒng)根據(jù)不同的創(chuàng)建模式為任務(wù) 節(jié)點(diǎn)產(chǎn)生了一個(gè)或多個(gè)工作項(xiàng),每個(gè)工作項(xiàng)或分配給單個(gè)資源或分配給角色、部門等。那么接下來,系統(tǒng)就需要將這些工作項(xiàng)推送給相關(guān)的資源進(jìn)行執(zhí)行,這個(gè)推送 的過程即是推模式所包含的內(nèi)容。需要注意的是,推模式討論的是對(duì)單個(gè)工作項(xiàng)的推送。

          在前面我們已經(jīng)了解到,工作流系統(tǒng)通過工作項(xiàng)管理器即不同類型的工作項(xiàng)列表與用戶進(jìn)行交互,這里的推送也可以理解為系統(tǒng)將生成的工作項(xiàng)推送至相應(yīng)資源的工作項(xiàng)列表里。


          5-17

          如圖5-17所示,推模式對(duì)應(yīng)著工作項(xiàng)到三種狀態(tài)的變遷:提供給一個(gè)資源拾取執(zhí)行;提供給多個(gè)資源拾取執(zhí)行(這些資源中只會(huì)有一個(gè)會(huì)實(shí)際執(zhí)行,屬于競(jìng)爭關(guān)系);指派給一個(gè)資源負(fù)責(zé)執(zhí)行。

          推模式共有9種,分為3組, 第一組包括提供給單個(gè)資源、提供給多個(gè)資源和指派給單個(gè)資源,討論工作項(xiàng)推送的最終分配狀態(tài);第二組包括隨機(jī)指派、循環(huán)指派和最短隊(duì)列指派,關(guān)注當(dāng)工作項(xiàng) 分配給角色、部門等包含多個(gè)資源的資源組時(shí),如何從中確定最終的一個(gè)資源并進(jìn)行指派;第三組包括提前分配、即時(shí)分配和推后分配,關(guān)注將工作項(xiàng)推送給用戶的 時(shí)間。

          1、提供給單個(gè)資源(WRP_12: Distribution by Offer - Single Resource

          描述

          能夠在非綁定的基礎(chǔ)上將工作項(xiàng)推送給單個(gè)資源。


          5-18

          如圖5-18所示,任務(wù)A工 作項(xiàng)被系統(tǒng)推送至員工甲的可拾取列表。這意味著員工甲不必為該工作負(fù)責(zé),他可以選擇執(zhí)行該工作也可選擇忽略或拒絕。如果他選擇拒絕或忽略且工作項(xiàng)超時(shí),那 么會(huì)導(dǎo)致系統(tǒng)對(duì)該工作項(xiàng)的重新分配。如果他選擇執(zhí)行該工作,那么他首先需要拾取該工作項(xiàng),這會(huì)使該工作項(xiàng)進(jìn)入他的代辦列表,意味著其必須對(duì)該工作負(fù)責(zé)。

          應(yīng)用

          該模式類似于現(xiàn)實(shí)工作中的征求意見,先將工作分配給你,然后找你談話,征求你對(duì)該工作的看法,如果合適那么就由你執(zhí)行,否則再找他人執(zhí)行。

          實(shí)現(xiàn)

          參與者對(duì)工作項(xiàng)的拒絕會(huì)導(dǎo)致系統(tǒng)對(duì)工作項(xiàng)的 重新分配,這是實(shí)現(xiàn)該模式的難點(diǎn)。如何重新分配該工作項(xiàng),采取何種重新分配策略,這些都具有很大的復(fù)雜性。實(shí)際上這些工作流模式單個(gè)看起來可能比較清晰明 了,但一旦組合起來,例如該模式與創(chuàng)建模式結(jié)合起來,那么就有了多種情況變得復(fù)雜起來。對(duì)于復(fù)雜的問題,最好的解決辦法就是留給實(shí)施階段,由用戶情況作出 使用限定。這也再次強(qiáng)調(diào)了工作流實(shí)施在工作流應(yīng)用中的重要性。

          2、提供給多個(gè)資源(WRP_13: Distribution by Offer – Multiple Resource

          描述

          能夠在非綁定的基礎(chǔ)上將工作項(xiàng)推送給多個(gè)資源。


          5-19

          如圖5-19所示,任務(wù)A所 生成的工作項(xiàng)被推送給多個(gè)員工的可拾取列表。這些員工不必為該工作負(fù)責(zé),他們可以選擇執(zhí)行該工作也可選擇忽略或拒絕。如果他們都選擇拒絕或忽略且工作項(xiàng)超 時(shí),那么會(huì)導(dǎo)致系統(tǒng)對(duì)該工作項(xiàng)的重新分配。如果有一名員工選擇執(zhí)行該工作,那么該工作項(xiàng)進(jìn)入他的代辦列表,其他員工將不再具有拾取該工作項(xiàng)的機(jī)會(huì)。

          應(yīng)用

          該模式是典型的競(jìng)爭參與,即多人可以完成該工作,先執(zhí)行者先得。類似于尋找志愿者。

          實(shí)現(xiàn)

          該模式的實(shí)現(xiàn)一般是創(chuàng)建階段將工作項(xiàng)分配給角色、部門等包含多個(gè)資源的分組,在推送階段,將該工作項(xiàng)送至這些組下所有資源共享的可拾取列表里,工作項(xiàng)的實(shí)例只有一個(gè),但是多資源可見。

          3、指派給單個(gè)資源(WRP_14: Distribution by Allocation – Single Resource

          描述

          能夠在綁定的基礎(chǔ)上將工作項(xiàng)推送給單個(gè)資源。


          5-20

          如圖5-20所示,任務(wù)A工作項(xiàng)被系統(tǒng)推送至員工甲的待辦列表。這意味著員工甲必須為該工作負(fù)責(zé)。

          應(yīng)用

          該模式是應(yīng)用最多的模式,直接指定任務(wù)的負(fù)責(zé)人。

          在采用軍事化管理的企業(yè)里,上級(jí)的命令一定要執(zhí)行,下屬?zèng)]有商量和拒絕的權(quán)利。

          實(shí)現(xiàn)

          相比提供,指派實(shí)現(xiàn)非常容易,直接將工作項(xiàng)推送至選定資源的待辦列表。

          4、隨機(jī)指派(WRP_15: Random Allocation

          描述

          當(dāng)存在多個(gè)資源可供選擇時(shí),從中隨機(jī)選擇一個(gè)資源進(jìn)行工作項(xiàng)的指派。


          5-21

          如圖5-21所示,任務(wù)A所生成的工作項(xiàng)在創(chuàng)建階段分配給了開發(fā)人員這一角色,在推送階段,系統(tǒng)會(huì)隨機(jī)選取一名開發(fā)人員負(fù)責(zé)該工作項(xiàng)的執(zhí)行。

          應(yīng)用

          該模式提供了一種指派資源的非確定性機(jī)制。

          5、循環(huán)指派(WRP_16: Round Robin Allocation

          描述

          當(dāng)存在多個(gè)資源可供選擇時(shí),循環(huán)選擇其中一個(gè)資源進(jìn)行工作項(xiàng)的指派。


          5-22

          如圖5-22所示,任務(wù)A所生成的工作項(xiàng)在創(chuàng)建階段分配給了開發(fā)人員這一角色,在推送階段,系統(tǒng)會(huì)循環(huán)輪流選取一名開發(fā)人員負(fù)責(zé)該工作項(xiàng)的執(zhí)行。

          應(yīng)用

          不患貧而患不均,平等的分配工作。

          6、最短隊(duì)列指派(WRP_17: Shortest Queue

          描述

          當(dāng)存在多個(gè)資源可供選擇時(shí),選擇其中一個(gè)具有最少待辦工作即最短工作隊(duì)列的資源進(jìn)行工作項(xiàng)的指派。


          5-23

          如圖5-23所示,任務(wù)A所生成的工作項(xiàng)在創(chuàng)建階段分配給了開發(fā)人員這一角色,在推送階段,系統(tǒng)發(fā)現(xiàn)員工甲的待辦列表里有兩條待辦工作(任務(wù)B和任務(wù)C),員工乙的待辦列表里沒有待辦工作,所以系統(tǒng)將任務(wù)A工作項(xiàng)指派給員工乙負(fù)責(zé)該工作項(xiàng)的執(zhí)行。

          應(yīng)用

          該模式的目的在于能夠最快開始工作的執(zhí)行,找出相比而言最為空閑的資源迅速開始工作。但是實(shí)際應(yīng)用中,僅僅依靠工作的數(shù)量來判斷資源是否空閑是不可靠的,因?yàn)楣ぷ骱凸ぷ髦g還存在著難易之分。

          7、提前分配(WRP_18: Early Distribution

          描述

          在工作項(xiàng)實(shí)際可以執(zhí)行之前即將該工作項(xiàng)通知或潛在的分配給資源。


          5-24

          如圖5-24所示,任務(wù)A還在執(zhí)行,任務(wù)B還未激活,但此時(shí)任務(wù)B的工作項(xiàng)已經(jīng)提前分配給員工甲,該工作項(xiàng)的主要職責(zé)是通知員工甲將由其來完成任務(wù)B并能開始一部分準(zhǔn)備工作,而實(shí)際的工作則要等到任務(wù)B被激活后才能進(jìn)行。

          應(yīng)用

          該模式強(qiáng)調(diào)的是預(yù)先計(jì)劃,即管理的計(jì)劃性。

          在我們實(shí)際的項(xiàng)目開始之前,項(xiàng)目經(jīng)理已經(jīng)通知我們將要進(jìn)行的開發(fā)工作,讓我們提前熟悉相關(guān)的技術(shù)。這樣當(dāng)項(xiàng)目開始時(shí)就能提高最初迭代的開發(fā)效率。

          從某種意義上說,稍微復(fù)雜一點(diǎn)的工作都應(yīng)該做到提前通知、提前準(zhǔn)備,即計(jì)劃的必要性。

          實(shí)現(xiàn)

          讓工作流系統(tǒng)直接支持該模式比較困難,因?yàn)樵撃J角短自诳刂颇J胶筒煌墓ぷ黜?xiàng)創(chuàng)建模式里,找不出一種通用的模式,無法預(yù)判工作項(xiàng)的生成和實(shí)際的參與者。在一定范圍內(nèi),可以采用下面的方式變通:


          5-25

          如圖5-25所示,在自動(dòng)節(jié)點(diǎn)執(zhí)行時(shí)能確定任務(wù)B的參與者的情況下,可以通過自動(dòng)節(jié)點(diǎn)給員工甲發(fā)送郵件或消息進(jìn)行通知,工作流系統(tǒng)并不生成工作項(xiàng)。

          8、即時(shí)分配(WRP_19: Distribution on Enablement

          描述

          在工作項(xiàng)實(shí)際可以執(zhí)行時(shí)將該工作項(xiàng)分配給資源。

          應(yīng)用

          機(jī)器執(zhí)行的工作,重復(fù)單一的審批工作,無計(jì)劃性的工作,如各種突發(fā)情況的處理。

          實(shí)現(xiàn)

          大多數(shù)工作流系統(tǒng)的標(biāo)準(zhǔn)實(shí)現(xiàn),滿足任務(wù)執(zhí)行條件時(shí)先激活任務(wù)節(jié)點(diǎn),然后創(chuàng)建工作項(xiàng)、分配工作項(xiàng)。

          9、推后分配(WRP_20: Late Distribution

          描述

          在工作項(xiàng)實(shí)際可以執(zhí)行后的某個(gè)時(shí)間才將該工作項(xiàng)分配給資源。


          5-26

          如圖5-26所示,任務(wù)B已經(jīng)激活且已生成可以執(zhí)行工作項(xiàng),但是系統(tǒng)并沒有將其分配至員工甲的工作項(xiàng)列表里。這是因?yàn)閱T工甲正在執(zhí)行任務(wù)A的工作項(xiàng),直到其執(zhí)行任務(wù)A完畢,系統(tǒng)才會(huì)把任務(wù)B工作項(xiàng)推送至工作項(xiàng)列表。

          應(yīng)用

          保證流程和資源對(duì)工作的負(fù)載處于一種良好的狀態(tài),避免出現(xiàn)下圖的情況:


          5-27

          在敏捷開發(fā)里,我們強(qiáng)調(diào)客戶合作,整個(gè)的開發(fā)過程對(duì)用戶透明,用戶知道當(dāng)前正在進(jìn)行的開發(fā)工作,也清楚開發(fā)團(tuán)隊(duì)的開發(fā)速度,在這種情況下,一旦有新的需求加入,用戶會(huì)推遲該需求的實(shí)現(xiàn),或者推遲當(dāng)前其他需求的實(shí)現(xiàn),從而保證整個(gè)團(tuán)隊(duì)的開發(fā)效率。

          實(shí)現(xiàn)

          該模式的實(shí)現(xiàn)依賴于推后的策略,即在什么情況下推后分配,滿足什么條件下進(jìn)行分配。具體實(shí)現(xiàn)同樣采取推后模式,推后到實(shí)施階段實(shí)現(xiàn)。



          http://www.aygfsteel.com/ronghao 榮浩原創(chuàng),轉(zhuǎn)載請(qǐng)注明出處:)
          posted on 2009-10-25 21:46 ronghao 閱讀(1821) 評(píng)論(1)  編輯  收藏 所屬分類: Head First Process-深入淺出流程

          FeedBack:
          # re: 第五章-工作流資源模式(推模式)
          2009-10-27 19:23 | qufei
          henbucuo  回復(fù)  更多評(píng)論
            
          <2009年10月>
          27282930123
          45678910
          11121314151617
          18192021222324
          25262728293031
          1234567

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

          常用鏈接

          留言簿(38)

          隨筆分類

          隨筆檔案

          文章分類

          文章檔案

          常去的網(wǎng)站

          搜索

          •  

          最新評(píng)論

          閱讀排行榜

          評(píng)論排行榜

          主站蜘蛛池模板: 册亨县| 许昌县| 临泉县| 冕宁县| 乐昌市| 通榆县| 台山市| 汾阳市| 福清市| 通江县| 牟定县| 张家川| 巴彦淖尔市| 白银市| 星子县| 闸北区| 吉安市| 徐州市| 浮山县| 黄龙县| 扶绥县| 德格县| 炎陵县| 尤溪县| 渭南市| 南岸区| 肥乡县| 黔江区| 吴江市| 会理县| 沧源| 瑞金市| 富宁县| 尚义县| 秦安县| 额济纳旗| 漯河市| 大英县| 佛山市| 岑溪市| 延津县|