本書概覽
目的
Ken Schwaber 和Jeff Sutherland 創(chuàng)造了Scrum,并編寫該指南,包含了定義、事件、角色,以及把他們組織在一起的規(guī)則
定義
Scrum是一個(gè)框架,人們用此框架解決復(fù)雜的自適應(yīng)難題,同時(shí)高效并創(chuàng)造性的交付最高價(jià)值的產(chǎn)品。
輕量的、易于理解的、難以精通的
應(yīng)用
廣泛用于產(chǎn)品、服務(wù)和大型組織管理。在迭代和增量式的知識(shí)遷移中,特別有效。
Scrum精髓在于小團(tuán)隊(duì),個(gè)體團(tuán)隊(duì)具有高度靈活性和適應(yīng)性
理論
基于經(jīng)驗(yàn)過(guò)程控制理論,或稱為經(jīng)驗(yàn)主義,主張知識(shí)源自實(shí)際經(jīng)驗(yàn)以及當(dāng)前已知情況下做出的決定所獲得。
采用迭代和增量式方法來(lái)優(yōu)化對(duì)未來(lái)的預(yù)測(cè)和控制風(fēng)險(xiǎn)。
經(jīng)驗(yàn)過(guò)程控制的三大支柱:透明、檢視、適應(yīng)
透明
過(guò)程中關(guān)鍵環(huán)節(jié)對(duì)產(chǎn)出負(fù)責(zé)人必須顯而易見,統(tǒng)一標(biāo)準(zhǔn),統(tǒng)一理解。
如:統(tǒng)一術(shù)語(yǔ)定義
檢視
需常檢視scrum工件和完成Sprint目標(biāo)的進(jìn)展,以便發(fā)現(xiàn)不必要的差異。
檢視不應(yīng)過(guò)于頻繁而阻礙工作本身,監(jiān)視者技能嫻熟利于執(zhí)行
適應(yīng)
檢視發(fā)現(xiàn)偏差或不被接受的情況,對(duì)過(guò)程或過(guò)程化內(nèi)容加以調(diào)整
5個(gè)正式事件
Sprint
Sprint 計(jì)劃會(huì)議
每日Scrum站會(huì)
Sprint評(píng)審會(huì)議
Sprint回顧會(huì)議
Scrum價(jià)值觀
五大價(jià)值觀
承諾、勇氣、專注、開放、尊重
人們致力于實(shí)現(xiàn)Scrum團(tuán)隊(duì)的目標(biāo)
成員有勇氣去做正確的事并處理棘手的問(wèn)題
專注于Sprint工作和Scrum團(tuán)隊(duì)的目標(biāo)
Scrum團(tuán)隊(duì)及其利益攸關(guān)者同意將所有工作和執(zhí)行工作上的挑戰(zhàn)進(jìn)行公開
Scrum團(tuán)隊(duì)成員相互尊重,彼此是有能力和獨(dú)立的人
Scrum 團(tuán)隊(duì)
產(chǎn)品負(fù)責(zé)人、開發(fā)團(tuán)隊(duì)、Scrum Master
Scrum 團(tuán)隊(duì)是跨職能自組織團(tuán)隊(duì),團(tuán)隊(duì)成員選擇如何以最好的方式完成工作;團(tuán)隊(duì)擁有完成工作所需的全部技能
產(chǎn)品負(fù)責(zé)人
職責(zé):將開發(fā)團(tuán)隊(duì)開發(fā)的產(chǎn)品價(jià)值最大化
負(fù)責(zé)管理產(chǎn)品待辦列表的唯一負(fù)責(zé)人,產(chǎn)品待辦列表的管理包括:(可親自完成也可讓團(tuán)隊(duì)成員完成)
清晰的表述產(chǎn)品待辦列表
對(duì)產(chǎn)品待辦列表進(jìn)行排序,使其最好的實(shí)現(xiàn)目標(biāo)和使命
優(yōu)化開發(fā)團(tuán)隊(duì)所執(zhí)行工作的價(jià)值
確保產(chǎn)品待辦列表對(duì)所有人是可見、透明和清晰的,同時(shí)顯示Scrum團(tuán)隊(duì)下一步要做的工作
確保開發(fā)團(tuán)隊(duì)對(duì)產(chǎn)品待辦列表項(xiàng)有足夠深的了解
開發(fā)團(tuán)隊(duì)
各種專業(yè)人員,負(fù)責(zé)每個(gè)Sprint結(jié)束時(shí)交付前在可發(fā)布并且“完成“的產(chǎn)品增量。
開發(fā)團(tuán)隊(duì)由組織組建并得到授權(quán),團(tuán)隊(duì)自己組織和管理他們的工作
特點(diǎn):
自組織,沒(méi)有人有權(quán)告訴開發(fā)團(tuán)隊(duì)?wèi)?yīng)該如何把產(chǎn)品待辦列表變成前在可發(fā)布的功能增量
跨職能團(tuán)隊(duì):作為一個(gè)整體,擁有全部技能
不認(rèn)可任何頭銜,不管承擔(dān)何種工作,都叫開發(fā)人員
不認(rèn)可”子團(tuán)隊(duì)",無(wú)論開發(fā)、測(cè)試、架構(gòu)、運(yùn)維、業(yè)務(wù)分析
每個(gè)成員也許有特長(zhǎng)和專注的領(lǐng)域,但責(zé)任屬于整個(gè)開發(fā)團(tuán)隊(duì)
開發(fā)團(tuán)隊(duì)規(guī)模:
足夠小以保持敏捷,足夠大可以完成Sprint內(nèi)的工作,一般3~9個(gè)人
產(chǎn)品負(fù)責(zé)人和Scrum Master不包含在開發(fā)團(tuán)隊(duì)人數(shù)中,除非他們同時(shí)也參與執(zhí)行待辦列表中的工作
Scrum Master
促進(jìn)和支持Scrum,服務(wù)型領(lǐng)導(dǎo),幫助Scrum團(tuán)隊(duì)之外的人了解他如何與Scrum團(tuán)隊(duì)交互是有意的,通過(guò)改變Scrum團(tuán)隊(duì)的互動(dòng)方式來(lái)最大化Scrum團(tuán)隊(duì)所創(chuàng)造的價(jià)值
服務(wù)于產(chǎn)品負(fù)責(zé)人:
確保Scrum團(tuán)隊(duì)中的每個(gè)人都盡可能的理解目標(biāo)、范圍和產(chǎn)品域
找到有效管理產(chǎn)品待辦列表的技巧
幫助Scrum團(tuán)隊(duì)理解為何需要清晰且簡(jiǎn)明的產(chǎn)品待辦列表項(xiàng)
理解在經(jīng)驗(yàn)主義的環(huán)境中的產(chǎn)品規(guī)劃
確保產(chǎn)品負(fù)責(zé)人懂得如何來(lái)安排產(chǎn)品待辦列表使其達(dá)到最大化價(jià)值
理解并實(shí)踐敏捷性
當(dāng)被請(qǐng)求或需要時(shí),引導(dǎo)Scrum事件
服務(wù)于開發(fā)團(tuán)隊(duì):
作為教練在自組織和跨職能方面給予開發(fā)團(tuán)隊(duì)以指導(dǎo)
幫助開發(fā)團(tuán)隊(duì)創(chuàng)造高價(jià)值產(chǎn)品
移除開發(fā)團(tuán)隊(duì)工作進(jìn)展中的障礙
按被請(qǐng)求或需要時(shí),引導(dǎo)Scrum事件
在Scrum還未完全采納和理解的組織環(huán)境中,作為教練指導(dǎo)開發(fā)團(tuán)隊(duì)
服務(wù)于組織:
帶領(lǐng)并作為教練指導(dǎo)組織采納Scrum
在組織范圍內(nèi)規(guī)劃Scrum的實(shí)施
幫助員工和利益攸關(guān)者理解并實(shí)施Scrum和經(jīng)驗(yàn)導(dǎo)向的產(chǎn)品開發(fā)
引發(fā)能夠提升Scrum團(tuán)隊(duì)生產(chǎn)率的改變
與其他Scrum Master一期工作,增強(qiáng)組織中Scrum應(yīng)用的有效性
Scrum 事件
一旦Sprint開始,它持續(xù)事件是固定的,不能縮短或延長(zhǎng)。
Sprint本身作為一個(gè)事件,還是其他所有事件的容器,Scrum中每個(gè)事件都是用來(lái)檢視和適應(yīng)的正式機(jī)會(huì)。
Sprint
Scrum核心,長(zhǎng)度為一個(gè)約或更多限時(shí),這段事件構(gòu)建一個(gè)“完成”、可用的、前在可發(fā)布的產(chǎn)品增量。
整個(gè)開發(fā)過(guò)程期間,Sprint長(zhǎng)度保持和一致,前一個(gè)結(jié)束,下一個(gè)緊接著開始。
由Sprint計(jì)劃會(huì)議、每日Scrum站會(huì)、開發(fā)工作、Sprint評(píng)審會(huì)議、Sprint回顧會(huì)議構(gòu)成。
每個(gè)Sprint都是可被視為一個(gè)項(xiàng)目,被用于完成某些事情,明確的目標(biāo),和一份設(shè)計(jì)過(guò)和靈活的計(jì)劃來(lái)指導(dǎo)這些事、工作內(nèi)容和最終產(chǎn)品增量。
至少每月一次對(duì)打成目標(biāo)的進(jìn)度進(jìn)行檢視和適應(yīng),來(lái)實(shí)現(xiàn)可預(yù)測(cè)性。把風(fēng)險(xiǎn)限制在一個(gè)月的成本上
期間:
不能做出有害于Sprint目標(biāo)的改變
不能降低質(zhì)量的目標(biāo)
隨著對(duì)信息掌握的增加,產(chǎn)品負(fù)責(zé)人與開發(fā)團(tuán)隊(duì)之間對(duì)范圍內(nèi)要做的事可用加以澄清和重新協(xié)商
取消Sprint
可用在時(shí)間盒結(jié)束前取消,只有產(chǎn)品負(fù)責(zé)人才有取消Sprint的權(quán)利
當(dāng)取消時(shí),任何作何和“完成"的產(chǎn)品待辦列表項(xiàng)都需要評(píng)審
取消Sprint會(huì)消耗資源,因?yàn)槊總€(gè)人都重新集合在令一個(gè)Sprint集合會(huì)議上來(lái)開始另一個(gè)Sprint
取消Sprint會(huì)對(duì)Scrum團(tuán)隊(duì)造成重創(chuàng),這種情況很罕見,由于Sprint時(shí)間都很短,通常取消時(shí)不太合理的
取消的原因,某個(gè)Sprint對(duì)其所在環(huán)境來(lái)說(shuō)失去了價(jià)值和意義
Sprint 計(jì)劃會(huì)議
一個(gè)月的Sprint來(lái)說(shuō)最長(zhǎng)8小時(shí),較短的Sprint會(huì)議時(shí)間通常會(huì)更短。
Scrum Master確保會(huì)議順利進(jìn)行,參會(huì)者理解會(huì)議的目的,教導(dǎo)Scrum團(tuán)隊(duì)遵守時(shí)間盒的規(guī)則。
Sprint 計(jì)劃會(huì)議回答:
接下來(lái)的Sprint交付增量中要包含什么內(nèi)容?
要如何完成交付增量所需的工作?
話題1:這次Sprint能做什么?
開發(fā)團(tuán)隊(duì)預(yù)測(cè)要開發(fā)的功能,產(chǎn)品負(fù)責(zé)人講解目標(biāo)以及達(dá)成該目標(biāo)所需要完成的待辦列表項(xiàng)。整個(gè)團(tuán)隊(duì)協(xié)同工作來(lái)理解Sprint的工作。
會(huì)議輸入是:產(chǎn)品待辦列表、最新的產(chǎn)品增量、開發(fā)團(tuán)隊(duì)在這個(gè)Sprint中能力預(yù)測(cè)、開發(fā)團(tuán)隊(duì)的以往表現(xiàn)
開發(fā)團(tuán)隊(duì)評(píng)估接下來(lái)Sprint可用完成什么工作
草擬一個(gè)Sprint目標(biāo)
話題2:如何完成所選的工作?
開發(fā)團(tuán)隊(duì)規(guī)劃出Sprint最初幾天內(nèi)所要做的工作,通常以一天或更少為一個(gè)單位。
開發(fā)團(tuán)隊(duì)自組織的領(lǐng)取Sprint待辦產(chǎn)品列表中的工作,領(lǐng)取工作在Sprint計(jì)劃會(huì)議和Sprint期間按需進(jìn)行
產(chǎn)品負(fù)責(zé)人負(fù)責(zé)協(xié)助解釋待辦列表項(xiàng),并做出權(quán)衡,也可邀請(qǐng)其他人員參加,以獲得技術(shù)或領(lǐng)域只是方面的建議
會(huì)議結(jié)束時(shí),開發(fā)團(tuán)隊(duì)項(xiàng)產(chǎn)品負(fù)責(zé)人和Scrum Master解釋他們將如何以自組織團(tuán)隊(duì)的形式完成Sprint目標(biāo)并開發(fā)出預(yù)期的產(chǎn)品增量
Sprint 目標(biāo)
Sprint目標(biāo)在Sprint計(jì)劃會(huì)議中明確,目標(biāo)是通過(guò)實(shí)現(xiàn)產(chǎn)品待辦列表要達(dá)到的目的
目標(biāo)要有一定的彈性,目標(biāo)可用是任何其他的連貫性來(lái)促進(jìn)開發(fā)團(tuán)隊(duì)一起工作而不是分開獨(dú)自做
開發(fā)團(tuán)隊(duì)必須緊急目標(biāo),如所需工作和預(yù)期不同,開發(fā)團(tuán)隊(duì)需和產(chǎn)品負(fù)責(zé)人溝通協(xié)商Sprint待辦列表的范圍
每日Scrum站會(huì)
時(shí)間盒限定為15分鐘,每天舉行。同一時(shí)間同一地點(diǎn)舉行,以便降低復(fù)雜性
為接下來(lái)24小時(shí)的工作制定計(jì)劃,檢視上一次每日站會(huì)以來(lái)的工作和預(yù)測(cè)將要到來(lái)的Sprint工作來(lái)優(yōu)化團(tuán)隊(duì)協(xié)作和效能。
站會(huì)是開發(fā)團(tuán)隊(duì)內(nèi)部的會(huì)議,如有開發(fā)團(tuán)隊(duì)之外的人出席會(huì)議,Scrum master必須確保他們不會(huì)干擾會(huì)議進(jìn)行。
會(huì)議的結(jié)構(gòu)由開發(fā)團(tuán)隊(duì)設(shè)定,專注于達(dá)成Sprint目標(biāo)的進(jìn)展,可采用不同方式進(jìn)行:如
昨天,我為幫助開發(fā)團(tuán)隊(duì)達(dá)成Sprint目標(biāo)做了什么?
今天,我為幫助開發(fā)團(tuán)隊(duì)達(dá)成Sprint目標(biāo)準(zhǔn)備做什么?
是否有任何障礙在阻礙我或開發(fā)團(tuán)隊(duì)達(dá)成Sprint目標(biāo)?
開發(fā)團(tuán)隊(duì)一般站會(huì)后理解聚一起進(jìn)行更詳細(xì)的討論,或?yàn)镾print中剩余工作進(jìn)行調(diào)整和重新計(jì)劃。站會(huì)增進(jìn)交流溝通、減少其他會(huì)議、發(fā)現(xiàn)開發(fā)過(guò)程中需要移除的障礙、突顯并促進(jìn)快速的決策、提高開發(fā)團(tuán)隊(duì)的認(rèn)知程度,這是檢視與適應(yīng)的關(guān)鍵會(huì)議。
Sprint 評(píng)審會(huì)議
在Sprint快結(jié)束時(shí)舉行,以檢視所交付產(chǎn)品增量并按需調(diào)整產(chǎn)品待辦列表。
團(tuán)隊(duì)和利益攸關(guān)者協(xié)同討論這次Sprint中所完成的工作,根據(jù)完成情況和Sprint期間產(chǎn)品待辦列表的變化,所有參會(huì)人員協(xié)同討論接下來(lái)可能要做的事情來(lái)優(yōu)化價(jià)值。
非正式會(huì)議,并不是一個(gè)進(jìn)度匯報(bào)會(huì)議,演示增量的目的是為了獲取反饋并促進(jìn)合作。
以一個(gè)月的Sprint來(lái)說(shuō),評(píng)審會(huì)議最長(zhǎng)不超過(guò)4小時(shí),較短的Sprint會(huì)議時(shí)間更短。Scrum Master確保會(huì)議舉行,參與者都明白會(huì)議目的,教導(dǎo)參會(huì)者遵循時(shí)間盒的規(guī)則。
評(píng)審會(huì)議包含以下內(nèi)容:
參會(huì)者包括Scrum團(tuán)隊(duì)和產(chǎn)品負(fù)責(zé)人邀請(qǐng)的主要利益攸關(guān)者
產(chǎn)品負(fù)責(zé)人說(shuō)明哪些產(chǎn)品待辦列表項(xiàng)以及完成和哪些沒(méi)有完成
開發(fā)團(tuán)隊(duì)討論Sprint期間哪些工作做的很好,遭遇什么問(wèn)題以及如何解決
開發(fā)團(tuán)隊(duì)演示完成的工作并解答關(guān)于所交付增量的問(wèn)題
產(chǎn)品負(fù)責(zé)人討論當(dāng)前的產(chǎn)品待辦列表的情況,他根據(jù)目前為止的進(jìn)度來(lái)預(yù)測(cè)可能的目標(biāo)交付日期(如果有需要的話)
參會(huì)的所有人就下一步的工作進(jìn)行探討,這樣Sprint評(píng)審會(huì)就能夠?yàn)榻酉聛?lái)的Sprint計(jì)劃會(huì)議提供價(jià)值的輸入信息
評(píng)審市場(chǎng)或前在的產(chǎn)品使用方式所帶來(lái)的接下來(lái)要做的最有價(jià)值的東西的改變
為下一個(gè)預(yù)測(cè)產(chǎn)品功能或產(chǎn)品能力版本的發(fā)布評(píng)審時(shí)間表、預(yù)算、潛力和市場(chǎng)
輸出:
一份修訂后的產(chǎn)品待辦列表,產(chǎn)品很可能進(jìn)入下一個(gè)Sprint的產(chǎn)品待辦列表項(xiàng)
產(chǎn)品待辦列表也有可能為了迎接新的機(jī)會(huì)而進(jìn)行全局性的調(diào)整
Sprint 回顧會(huì)議
Scrum團(tuán)隊(duì)檢視自身并創(chuàng)建下一個(gè)Sprint改進(jìn)計(jì)劃的機(jī)會(huì)
Sprint評(píng)審會(huì)結(jié)束之后,下個(gè)Sprint計(jì)劃會(huì)議之前,一個(gè)月的Sprint一般不超過(guò)3個(gè)小時(shí),Scrum Master確保會(huì)議舉行,參與者明白會(huì)議目的
目的:
檢視前一個(gè)Sprint中關(guān)于人、關(guān)系、過(guò)程和工具的情況如何
找出并加以排序做得好的和潛在的需要改進(jìn)的主要方面
制定改進(jìn)Scrum團(tuán)隊(duì)工作方式的計(jì)劃
會(huì)議結(jié)束,應(yīng)明確接下來(lái)的Sprint需要實(shí)施的改進(jìn),基于自身的檢視而做出的適當(dāng)調(diào)整,Sprint回顧會(huì)提供了一個(gè)工作檢視和適應(yīng)的正式機(jī)會(huì)
Scrum 工件
工件以不同方式表現(xiàn)工作任何和價(jià)值,工件是特別的設(shè)計(jì),為了給關(guān)鍵信息提供最大透明化,每個(gè)人都工件都需要有相同的理解。
產(chǎn)品待辦列表
涵蓋產(chǎn)品中一致所需每項(xiàng)內(nèi)容的有序列表,產(chǎn)品需求變動(dòng)的唯一來(lái)源。
產(chǎn)品負(fù)責(zé)人負(fù)責(zé)管理產(chǎn)品待辦列表的內(nèi)容、可用性和排序
產(chǎn)品待辦列表是動(dòng)態(tài)的,需要持續(xù)更新以反映產(chǎn)品需要保持適用性、競(jìng)爭(zhēng)力和有用
產(chǎn)品列表項(xiàng),列出所有的特性、功能、需求、增強(qiáng)和修復(fù)等對(duì)未來(lái)要發(fā)布的產(chǎn)品進(jìn)行的更新。屬性:描述、次序、估算和價(jià)值。包含測(cè)試描述,以便確認(rèn)”完成“標(biāo)準(zhǔn)
排序越高的待辦項(xiàng)通常有更多的細(xì)節(jié)信息,最終估算由開發(fā)團(tuán)隊(duì)決定
被開發(fā)團(tuán)隊(duì)在一個(gè)團(tuán)隊(duì)中”完成“的產(chǎn)品待辦列表成為”準(zhǔn)備就緒“,作為Sprint計(jì)劃會(huì)議中的待選產(chǎn)品列表項(xiàng)
監(jiān)控目標(biāo)實(shí)現(xiàn)的進(jìn)度
產(chǎn)品負(fù)責(zé)人至少在每個(gè)Sprint評(píng)審會(huì)中都必須跟蹤剩余工作總量
比較這次剩余工作量與之前Sprint評(píng)審會(huì)議時(shí)的剩余工作量,來(lái)評(píng)估在期望時(shí)間點(diǎn)達(dá)成目標(biāo)的進(jìn)度
如燃盡圖、燃燒圖、累積流圖
Sprint 待辦列表
一組為當(dāng)前Sprint選出的產(chǎn)品待辦列表項(xiàng),同時(shí)加上產(chǎn)品增量和實(shí)現(xiàn)Sprint目標(biāo)的計(jì)劃
至少包括一項(xiàng)在前次回顧會(huì)議中確定下來(lái)的高優(yōu)先級(jí)的過(guò)程改進(jìn)
待辦列表?yè)碛凶銐蚣?xì)節(jié)的計(jì)劃,在每次Scrum站會(huì)中清晰的卡拿到
可視需要更新或移除,是對(duì)開發(fā)團(tuán)隊(duì)計(jì)劃在當(dāng)前Sprint內(nèi)工作完成情況的實(shí)時(shí)反饋,該列表由開發(fā)團(tuán)隊(duì)全權(quán)負(fù)責(zé)
監(jiān)控Sprint進(jìn)度
Sprint任何時(shí)間點(diǎn)都可以計(jì)算待辦列表的所有剩余工作的綜合
至少每日站會(huì)跟蹤剩余工作的總和,預(yù)測(cè)達(dá)成Sprint目標(biāo)的可能性
通過(guò)不斷的跟蹤剩余工作量,開發(fā)團(tuán)隊(duì)可以管理自己的進(jìn)度
增量
一個(gè)Sprint完成所有產(chǎn)品待辦列表項(xiàng)的總和,以及之前所由Sprint所產(chǎn)生的增量的價(jià)值總和
新的增量必須是”完成“的,達(dá)到團(tuán)隊(duì)定義完成的標(biāo)準(zhǔn)
無(wú)論產(chǎn)品負(fù)責(zé)人是否決定發(fā)布它,增量必須可用
工件透明
Scrum Master必須和產(chǎn)品負(fù)責(zé)人、開發(fā)團(tuán)隊(duì)和其他相關(guān)人員一起合作,以確保所有工件都是完全透明的。
Scrum Master通過(guò)檢視工件、嗅探模式、傾聽周圍的聲音以及觀察預(yù)期和實(shí)際結(jié)構(gòu)之間的差異來(lái)發(fā)現(xiàn)不完全透明。
透明化不會(huì)再一夜之間發(fā)燒,但是這是一條必經(jīng)之路。
”完成“的定義
每個(gè)團(tuán)隊(duì)對(duì)于完成有相同的理解以便確保透明化
”完成“的定義潛在可用交付功能增量,這一增量是可用的,產(chǎn)品負(fù)責(zé)人可用選擇立即發(fā)布它
如果”完成“的定義對(duì)增量來(lái)說(shuō)是開發(fā)組織的慣例、標(biāo)準(zhǔn)或指南,那么所有Scrum團(tuán)隊(duì)都必須遵守它,以此為最低標(biāo)準(zhǔn)。
如果增量”完成“定義不是開發(fā)組織的慣例,那么開發(fā)團(tuán)隊(duì)就需一起參與制定”完成“的定義
每個(gè)增量都添加至之前的所有增量上,并且經(jīng)過(guò)徹底的測(cè)試,以此確保整合再一起的所有增量都能工作
結(jié)束語(yǔ)
Scrum的角色、事件、工件和規(guī)則是不可改變的,Scrum以整體形式而存在,唯其如此才能作為其他技術(shù)、方法和事件的容器運(yùn)作良好。