日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關咨詢
選擇下列產(chǎn)品馬上在線溝通
服務時間:8:30-17:00
你可能遇到了下面的問題
關閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
介紹什么是工作流設計

 一、什么是工作流

成都創(chuàng)新互聯(lián)專業(yè)為企業(yè)提供張家口網(wǎng)站建設、張家口做網(wǎng)站、張家口網(wǎng)站設計、張家口網(wǎng)站制作等企業(yè)網(wǎng)站建設、網(wǎng)頁設計與制作、張家口企業(yè)網(wǎng)站模板建站服務,十多年張家口做網(wǎng)站經(jīng)驗,不只是建網(wǎng)站,更提供有價值的思路和整體網(wǎng)絡服務。

舉個很土的例子。程序員出差,回來后要報銷票據(jù)。公司規(guī)定票據(jù)需要由員工所屬經(jīng)理審批,然后交由財務審批,財務審批通過程序員才可以拿到錢。在這個過程中,經(jīng)理可以駁回申請,財務也可以駁回申請,駁回后單據(jù)回到程序員編輯草稿的狀態(tài)。見下圖。

這就是一個工作流,一個單據(jù)由多個角色的用戶審批,不同角色看到的界面是不同的,每一個狀態(tài)都對應一個界面,例如程序員能夠看到“開始”和“草稿”的頁面,能夠編輯報銷單據(jù)的名稱和金額等信息,可以點擊“保存草稿”和“提交經(jīng)理審批”按鈕;經(jīng)理能夠編輯“經(jīng)理審批理由”,可以點擊“同意”和“駁回”按鈕;財務能夠編輯“財務審批理由”,可以點擊“同意”和“駁回”按鈕等。

二、為什么要使用工作流

因為客戶的需求總是在變更,我們開發(fā)程序編碼到一半的時候需求就會有顛覆性的修改。好的設計師不是設計出多么牛X的構(gòu)架,而是設計出的程序易于快速適應需求的變更。下面來看看客戶是如何變更需求的。

以上一節(jié)中的報銷審批為例??蛻籼岢鲂薷囊?,所有程序員的報銷都提交給經(jīng)理審批,那經(jīng)理每天不用干正事了,時間都花在審批報銷上了,以后報銷這種小事,大于1000元的再來找經(jīng)理審批,小于等于1000元的直接找財務就行了。流程見下圖。

    過兩天可能客戶又說,還是要經(jīng)理審批500元以上的審批吧,畢竟有些時候那些500-1000元的報銷單據(jù)財務不能直接做主。這樣的修改倒還好說,比較只要修改一個系統(tǒng)常量就搞定,如果客戶再說,我們不需要經(jīng)理審批了,整個流程只要財務審批即可,那程序的修改可就大了。流程見下圖。

我相信各位肯定見過比這更狗血的需求變更。牢騷抱怨不能解決問題,更合理的設計才是王道。所以如果你的需求需要這種不同人員對一個單據(jù)進行的審批,那么請使用工作流。

三、工作流的組成

本文不具體介紹工作流的編碼,如果各位想落地了解工作流的具體編碼,可以查閱微軟的WF工作流引擎或者JBPM開源工作流引擎。

工作流只要有節(jié)點狀態(tài)流轉(zhuǎn)事件兩部分組成。

以上面報銷流程為例,包括“開始”在內(nèi)的所有矩形都是節(jié)點狀態(tài)(“草稿”、“經(jīng)理待審批”、“財務待審批”、“財務審批通過”)。所有的節(jié)點狀態(tài)都對應一個界面。相應的人員在對應的節(jié)點狀態(tài)打開報銷單據(jù)的時候才能進行自己的操作,不然只能進行只讀查看。例如當前單據(jù)處于“經(jīng)理待審批”狀態(tài),那么如果經(jīng)理打開這個單據(jù)能夠編輯自己的審批意見,并且可以選擇點擊“通過”或者“駁回”按鈕。如果程序員進入這個單據(jù),只能看到自己以前編輯過的內(nèi)容,不能再次編輯,也不能進行經(jīng)理和財務的操作。

到這里就不難理解流轉(zhuǎn)事件了,流轉(zhuǎn)事件就是一個狀態(tài)到下一狀態(tài)的觸發(fā)事件。還以報銷流程為例,圖中由一個節(jié)點狀態(tài)指向另一個節(jié)點狀態(tài)的線既為流轉(zhuǎn)事件。程序員點擊“提交”按鈕,就是將當前為“草稿”節(jié)點狀態(tài)的單據(jù)流轉(zhuǎn)到了“經(jīng)理待審批”狀態(tài)的事件。

節(jié)點狀態(tài)與流轉(zhuǎn)事件的關系一般保存在配置文件中,例如JBPM就保存在XML文件中,WF更直觀,它附帶一個工作流的圖形編輯器,編輯好圖形后自動保存到對應的XAML文件中。以上面用戶的需求修改為例,如果客戶要求整個流程中不需要經(jīng)理審批環(huán)節(jié),那么只需要在配置文件中做修改,講“草稿”狀態(tài)下的“提交審批”流轉(zhuǎn)事件直接指向“財務待審批”即可,只是這樣一個簡單的修改即可完成客戶那復雜的修改需求,所以這里就是工作流的精華所在了。

除此之外我們還可以改造工作流引擎,在流轉(zhuǎn)事件中加入一些通用功能,例如郵件提醒、短信提醒等功能。例如增加如下需求,所有報銷審批操作執(zhí)行成功后都要郵件提醒下一個狀態(tài)環(huán)節(jié)的負責人,程序員提交“草稿”后單據(jù)進入“經(jīng)理待審批”狀態(tài),那么就需要郵件通知經(jīng)理,催促他盡快處理這位經(jīng)理名下的報銷單據(jù)。

四、需要注意的一些事情

我在這里給出一些工作流節(jié)點命名的一些建議。盡量以“待”字開頭,例如“經(jīng)理待審批”、“財務待審批”,這樣命名可以體現(xiàn)出當前狀態(tài)需要由何種角色的人員來處理,而且也便于需求的變更。這里強烈不推薦使用“已”字命名,例如“程序員已提交”、“經(jīng)理已審批”等。那么如果這樣設計,程序員在草稿狀態(tài)提交后就進入“程序員已提交”狀態(tài),經(jīng)理審批通過后進入“經(jīng)理已提交”狀態(tài)。

這時客戶變更需求,要吧“程序員已提交”狀態(tài)刪除,那么這時候程序員在草稿狀態(tài)提交后就流轉(zhuǎn)到了“經(jīng)理已審批”狀態(tài)。這樣理解起來就有些混亂了。

這里需要聲明一點,圖中的“結(jié)束”狀態(tài)在設計程序的時候不對應具體界面,指向“結(jié)束”的流轉(zhuǎn)事件也就沒有具體的按鈕觸發(fā)。也就是說“結(jié)束”狀態(tài)只是一個虛的狀態(tài),指向“結(jié)束”狀態(tài)的節(jié)點狀態(tài)我們都認為它是一種終結(jié)的狀態(tài)。例如“財務審批通過”狀態(tài)就不可能再向其他狀態(tài)流轉(zhuǎn)了,那么它就是一種結(jié)束的狀態(tài)。上面的例子中只有一個結(jié)束狀態(tài),我們這里再做一次需求的變更,所有的駁回操作不回到“草稿”狀態(tài),都流轉(zhuǎn)到對應的結(jié)束狀態(tài)。如圖所示。

    其實所有的人都希望將工作聚焦在當前需要完成的工作,其次是將要進行的工作。而那些已經(jīng)完成的工作只有年終總結(jié)的時候需要統(tǒng)計一下。例如經(jīng)理最希望看到當前待審批的報銷單,如果經(jīng)理忙完了手頭的工作不免好奇心起會去關心一下還處于草稿狀態(tài)的報銷單,至于“經(jīng)理駁回”狀態(tài)下的報銷單,可能只是年終總結(jié)的時候大BOSS需要看一下數(shù)量而已。所以在設計經(jīng)理的報銷單查詢頁面時,應該默認查詢出所有“經(jīng)理待審批”狀態(tài)的報銷單。所有的角色都希望默認查詢出自己對應狀態(tài)的報銷單據(jù)。財務的操作也應該是如此這里不再冗述。再舉一個例子,有時候大BOSS希望知道某一時間段內(nèi)有多少報銷單已經(jīng)完成了(這是所說的已完成就是已經(jīng)結(jié)束的報銷單,包括“財務審批通過”、“經(jīng)理駁回”和“財務駁回”),那么只需要從工作流中查詢出指向結(jié)束的節(jié)點狀態(tài)報銷單即可。

我再聲明一點,雖然“經(jīng)理駁回”與“財務駁回”在某些業(yè)務上是相同的,但是請不要因為節(jié)省編碼而將這兩種狀態(tài)設計成一種狀態(tài),比較人家客戶的業(yè)務人員在提出需求的時候是分開命名的,這也就意味著這是兩種不同的業(yè)務,誰知道哪天客戶心血來潮需要在“經(jīng)理駁回”狀態(tài)下添加一個流轉(zhuǎn)事件允許返回到“草稿”狀態(tài)。到那時候可能我們可憐的程序員就要在某些代碼上瘋狂的加標志位了。

五、寫在最后

細心的人可能會有這樣的想法,程序員在“草稿”狀態(tài)下可以無限制的保存當前編輯的報銷單,那么這個保存事件是不是應該也是一種流程,是不是應該從“草稿”到“草稿”的流轉(zhuǎn)呢?

本文只是簡介了一下簡單工作流的設計,在實際的設計中還有很多復雜的流程,例如某些業(yè)務需要在某個狀態(tài)節(jié)點由一群人來審批,這群人審批都通過了才可以流轉(zhuǎn)到下一個節(jié)點;某些業(yè)務是由多個狀態(tài)起始,最后結(jié)束的時候匯聚到一個狀態(tài),有點形似Y型流程設計。


當前文章:介紹什么是工作流設計
文章位置:http://www.dlmjj.cn/article/cdcgijj.html