【正文】
?! ∠旅嫖覀冇懻撌裁词峭瓿傻臉藴?、定義完成的標準的作用以及如何定義完成的標準。項目管理培訓 定義完成的標準和進度信息的核實 獲取進度信息后,要及時對其進行核實。站立會議中,每個團隊成員都要介紹自己昨天完成了什么,今天計劃做什么。不管采用什么樣的平臺,項目經(jīng)理應該引導和鼓勵團隊成員主動將各自的進度信息推送到這個平臺,而不是每個人進度還要等其他人來詢問。這個平臺可以是一個管理軟件,比如工作流軟件。因此,項目經(jīng)理需要引導和鼓勵團隊成員主動關注自己手頭上的任務所依賴的任務的進度。因此,敏捷開發(fā)團隊中,進度不應該是只有項目經(jīng)理才關心的事情,而是整個團隊成員都應該關心的事情。 進度信息的獲取 由于團隊開發(fā)中的每個團隊成員的日常工作之間都存在或多或少的依賴關系:某個人的工作要以其他人的一件工作產(chǎn)出為輸入,同時其工作的輸出又是另一個人的某件工作的輸入?! τ诘械募夹g(shù)風險點要優(yōu)先安排進行驗證。這也比將該任務計劃為 5 天完成節(jié)省時間。也就是說,一件任務如果需要 3 天時間完成,而計劃安排的持續(xù)時間是 5 天的話,這個任務會消耗 5 天甚至更多的時間才能完成。s Law)所闡述的現(xiàn)象卻給了我們在某些情況下要適當壓縮任務尤其是關鍵任務的持續(xù)時間。而關鍵任務持續(xù)時間的延長則延長了整個迭代持續(xù)的時間?! 〕鲇趹獙︼L險的需要在安排計劃時留出所謂的緩沖時間有其合理性。此時,計劃可以安排多個人并行開發(fā)這幾個 Story、但是轉(zhuǎn) Story 測試時,這幾個 Story 可以合并成一個大 Story一起轉(zhuǎn)測試。項目管理者聯(lián)盟文章 計劃安排時考慮避免重復勞作也是縮短工期的一個常見方法。此時,可以使用測試樁(Testing Stub)來模擬 B 功能的實現(xiàn),這樣使得 A 功能的開發(fā)和測試可以先獨立于 B 功能的實現(xiàn)。比如,有兩個功能的開發(fā)任務,其中一個功能 A 依賴于另外一個功能 B。這就要求我們在某些情況下要盡可能地優(yōu)化項目計劃,以保證工期不會超出時間盒的范圍。但是,由于迭代開發(fā)往往采用時間盒(Timebox)的方式進行,即要求每次迭代的時間是固定的(業(yè)界推薦的是 2~4 周)。因此,每次迭代所要實現(xiàn)的需求相對較少。優(yōu)化項目計劃 敏捷開發(fā)的基本特征是迭代開發(fā)。而迭代開發(fā)的強調(diào)的是小批量、頻繁交付。這使得迭代開發(fā)中的項目計劃制定相對容易,制定項目計劃時任務與任務間的邏輯關系也比較容易掌握。而每次迭代所要實現(xiàn)的需求(Story)的個數(shù)及其難度都不盡相同?! ?yōu)化項目計劃的常見方法是盡可能地使各個任務并行。但這并不意味著我們必須將這兩個功能的開發(fā)任務串行安排(即先開發(fā) B 功能,再開發(fā) A 功能)。因此這兩個功能的開發(fā)可以并行。在 Story 驅(qū)動的一個迭代開發(fā)過程中,從第二個迭代開始,往往存在多個 Story 的實現(xiàn)涉及同一個模塊的代碼修改。從而避免了多次測試同一個模塊帶來的浪費。但是,這個緩沖時間延長