第1章 啓動項目 1
1.1 定義項目和項目經理 1
1.2 管理項目的關鍵驅動因素、約束和浮動因素 3
1.3 與客戶或齣資人討論項目約束 5
1.4 決定項目的關鍵驅動因素 7
1.5 應對喜歡過多乾預項目的齣資人 8
1.5.1 預測未來 9
1.5.2 使用與上下文無關的問題識彆項目真正的驅動因素 9
1.6 編寫項目章程,共享現有決策 10
1.6.1 遠景 11
1.6.2 需求 11
1.6.3 目標 11
1.6.4 成功標準 12
1.6.5 ROI 13
1.7 理解質量對於項目的意義 13
第2章 規劃項目 16
2.1 踏上徵程 16
2.2 使項目足以啓動的規劃 16
2.3 開發項目規劃模闆 18
2.3.1 産品意圖 18
2.3.2 曆史記錄 19
2.3.3 發布條件 20
2.3.4 目標 20
2.3.5 項目組織 20
2.3.6 日程總覽 21
2.3.7 人員配備 22
2.3.8 建議日程 23
2.3.9 製訂項目風險列錶 23
2.4 製訂發布條件 24
2.4.1 確定當前項目最重要的因素 25
2.4.2 草擬發布條件 26
2.4.3 讓發布條件符閤SMART原則 27
2.4.4 在發布條件上達成多方共識 28
2.5 使用發布條件 28
第3章 使用生命周期組織項目 31
3.1 理解項目生命周期 31
3.2 生命周期概覽 32
3.3 在項目中尋求反饋 36
3.4 大規模項目需要組閤使用多種生命周期 37
3.5 管理架構風險 40
3.6 從瀑布中擺脫齣來 41
3.7 我最鍾愛的生命周期 42
第4章 安排項目日程 43
4.1 注重實效的項目日程安排 43
4.2 可供選擇的項目日程安排技術 45
4.2.1 自頂嚮下式日程安排 45
4.2.2 自底嚮上式日程安排 45
4.2.3 由內及外式日程安排 45
4.2.4 哈德遜灣式啓動 46
4.2.5 短期迭代 47
4.3 用低技術含量工具安排項目日程 47
4.3.1 使用便利貼安排項目日程的基本技術 49
4.3.2 使用便利貼和箭頭安排項目日程 51
4.3.3 為每一個職能組使用便利貼安排項目日程 51
4.3.4 按功能使用便利貼安排項目日程 51
4.3.5 使用便利貼安排項目日程的好處 52
4.3.6 基於可交付物的規劃 52
第5章 估算工作 54
5.1 實用的項目估算方式 54
5.1.1 對比曆史數據進行估算 54
5.1.2 通過Delphi和寬帶Delphi方式進行估算 54
5.1.3 何時不應相信團隊的估算 55
5.1.4 小心順序式生命周期的估算陷阱 56
5.1.5 使用自信心範圍進行估算 57
5.1.6 使用日期範圍進行估算 59
5.1.7 使用三個日期:最佳狀況、最有可能、“墨菲”日期 60
5.1.8 在估算時分開考慮任務的大小與持續時間 61
5.1.9 規劃撲剋 62
5.1.10 在估算前用試探性開發收集數據 63
5.1.11 讓估算更容易的提示 63
5.2 用裏程碑切分項目 64
5.3 你們能夠不做哪些事情 66
5.4 身背多個項目時的估算 66
5.5 主動安排人們進行多任務 67
5.6 使用波浪式規劃 68
5.7 決定迭代的持續時間 69
5.8 盡可能使用“小石子”進行估算 70
5.8.1 當任務不清楚時創建並使用“小石子” 71
5.8.2 如何得到“小石子” 71
5.8.3 為什麼使用“小石子” 72
第6章 識彆和避免日程安排遊戲 73
6.1 給我一塊石頭 73
6.2 “希望”是我們最重要的策略 75
6.3 拒絕女王 77
6.4 把灰掃到地毯下麵 79
6.5 幸福日期 80
6.6 屁股著火 82
6.7 分散注意力 84
6.8 日程等於承諾 85
6.9 到瞭之後,我們會知道身處何方 86
6.10 日程安排工具總是對的,又稱為夢幻時間日程 88
6.11 我們必須擁有這個功能,否則就完蛋瞭 90
6.12 我們不能說“不” 91
6.13 日程小雞 93
6.14 90%完成狀態 94
6.15 我們馬上會變得更快 95
6.16 令人恍惚的日程 96
第7章 創建齣色的項目團隊 99
7.1 招募需要的人 99
7.2 形成團隊凝聚力 101
7.2.1 好工具讓團隊有好的發揮 102
7.2.2 軟件配置管理係統應滿足的最低要求 102
7.2.3 缺陷跟蹤係統應滿足的最低要求 102
7.2.4 團隊發展的5個階段 103
7.3 讓組織配閤你的工作 103
7.3.1 以項目經理的方式管理單一職能團隊 104
7.3.2 管理矩陣式項目團隊 105
7.3.3 管理跨職能項目團隊 105
7.4 對必需的團隊規模瞭如指掌 105
7.5 知道何時應該加人 107
7.6 成為齣色的項目經理 107
7.6.1 提升人際交往技能 108
7.6.2 提升功能性技能 108
7.6.3 提升專業領域技能 109
7.6.4 提升工具和技術的專業技能 110
7.7 知道何時該全身而退 111
7.7.1 什麼樣的組織不適閤你 111
7.7.2 什麼樣的團隊不適閤你 115
7.7.3 什麼樣的産品不適閤你 115
第8章 掌控項目 117
8.1 掌控項目的節奏 117
8.2 舉行中途迴顧 118
8.3 為需求排序 119
8.4 用時間盒限定需求相關的工作 122
8.5 將迭代限製在4周或是更少的時間內 124
8.6 使用波浪式規劃和日程安排 125
8.7 創建跨職能團隊 127
8.8 根據項目的風險選擇生命周期模型 128
8.9 保持閤理的工作時間 129
8.10 使用“小石子” 130
8.11 管理乾擾 131
8.11.1 應對其他項目乾擾 131
8.11.2 應對其他人的乾擾 132
8.12 管理缺陷,從項目初就開始 132
第9章 保持項目節奏 137
9.1 在項目中使用持續集成 137
9.2 為構建創建自動化冒煙測試 138
9.3 按功能實現,而不是按架構 140
9.3.1 首先實現具有最高價值的功能 142
9.3.2 按功能調試 142
9.3.3 按功能測試 142
9.4 多幾隻眼睛盯著産品 143
9.5 準備重構 145
9.6 通過用例、用戶故事、角色和場景來定義需求 146
9.7 分離需求與GUI設計 147
9.8 盡可能使用低保真度原型 148
第10章 管理會議 150
10.1 取消這些會議 150
10.1.1 避免不需要你解決問題的會議 151
10.1.2 絕對不要舉行多人參加的順序式進度報告會議 151
10.1.3 避免這些會議 152
10.2 舉行下列會議 153
10.3 項目啓動會議 153
10.4 發布版本規劃會議 153
10.5 進度報告會議 154
10.5.1 每日站立會議 155
10.5.2 一對一會議 156
10.5.3 通過可見的方式瞭解進度 157
10.5.4 通過電子郵件,從團隊成員那裏獲取每周進度報告 157
10.5.5 每周嚮團隊報告進度 158
10.6 嚮管理層報告進度 158
10.7 項目團隊會議 159
10.8 迭代審查會議 160
10.9 會議疑難問題解答 160
10.10 管理與遠程團隊的電話會議 162
10.10.1 通用引導指南 163
10.10.2 準備工作 163
10.10.3 進行事先規劃 164
10.10.4 引導會議 164
10.10.5 電話會議後的工作 165
第11章 創建並使用項目儀錶闆 166
11.1 測量有風險 166
11.2 根據項目完成度來衡量進度 168
11.2.1 使用速度圖錶跟蹤日程安排進度 169
11.2.2 使用迭代內容圖跟蹤總體進度 170
11.2.3 計算軟件項目的掙值並無實際意義 171
11.2.4 用EQF跟蹤最初的估算 173
11.2.5 更多度量能提供更多信息 175
11.2.6 如果隻能度量項目日程,那就這麼做 175
11.2.7 與項目團隊人員分配情況相關的圖錶 177
11.2.8 判斷項目的變化率 178
11.2.9 查看開發人員是在取得進展還是在白費時間 179
11.2.10 測量查找和修復問題的成本 181
11.2.11 瞭解開發人員和測試人員是否在解決缺陷方麵取得進展 182
11.2.12 展示測試進度 183
11.2.13 展示定性數據 184
11.2.14 用圖錶展示團隊同意采用的實踐 185
11.2.15 度量敏捷項目 187
11.3 為齣資人創建項目儀錶闆 187
11.3.1 展示風險列錶 187
11.3.2 展示在滿足發布條件方麵取得的進展 188
11.4 使用項目氣象報告 189
11.4.1 要小心定義氣象報告的圖示 190
11.4.2 建立可信的氣象報告 192
11.4.3 每周發布氣象報告 193
第12章 管理多地點項目 194
12.1 提一個問題的成本是多少 194
12.2 識彆項目的文化差異 195
12.3 在團隊間培養信任 196
12.3.1 確保每個地點都有完整的項目可交付物 196
12.3.2 確保各個團隊可以互相協作 198
12.3.3 讓人們建立個人接觸 198
12.4 在團隊間使用互補實踐 199
12.4.1 使用互補生命周期 200
12.4.2 詳細說明每個團隊的裏程碑和交接物 200
12.5 尋找潛在的多地點項目和不同文化導緻的問題 206
12.6 在外包時要避免下列錯誤 207
第13章 在項目中集成測試 209
13.1 從一開始,就讓人們將“減少技術債務”牢記心間 209
13.2 使用小規模測試降低風險 210
13.3 TDD是在項目中集成測試最簡便的方式 211
13.4 使用多種測試技巧 214
13.5 確定每個團隊成員在測試工作中的角色 216
13.6 正確的開發人員與測試人員之比應該是多少 220
13.6.1 産品風險對比率的影響 220
13.6.2 項目和流程風險對比率的影響 221
13.6.3 人員及其能力對比率的影響 222
13.7 讓測試與開發同步進行 224
13.8 為項目製定測試策略 224
13.9 係統測試策略模闆 225
13.10 QA與測試有差彆 227
第14章 管理項目群 229
14.1 如果你要管理項目群 229
14.2 將多個相關項目組織到一個發布版本中 230
14.3 隨時間推移組織多個相關項目 232
14.3.1 將産品的多個版本組織到發布列車中 232
14.3.2 讓發布列車為你服務 233
14.3.3 在不使用發布列車的情況下,將多個版本組織到一個産品中 234
14.4 管理項目經理 234
14.5 創建項目群儀錶闆 236
14.5.1 度量互相依賴的項目 236
14.5.2 度量一係列項目 237
第15章 結束項目 238
15.1 管理發布早期版本的請求 238
15.2 管理beta版本 239
15.3 項目經理何時知道無法按時發布項目 240
15.3.1 “避免小的偏差” 240
15.3.2 承諾一個新日期 241
15.3.3 估算係統測試時間 243
15.3.4 在時間不夠的情況下管理係統測試 245
15.4 指導項目走嚮完成 246
15.4.1 管理“結束遊戲” 247
15.4.2 避免“缺陷提升和降級的遊戲” 247
15.4.3 準備項目迴顧 248
15.4.4 準備慶祝 249
15.5 取消項目 251
第16章 管理項目組閤 253
16.1 構建所有項目的組閤 253
16.2 評估項目 254
16.2.1 定性評估項目 254
16.2.2 定量評估項目 255
16.3 決定現在為哪個項目提供資金 255
16.4 對組閤中的項目進行排序 256
16.5 盡快啓動項目 256
16.6 使用産品待辦事項列錶管理新功能需求 258
16.6.1 構建産品待辦事項列錶 258
16.6.2 管理待辦事項列錶 260
16.7 組閤管理答疑 260
16.7.1 管理從事多個項目多個任務的情況 260
16.7.2 說服管理層:“切換上下文”是個壞主意 261
16.7.3 如何對多任務說“不” 263
附錄A 關於項目生命周期的更多詳細信息 266
附錄B 術語匯總 276
附錄C 參考書目 278
· · · · · · (
收起)