注:本文是對Scrum中文網的學習筆記
什么是Scrum?
Scrum 是用于開發、交付和持續支持復雜產品的一個框架,是一個增量的、迭代的開發過程。
Scrum流程
在這個框架中,整個開發過程由若干個短的迭代周期組成,一個短的迭代周期稱為一個Sprint,每個Sprint的建議長度是一至四周。
Sprint 是 Scrum 的核心,其長度(持續時間)為一個月或更短的限時,這段時間內構建一個“完成”、可用的和潛在可發布的產品增量。在整個開發過程期間,Sprint 的長度保持一致。前一個 Sprint 結束后,新的下一個 Sprint 緊接著立即開始。
Sprint 由 Sprint 計劃會議、每日 Scrum 站會、開發工作、Sprint 評審會議和 Sprint 回顧會議構成。
在 Sprint 期間:
不能做出有害于 Sprint 目標的改變;
不能降低質量的目標;以及,
隨著對信息掌握的增加,產品負責人與開發團隊之間對范圍內要做的事可能會澄清和重新協商。
產品BACKLOG
在Scrum中,使用產品Backlog來管理產品的需求,產品backlog是一個按照商業價值排序的需求列表,列表條目的體現形式通常為用戶故事。
SPRINT計劃會議
Scrum團隊總是先開發對客戶具有較高價值的需求。在Sprint中,Scrum團隊從產品Backlog中挑選最高優先級的需求進行開發。挑選的需求在Sprint計劃會議上經過討論、分析和估算。
SPRINT backlog
挑選的需求在Sprint計劃會議上經過討論、分析和估算得到相應的任務列表,我們稱它為Sprint backlog。
潛在可交付產品增量
在每個迭代結束時,Scrum團隊將遞交潛在可交付的產品增量。?
SCRUM框架
Scrum框架包括3個角色、3個工件、5個事件、5個價值:
3個角色
產品負責人(Product Owner)
產品負責人的職責是將開發團隊開發的產品價值最大化。產品負責人是負責管理產品待辦列表的唯一負責人。產品負責人是一個人,而不是一個委員會。產品負責人可能會通過產品待辦列表展現一個委員會的期望要求,但是想要改變產品待辦列表項的優先級都必須經過產品負責人。
Scrum Master
Scrum Master 負責根據 Scrum 指南中的定義來促進和支持 Scrum。Scrum Master 通過幫助每個人理解 Scrum 理論、實踐、規則和價值來做到這一點。Scrum Master 對 Scrum 團隊而言,他/她是一位服務型領導。Scrum Master 幫助 Scrum 團隊之外的人了解他/她如何與 Scrum 團隊交互是有益的,通過改變他/她們與 Scrum 團隊的互動方式來最大化 Scrum 團隊所創造的價值。
Scrum Master 以各種方式服務于產品負責人、團隊、組織。
開發團隊
開發團隊包含各種專業人員,負責在每個 Sprint 結束時交付潛在可發布并且“完成”的產品增量。在 Sprint 評審會議上,一個“完成”增量是必需的。只有開發團隊成員才能創建增量。開發團隊由組織組建并得到授權,團隊自己組織和管理他們的工作。由此產生的正面效應能最大化開發團隊的整體效率和效用。
3個工件
Scrum 的工件以不同的方式表現工作任務和價值,可以用來提供透明以及檢視和適應的機會。Scrum 所定義的工件是特別地設計的,是為了給關鍵信息提供最大透明化,因此每個人對工件都需要有相同的理解。
產品Backlog(Product Backlog)
產品待辦列表是一份涵蓋產品中已知所需每項內容的有序列表,它是產品需求變動的唯一來源。產品負責人負責管理產品待辦列表的內容、可用性和排序。
排序越高的產品待辦列表項通常比排序低的更清晰同時包含更多細節。
開發團隊負責所有估算工作。
在任何時刻,達成目標的剩余工作是可以累計的。產品負責人至少在每個 Sprint 評審會議中都必須跟蹤剩余工作總量。
SprintBacklog
Sprint 待辦列表是一組為當前 Sprint 選出的產品待辦列表項,同時加上交付產品增量和實現 Sprint 目標的計劃。Sprint 待辦列表是開發團隊對于下一個產品增量所需的那些功能以及交付那些功能到“完成”的增量中所需工作的預測。?
?Sprint 產品待辦列表是擁有足夠細節的計劃,任何進度的變化可以在每日 Scrum 站會中清晰地看到。
在 Sprint 期間,只有開發團隊可以改變 Sprint 待辦列表。該列表由開發團隊全權負責。
在 Sprint的任何時間點都可以計算 Sprint 待辦列表中所有剩余工作的總和。開發團隊至少在每日 Scrum 站會時跟蹤剩余的工作量。
產品增量(Increment)
增量是一個 Sprint 完成的所有產品待辦列表項的總和,以及之前所有 Sprint 所產生的增量的價值總和。
每個增量都添加至之前的所有增量上,并且經過徹底地測試,以此確保整合在一起的所有增量都能工作。
5個事件
Sprint(Sprint本身是一個事件,包括了如下4個事件)
一旦 Sprint 開始,它的持續時間是規定的,不能縮短或延長。而其他事件則可以在該事件的目標達成之后可以立即終止。
Sprint計劃會議(Sprint Planning Meeting)
Sprint 中要做的工作在 Sprint 計劃會議中來做計劃。這份工作計劃是由整個 Scrum 團隊共同協作完成的。
Sprint 會議的輸入是產品待辦列表、最新的產品增量、開發團隊在這個 Sprint 中能力的預測以及開發團隊的以往表現。開發團隊自己決定選擇產品待辦列表項的數量。只有開發團隊可以評估接下來的 Sprint 可以完成什么工作。
在Sprint 計劃會議中,Scrum 團隊還草擬一個 Sprint 目標。
每日站會(Daily Scrum Meeting)
每日 Scrum 站會是開發團隊的一個以 15 分鐘為限的事件。在每日 Scrum 站會上,開發團隊為接下來的 24 小時的工作制定計劃。每日 Scrum 站會在同一時間同一地點舉行。
Sprint評審會議(Sprint Review Meeting)
Sprint 評審會議在 Sprint 快結束時舉行 ,用以檢視所交付的產品增量并按需調整產品待辦列表。
Sprint回顧會議(Sprint Retrospective Meeting)
Sprint 回顧會議是 Scrum 團隊檢視自身并創建下一個 Sprint 改進計劃的機會。
5個價值
承諾 – 愿意對目標做出承諾
專注– 把你的心思和能力都用到你承諾的工作上去
開放– Scrum 把項目中的一切開放給每個人看
尊重– 每個人都有他獨特的背景和經驗
勇氣– 有勇氣做出承諾,履行承諾,接受別人的尊重
參考:什么是SCRUM
? ? ? ? ? ?SCRUM官方權威指南