唐僧與
QA MM
在一個典型的項目團隊里,包括了以下幾種角色(帽子):
PM(項目經理)、
BA(業務分析師)、
DEV(程序開發者)和
QA(質量保證人員),整個團隊的目標是向客戶交付價值。
那么,有一天,
QA MM來找我,我是開發人員。
MM說,一張圖片沒有正常顯示,我想知道原因,同時想知道你能否修復。我的第一想法是,這不可能,一定是環境的原因。我說,好的,稍等。接下來,我張大嘴巴看到了
MM給我重現的
BUG:本該顯示圖片的位置一片空白,就像此時我合不上的嘴。這怎么可能呢?我想,這個功能完成的如此之得意,以至于測試用例里的數據都是以我的名字命名的。
幾分鐘后,或者更長,我叫來
MM,說,找到原因了。
我打開編輯器,光標在源程序的某一行閃爍,我說,最根本的原因在這里。我看到
MM的眼中閃過一絲迷茫。接下來,我卻換到另外一個源文件,光標繼續閃爍,我說,這里的程序因此受到影響。看得出,
MM有點發暈。終于,當我打開第
N個源文件并試圖繼續講解時,
MM昏過去了。
當
MM蘇醒過來時,我在她清澈的雙眼中看到了一只清晰的唐僧。
MM肯定感到了不好意思,因為我的講解中包含了比喻、類推、排比等我力所能及的各種語文知識,看得出,我很努力,我的語文老師也很努力,所以她委婉地說,能不能簡單一點?
我想了想,說,測試驅動時測試數據不全導致程序少考慮一種情況。
MM說,能修復嗎?
我說,可以。于是故事結束。
就
是這樣,當我們執行一項任務時,圍繞這項任務必然會產生許許多多的信息,這些信息對于該任務的執行者是必須的,但是對于其他人則不是,有效的溝通往往來自
于簡練的表達即只表達對方需要和可以理解的內容,浩瀚的細節只會將真正想表達的內容淹沒。其實這里還有這樣一層意思:我之所以用這么多的細節信息來淹沒
QA,實際上是不太情愿承認程序里有
BUG。
QA想要的結果很簡單,是否是程序
BUG,能否修復。而開發人員則往往把自己的程序與自己關聯在了一起,認為程序是自己的擴展,程序有
BUG則意味著自己有缺陷。這一關系明顯是矛盾的,可是一些團隊里開發人員和
QA能夠和平相處,而有些團隊卻勢如水火。
那么,對于單個任務而言,需要定義自己的變量,這些變量數據只與該任務相關,只在該任務里可見。典型的工作流應用于任務執行期間的中間數據存儲。在文檔處理中,一個重要的功能就是需要提供版本管理,在單個任務實例里,辦理者能夠管理自己處理過的文檔版本。
描述
任務能夠定義變量,在一個流程實例里,該變量只能被其任務實例所使用。
圖
6-2任務級別的數據可見性
如圖
6-2所示,我們在任務
B上定義了一個變量
M,此時,在一個流程實例里,只有任務
B的實例才能使用該變量。
實現
存在兩種實現方式,一種是如圖
6-1所示的,在任務節點定義中聲明變量,運行期初始化任務實例的同時初始化該變量并使用;
另一種是在流程定義級別統一聲明變量,但是各個任務實例都獨立初始化并存儲該變量。第二種實現方式在各個任務都需要使用同一語義的變量時很常見,例如各個任務實例都會有參與者,我們在流程定義時聲明一個名為
userid的變量,在流程實際執行時,各個任務實例都會獨自保存有自己的
userid數據。
http://m.tkk7.com/ronghao 榮浩原創,轉載請注明出處:)
posted on 2010-03-16 22:05
ronghao 閱讀(1644)
評論(0) 編輯 收藏 所屬分類:
Head First Process-深入淺出流程