跳到主要內容

Windows Workflow Foundation (WF)閱讀建議

wwf prowf Essentialwf

不能老是讓人家覺得我的生活好像很好過,偶而也要寫寫工作上所需要讀的書。

所以好不容易在2月硬是K了3本WWF的書(也硬寫了百來張簡報……我真是認真啊~),分享一些心得給大家。

Windows Workflow Foundation(WF),是一項微軟用於定義、執行、管理工作流程(workflows)的API,功能頗為強大,與jBPM或是BPEL的設計概念有所不同。

對於workflow設計而言,最好是都了解會比較好,WF的設計細度及工具使用是令人激賞的,遠優於 java陣營方面的,但就企業的流程架構設計而言,WF則是不夠寬廣的;但畢竟,人家也擺明了就是Foundation咩,所以這樣比是不客觀的。

不管是java or .NET都強烈建議學習WF,對於workflow的設計概念會有所幫助。

因為光靠Domain model是不夠"用"的,當process與rules都可分離時,架構彈性才會出來,WF又有內建rule engine(不要拿去跟Drools比),比起jBPM+Drools的學習,使用VS2008學習WF容易上手多了。

閱讀順序可如下:

  • wwf開發指南
  • Pro WF: Windows Workflow in .NET 3.5
  • Essential Windows Workflow Foundation

wwf開發指南:作者 張瑾

252頁,薄薄一本書,不起眼;但推薦。

理由是,範例夠多,清楚且簡單(且使用VS2008),把Activities、Event-Driven Activities、Transactions、Exception and Error Handling、Persistence、Tracking、State Machine、Custom Activities都講了一遍,範例也是一個一個來,最後還有個綜合應用。

裡面也有不少作者自身的心得,雖然有的範例應用的不是很好,但對於初學 WF 的人來說,這本書夠了,把範例從頭打到尾,對WF的掌握也夠應用了。

另外一個優點是:至少是簡體中文的,對於英文不好的人來說,這可是福音。

Pro WF: Windows Workflow in .NET 3.5

這本則是一定要讀,深入淺出。

Ch02的Foundation Overview要看,在使用sequential and state machine的時機上,會比較清楚。Hosting的觀念也較完整。

Ch09的State Machine Workflows要做一遍,會很有fu~
Ch11的Workflow Rules寫得比較完整。

Ch15的Workflow Tracking講得很仔細,這個章節要特別看,因為tracking是之後data mining/report的重點。

英文可以的,看這本就行。

Essential Windows Workflow Foundation

這本的話,有簡體跟英文兩種版本。(簡體書名是:WF本質論)

很硬,都是hard code,但讀這本可以了解wf的底層運作(CLR跟workflow runtime),可以的話Ch03 Activity Execution、Ch05 Applications讀一讀,幫助會很大。
(不過這本的後面幾章我也是西里呼嚕的念過去,有志者請讀完跟我說心得….. )

另可參考下列文章與範例:
Microsoft Windows Workflow Foundation Step by Step

工作流程服務範例 (WF)
Windows Workflow Foundation Tutorials

喔,另外有一本”WWF新一代工作流程開發實務”,唯一的繁體書,……,若是用VB.NET的人可以稍微看一下,不然,就不要浪費時間了。

留言

這個網誌中的熱門文章

GLOOMY BEAR 暴力熊

Gloomy Bear身世背景: Gloomy是一隻在路邊被遺棄的粉紅色小熊 , 被小朋友Pity發現,並將牠帶回家中收養, 並為小熊取名為Gloomy。 可惜.....Gloomy外表可愛,但因為被拋棄的緣故~卻有著一般熊的暴力性格, 長大長出爪子後就時常向主人用暴力招數打招呼, 而Pity就慘被Gloomy日日夜夜地欺負!悲慘ㄉ人生就這樣子開始囉!! 暴力熊喜好~咬主人頭, 而牠的主人,復原能力極高...打不死喔~厲害厲害! 暴力熊顏色:粉紅色,金色,銀色,紅色,藍色,黃色,還有罕見的綠色與混色。 粉紅色暴力熊性別:女 頭大身細,眼珠黑色,爪白色兼尖利,具有殺傷力,她多數用口爪殺人,殺完人後喜歡在街上徘徊。 小主人每次都被暴力熊揍得半死兼頭破血流, 但仍然不離不棄地緊緊抱住這隻血腥的寵物; Pity就算受到傷害亦要讓開心的回憶遮掩,然後繼續微笑期待小熊再次跟他一起溫習/做功課/看書;相信等待他的會是小熊的溫柔而非暴力傷害; 暴力熊和他小主人之間微妙的情感讓人感動又心酸; 這次轉輪科技所推出的暴力熊,內容包含小男孩Pity與粉紅熊Gloomy兩支一組。造形上善用Gloomy胖胖的軀體,將轉輪關節隱藏其中,全身有14處可動。可替換配件包含小男孩被打的表情,還有防止熊熊咬人的口罩以及牠嘴角流下來的血,原型制作為山口勝久。

明天是晴天嗎(明日晴れるかな)

因為最近的日劇:求婚大作戰,才聽到這首歌的。 桑田佳祐的"明日晴れるかな"。 歌詞的內容跟劇情還蠻貼切,求婚大作戰就劇情而言不是頂好的,但題材相當有趣,令人反省的地方也頗多。 很多時候很多事,如果再來一次,我們會怎麼選擇怎麼做? 這MV不同於日劇的片尾MV: 中文歌詞如下: 明天是晴天嗎 作詞:桑田佳祐  作曲:桑田佳祐  編曲:桑田佳祐 島健 炙熱的淚呼喚著愛 曾經閃爍的歲月 也迷失了方向 明天我依舊徘徊在街頭 沒有回頭路可走 側耳傾聽 心靈深處是什麼在私語 獨自躲在昏暗的街頭 回首當日的天空  上帝賜予我們孤獨與試煉 想哭就要放聲大哭 難道是命中注定 叫人不敢面對 日覆一日 不可思議 Oh baby No maybe 愛已走遠 情已不再 我只能佯裝嘆息 將怨恨拋給這世界 Oh baby you are maybe 憂喜交織 幸福的feeling 抱緊我 one more time 珍惜曾經的我 讓回憶刻骨銘心 往事已經隨風 人生路還漫長 只為見證夢想 誰來開啟奇跡之扉? 多想再一次觸碰你的笑顏 不知你是否發現命運的鑰匙 就握在你手中 Why baby? Oh tell me 愛恨纏綿 假裝視而不見 只為能守護在愛人身邊 Oh baby you are maybe 距離勝負僅一步之遙 站在崩潰邊緣的feeling 我想穿越 one more chance I talk to myself Oh baby No maybe 愛已走遠 情已不再 輕輕的嘆息背後 只留下深深的悔恨 Oh baby Smile baby 生命轉瞬即逝 每個人都在心中默默祈禱 明天是晴天嗎 在那遙遠的天空下 這些是有趣的文章: 釋日劇《求婚大作戰》中的「哈利路亞」 劇情解釋

不服從的領導學:不聽話的員工,反而有機會成為將才

這本書,清楚介紹了 計畫 - 行動 - 成果 的思考方式,尤其是「校準」的觀念。 也詳細指出了 領導 、 管理 與 指導 間的不同。 非常好的一本管理/領導者要看的書。強推。 執行的方法創造出奇蹟,執行的方法才是我們應該敬佩的地方。 在戰爭中,「事情不會像上好油的機器那樣運轉順暢;事實上,機器從開始運轉就會產生阻力,需要領導者極大的意志力才能克服。」在戰爭裡,「所有事情都很簡單,但連最簡單的事都很困難......在戰爭中展開行動,就像在阻力重重的介質裡移動。」 克勞塞維茨想將這樣的戰爭實況形成一種觀念,他找到「摩擦」這個詞。 摩擦就是一切「不確定性、錯誤、意外、技術上的困難、無法預見的事物及其對決策造成的影響、士氣與行動」的總合。 摩擦的存在,恰恰說明了為什麼軍隊需要軍官、企業需要主管的存在。也因此,預測與處理摩擦,就成了管理的核心工作。 一個由不同的個人組成的組績,不論紀律多麼嚴明,想要追求共同的目標,都會像在開車時踩煞車一樣,一定會造成摩擦。 我們只能取得部分資訊,又只能交給處在高壓狀態下的人、進行有瑕疵的處理。 我們之所以會遇到摩擦,是因為人類認知上的限制;我們對現在所知有限、而未來根本就不可知。 線性思維有兩個特徵:一是按照比例,也就是投入多少就產出多少;二是相加特性,亦即整體是各部分相加的總和。但非線性系統卻完全不是這樣,克勞塞維茨在當時就很清楚戰爭是非線性系統,只是無法形成具體概念,只能借用摩擦、偶發事件、不可預測性等概念來說明。 管理的課題:如何對付有資訊的有限、如何相互傳遞我們確實擁有的資訊,以及我們最終應該如何行動。 克勞塞維茨用兩種落差來描述摩擦的影響。一是我們試圖在不可預測的外部環境採取行動,但我們一直沒意識到這點,因而產生了「預期成果」與「實際成果」之間的落差。二是內部的摩擦,導致組織的「計畫」與「行動」之間出現落差。這種落差來自資訊在取得、傳輸和處理的過程中,涉及許多獨立自主的媒介。三是是行動與實際成果之間的落差(或是”計畫跟預期成果之間的落差”)。 實際採取的行動和應該採取的行動,是不同的。會出現這種狀況,可能是錯誤的行動計畫造成的,或是 我們雖然策畫了正確行動,但執行者沒有照計畫去做。 計畫不完美,是因為我們缺乏「知識」。我們可能沒蒐集到足夠的資訊,或是對資訊的詮釋有...