<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

    和前面的章節一樣,我們先從一個故事開始,這個故事和晚飯有關。在我家,周一至周五,老婆做飯,我洗碗。每天做完 飯,老婆會叫我到廚房,說,看,這個盤要洗一下,另外,灶臺臟了,也要擦。如果放在以前,我會說,好,明白了。但是現在,程序員的生活讓我意識到,溝通永 遠不是一件簡單的事情,我說,好,知道了。

    等等,這個故事和本章的主題-數 據模式有一毛錢的關系?這只是一個關于溝通的故事。是的,讓我們稍微映射一下:這里,晚飯這個流程包含了兩個基本的任務,分別是做飯和洗碗,在做飯這個任 務完成時,任務的執行者(老婆)向下一個任務的執行者(我)傳遞了數據(要洗哪些東西),正如語言是人之間的溝通方式一樣,數據是IT系統之間的溝通方式,語言之間的溝通總是最有效的,數據交互卻未必,因為IT系統里的數據交互除了讓計算機理解外重要的是還需要人理解,IT系統是對現實生活的映射,也正因為如此,現在數據之間的溝通也在向語言靠攏即語義化(REST/語義網)。

    好,言歸正傳。

    在 前兩章里,我們分別討論了工作流的控制模式和資源模式,控制模式關注于如何合理調配業務流程里的任務,從而獲得理想的執行效率和收益;資源模式則關注于如 何合理調配可用的資源來執行業務流程。本章將介紹工作流系統里的數據模式,從數據的角度分析工作流系統對數據的處理。數據模式共計39種,在下面的介紹中,我們將這些模式分為了四部分,分別是數據可見性、數據交互、數據傳輸和基于數據的路由。

    本章先會概要重復一下與數據模式相關的一些基本概念,例如流程定義、流程實例、原子任務、塊任務等。接下來會對具體的39種數據模式進行討論,討論的模式按照應用、描述和實現展開,分別對應著實際場景對模式的映射、模式的介紹和工作流系統對該模式的實現支持。最后是小結。

    一、基本概念

    1、工作流系統里的流程結構

    在正式介紹數據模式之前,讓我們先簡單回顧一下工作流系統里流程的基本結構。


    6-1 工作流系統里的流程結構

    流程定義:對業務流程的建模和描述,其具有足夠的細節信息,能夠直接被工作流系統所執行。典型的,流程定義由一系列的任務組成,這些任務以圖形的形式展現并被連接起來。

    流程實例:流程定義的一個執行實例被稱為流程實例。一個流程定義可以存在多個同時執行的流程實例。這些流程實例互相獨立執行。

    任務:一個任務對應著流程定義里的一個單一工作單元。存在四種不同類型的任務:原子任務、塊任務、多實例任務和多實例塊任務。

    原子任務包含簡單且獨立的任務定義,當其初始化時只會產生一個可執行的任務實例。

    塊任務是一系列任務的組合,典型的,工作流系統里存在的子流程任務(節點)即是塊任務,當一個塊任務開始執行時,其將流程控制權傳遞給與之對應子流程的第一個任務,當子流程完成執行后則將控制權返回給塊任務。如圖6-1所示,塊任務C對應著一個由任務X、任務Y和任務Z組成的子流程,實際執行時,任務C會觸發任務X的執行,任務Z執行完畢即子流程執行完成后則會觸發任務C執行完成。

    多實例任務在實際執行時會產生多個并行執行的任務實例,這些任務實例一般互相獨立執行。當一定數量的實例執行完畢后即會觸發后續任務的執行。

    多實例塊任務結合了塊任務和多實例任務的定義,其在實際執行時產生多個任務實例,每個任務實例對應著一個子流程實例。

    任務實例:任務的一個執行實例。

    2、數據相關約定

    我們使用def var ${變量名}定義數據元素,同時def var ${變量名}的聲明位置決定了變量的作用范圍。如圖6-1所示,我們在任務C上定義了一個名為M的數據變量,其的作用范圍為任務C,任務級別。

    我們使用use(${變量名})表明對變量的使用;使用pass(${變量名})表明數據變量的傳遞。在圖6-1里,變量M從任務C傳遞至任務E

    對于變量的數據類型,典型的有Stringintegerfloatbooleandatetime等,很多工作流系統使用序列化和反序列化支持存儲任意類型的數據類型,如數組、集合、對象。

    3、類比的約定

    在后續對各個模式的介紹里,我會圍繞一個項目團隊的故事進行映射,我們如此約定:

    流程定義:我們認為所有成熟的軟件公司都會建立起其完整并適用的一套軟件開發流程,我們將這套流程看作是這里的流程定義。

    流程實例:圍繞著軟件開發流程,我們會使用這套流程來開始我們實際的軟件開發項目,我們將所有的軟件開發項目都看作是開發流程的執行實例,即流程實例。

    任務:項目開發過程中的各項任務。

    數據:我們將團隊成員之間的信息交流看作是數據交互。



    http://www.tkk7.com/ronghao 榮浩原創,轉載請注明出處:)
    posted on 2010-03-14 21:14 ronghao 閱讀(2279) 評論(0)  編輯  收藏 所屬分類: Head First Process-深入淺出流程
    <2010年3月>
    28123456
    78910111213
    14151617181920
    21222324252627
    28293031123
    45678910

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

    常用鏈接

    留言簿(38)

    隨筆分類

    隨筆檔案

    文章分類

    文章檔案

    常去的網站

    搜索

    •  

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 精品亚洲456在线播放| 亚洲人成电影网站久久| 男女男精品网站免费观看| 国产精品麻豆免费版| 美国毛片亚洲社区在线观看| 国产精品四虎在线观看免费| 久久亚洲精品无码网站| 全黄a免费一级毛片人人爱| 美女视频黄频a免费大全视频| 永久免费AV无码网站在线观看| 久久综合亚洲色hezyo| 四虎永久免费影院在线| xxxxxx日本处大片免费看| 中文字幕亚洲无线码a| 国产99视频精品免费专区| 亚洲欧洲日产v特级毛片| 在线a级毛片免费视频| 欧美亚洲国产SUV| 久久亚洲国产成人影院网站| 久久久久免费精品国产小说| 亚洲国产综合第一精品小说| 免费高清小黄站在线观看| 免费无码又爽又黄又刺激网站| 国产亚洲综合色就色| 久久WWW免费人成一看片| 亚洲偷自拍另类图片二区| 亚洲视频人成在线播放| 免费国产污网站在线观看15| 亚洲色精品三区二区一区| 久久综合亚洲色HEZYO国产| 最近中文字幕mv免费高清在线 | 亚洲gv白嫩小受在线观看| 国产香蕉免费精品视频| 黄床大片30分钟免费看| 亚洲91av视频| 国产精品免费_区二区三区观看| 最近免费中文字幕中文高清| 亚洲av永久无码精品天堂久久 | 亚洲最大的黄色网| 成人亚洲性情网站WWW在线观看| h在线观看视频免费网站|