# 硝煙中的scrum和XP筆記
讀硝煙中的scrum和xp的讀書筆記,對scrum有一些整理。下面的條目并不以順序代表重要性、順序,或是其他的意思,只是我根據讀到的相關內容整理到一起的。
## 計劃的制定
### 要注意的一些東西
* 計劃制定需要全部團隊成員以及產品負責人參加,需要一起來估算,范圍,時間,以及重要性,并且不能在質量上有讓步。
* 計劃制定中,可能會對故事的重要性,范圍都會進行修改。
* 計劃游戲中,需要為每一個Story設定一個分數,不同的重要程度,對應不同的分數。分數的值,只是代表兩個Story之間誰比誰重要,而不能表示重要多少倍。分數需要拉開間距,以方便插入新的任務到某兩個任務之間。
### 故事估算注意
* 故事的估算,是指整個故事中所有工作地估算,而不只是自己部分的工作。
* 時間的單位,小時OR天?其實大家平時估算的時候,大概也是用天數的,也就是一天或者半天這樣,如果不足半天的,或者超過半天一點點的,其實也沒啥問題
### sprint計劃會議
* 需要一個時間表一般包括(總體介紹,團隊時間估算,選擇需要放入sprint的故事,日會)
* book中他們的sprint的長度嘗試過很多,他們覺得3周左右比較適合,這個我們可以自己考慮了,但是確定后,需要在長時間內堅持
* sprint目標是必要的
### 決定一個sprint需要包含的故事
* 在sprint中包含多少個故事,是團隊來決定,而不是其他人
* 團隊決定故事數量可以依賴兩種方式,個人估算(所謂本能反應),生產率計算(根據大家的生產率來計算團隊能夠輸出的故事點數)
* 產品負責人需要對團隊的決定產生影響
* 如果需要做的事情超過了一個團隊在一個sprint能做的故事點數,那么需要進行拆分和優先級調整
### 計劃游戲產生的東西
* sprint 目標
* 團隊成員和投入度
* backlog
* 演示日期
* 日會時間和地點
### 完成的定義
完成并不是一個Checklist或是其他的東西,而是故事符合大家認可的定義,建議在故事上可以有一個字記錄什么是完成。
### 撲克牌估算法的誤解
我曾經對撲克牌估算法存有誤解,其原因是源于對scrum團隊解構的誤解,認為在大家并不擅長的領域無法作為比較好的參考,實際上這個方法,有下面幾個需要注意的地方:
1. 強調每個人獨立思考,估算的時候每個人獨力估算,避免被影響力較大的人干擾判斷
2. 在大家的估算存在較大的偏差時,團隊先進行討論,讓大家對故事的內容達成共識,或是對大型的任務進行分解,再次重新估算,重復以至時間趨向一致
## 質量
不可以在質量上讓步,可以分出內部質量和外部質量,內部質量差肯定外部質量會差。并且在質量上的妥協可能后面會帶來更多的悲劇。
## Story中需要包含的東西
### 推薦的字段
* **id:**唯一標識一個Story,以便以后改名了神馬的也能知道是什么
* **name:**名字,表示這個Story要干啥
* **imp:**重要性,一個數字,大一點好,比如30,50之類的,表示某個Story更重要
* **est:**時間估算
* **how to demo:**表示這個故事在這個sprint中的如何進行示范,如何run起來,如果用TDD,那么這個可以是驗收測試的偽碼。
* **note:**注釋,引用等
### 附加的字段
* **type:**類別,比如后臺,優化,之類的
* **components:**根據后文了解到,這里說的技術組件,其實是這個故事完成需要哪些技術類型的人或物(例如數據庫,后臺開發,之類的)
* **requester:**提出需求的干系人,在后續可能會需要向他反饋
* **bug id:**bug跟蹤系統中的id
### Story 中需要注意的東西
* 所有的Story盡量停留在業務層次,如果某個Story是一個技術類型的,那么我們需要不斷的從產品那里獲取這個Story的信息,明白Story真正的目的是什么
* 產品知道每個故事是什么,為什么,不需要知道如何做。
## 信息發布的要素
發布當前團隊的信息,當前的sprint,目標,backlog的情況,時間估計,成員和投入程度。