內容簡介
《用戶故事與敏捷方法》詳細介紹了用戶故事與敏捷開發方法的結合,詮釋了用戶故事的重要價值,用戶故事的實踐過程,良好用戶故事編寫準則,如何蒐集和整理用戶故事,如何排列用戶故事的優先權,進而澄清真正適合用戶需求的、有價值的功能需求。《用戶故事與敏捷方法》對於軟體開發人員、測試人員、需求分析師和管理者,具有實際的指導意義和重要的參考價值。
作者簡介
科恩(Mike Cohn),是敏捷聯盟的發起成員之一,並擔任其文章項目的總監。他1984年開始編程,1988年開始管理軟體項目,客戶包括富達投資、維亞康姆、寶潔、NBC和花旗銀行。Mike寫本書時是Fast401k的軟體工程副總裁。這家行業領先公司提供基於網際網路的401(k)檔案保存和管理解決方案。Fast401k向金融服務行業客戶提供自主品牌的e401k軟體產品,作為外包服務供應商,利用專有技術實現規模經濟效應。在本書之前,Mike著有或合寫了4本編程方面的書籍。(譯者註:Mike也是《敏捷估計及估算》及Succeedingwith Agile兩本重要敏捷著作的作者,並與其他兩位敏捷泰斗Ken Schwaber和EstherDerbv一起創辦了Scrum聯盟。)
圖書目錄
第I部分 起 步
第1章 概覽 3
什麼是用戶故事? 4
細節在哪裡? 5
“必須多長時間完成?” 6
客戶團隊 7
使用故事的過程是怎么樣的? 7
規劃發布和疊代 9
什麼是驗收測試? 11
為什麼要變? 12
小結 13
問題 14
第2章 編寫故事 15
獨立的 15
可討論的 16
對用戶或客戶有價值的 18
可估計的 19
小的 20
分割故事 21
合併故事 23
可測試的 23
小結 24
開發人員職責 25
客戶團隊職責 25
問題 25
第3章 用戶角色建模 27
用戶角色 27
角色建模的步驟 28
通過頭腦風暴,列出初始的用戶
角色集合 29
整理最初的角色集合 30
整合角色 31
提煉角色 32
兩個額外的技術 33
虛構人物 33
極端人物 34
如果有現場用戶該如何? 35
小結 35
開發人員職責 35
客戶職責 35
問題 36
第4章 蒐集故事 37
引出和捕捉是不合用的 37
夠用就行,不是嗎? 38
方法 38
用戶訪談 39
問卷調查 41
觀察 41
故事編寫工作坊 42
小結 45
開發人員職責 45
客戶職責 45
問題 46
第5章 與用戶代理合作 47
用戶的經理 47
開發經理 48
銷售人員 49
領域專家 49
市場行銷團隊 50
以前的用戶 50
客戶 51
培訓師和技術支持 52
業務分析師或系統分析師 52
與用戶代理合作時,做些什麼? 52
能接觸到用戶但訪問受限時 52
實在不能接觸到用戶時 53
可以自己來嗎? 54
設立客戶團隊 54
小結 55
開發人員職責 55
客戶團隊職責 56
問題 56
第6章 用戶故事驗收測試 57
在寫代碼之前寫測試 58
客戶定義測試 59
測試是過程的一部分 59
多少測試才算多? 59
集成測試框架 60
測試類型 61
小結 62
開發人員職責 62
客戶職責 62
問題 62
第7章 優秀用戶故事準則 63
從目標故事開始 63
切蛋糕 63
編寫封閉的故事 64
卡片約束 65
根據實現時間來確定故事規模 65
不要過早涉及用戶界面 66
有些需求並不是故事 67
在故事裡包括用戶角色 67
只為一個用戶編寫 68
以主動語態編寫 68
由客戶編寫 68
向故事卡編號說“不” 68
不要忘記意圖 69
小結 69
問題 70
第II部分 估算和計畫
第8章 估算用戶故事 73
故事點 73
以團隊估算 74
估算 74
三角測量 75
使用故事點 76
如果用結對編程呢? 77
一些提醒 78
小結 79
開發人員職責 79
客戶職責 79
問題 79
第9章 發布計畫 81
我們想在什麼時候發布 81
希望在發布中包含哪些功能? 82
排列故事優先權 82
混合優先權 84
高風險故事 84
根據架構需要安排優先權 85
選擇疊代長度 86
從故事點到預計工期 86
初始速率 87
猜測速率 87
創建發布計畫 88
小結 88
開發人員職責 89
客戶職責 89
問題 89
第10章 疊代計畫 91
疊代計畫概覽 91
討論故事 91
分解任務 92
準則 93
承擔職責 94
估算並確認 94
小結 95
開發人員職責 96
客戶職責 96
問題 96
第11章 測量並監控速率 97
測量速率 97
計畫速率和實際速率 98
疊代燃盡圖 100
疊代中的燃盡圖 102
小結 104
開發人員職責 105
客戶職責 105
問題 105
第III部分 經常討論的話題
第12章 故事不是什麼 109
用戶故事不是IEEE 830 109
用戶故事不是用例 112
用戶故事不是場景 115
小結 117
問題 118
第13章 用戶故事的優勢 119
口頭溝通 119
用戶故事容易理解 121
用戶故事的大小適合做計畫 122
用戶故事適合於疊代開發 123
用戶故事鼓勵延遲細節 124
用戶故事支持隨機應變的開發 124
用戶故事鼓勵參與性設計 125
用戶故事傳播隱性知識 126
用戶故事的不足 126
小結 127
開發人員職責 127
客戶職責 128
問題 128
第14章 用戶故事不良症兆一覽 129
故事太小 129
故事互相依賴 129
鍍金 130
細節太多 131
過早考慮用戶界面細節 131
想得太遠 132
故事劃分太過頻繁 132
客戶很難為故事安排優先權 132
客戶不願意寫用戶故事,也不願意
為故事安排優先權 133
小結 134
開發人員職責 134
客戶職責 134
問題 134
第15章 Scrum與用戶故事 135
Scrum是疊代和遞增的 135
Scrum基礎 136
Scrum團隊 137
產品Backlog 137
Sprint計畫會議 138
Sprint評審會議 140
每日Scrum簡會 140
在Scrum中使用用戶故事 142
Scrum和產品Backlog 142
在Sprint計畫會議中使用
用戶故事 142
在Sprint評審會議中使用
用戶故事 143
在每日Scrum簡會中使用
用戶故事 143
一個案例 143
小結 144
問題 145
第16章 其他話題 147
處理非功能性需求 147
紙質還是軟體? 148
用戶故事和用戶界面 150
保留故事 152
缺陷的用戶故事 154
小結 154
開發人員職責 155
客戶職責 155
問題 155
第IV部分 一個完整的實例
第17章 用戶角色 159
項目 159
定義客戶 159
定義一些角色雛形 160
整合與提煉 161
角色建模 162
添加虛構人物 164
第18章 一些用戶故事 165
Teresa的故事 165
Ron船長的故事 168
“初級航海者”的故事 168
“不出海的禮物購買者”的故事 169
“報表查閱者”的故事 169
“管理員”的一些故事 170
收尾 171
第19章 估算故事 173
第一個故事 174
高級搜尋 176
評分和評論 177
賬戶 177
完成估算 178
所有估算 179
第20章 發布計畫 181
估算速率 181
給故事安排優先權 181
最終的發布計畫 182
第21章 驗收測試 185
搜尋測試 185
購物車測試 186
購買書 187
用戶賬戶 187
管理 188
測試限制條件 189
最後一個故事 190
第V部分 附 錄
附錄A 極限編程概覽 193
附錄B 參考答案 203