書摘《敏捷與 Scrum 軟體開發速成》

更新於 發佈於 閱讀時間約 8 分鐘
raw-image

前言:老實說,從中文書名無法聯想回原文書是《The Elements of Scrum》,雖然書名翻譯沒有太離譜(和內容無關之類的),但總覺得貼近原意會好一點。

『Scrum團隊週記』這一章,整個讀完,其實就差不多可以了解Scrum的大部分,所以,若要讀這本書,又沒有太多時間,就先看這一章吧!

第一章 起點:瀑布方法

有點諷刺的是,Royce之所以提供這個模型(瀑布模型),是要拿它當例子來說明軟體開發不能這樣做! p. 24

第二章 加入敏捷實踐者行列

我們所設計的複雜系統,主要是由可變性和高度非線性的人類組成,但一直以來,我們在設計系統時卻從未把人類或人類對系統的影響考慮進去。回想起來,雖然覺得很荒謬,但在這行業中,投入了大量精力致力於理解人們對軟體開發所造成影響的人員,真的是少得可憐。 p. 31

文件邊做邊寫,只寫必須的文件。將文件作業融入流程,只寫有關的、有效用的文件。 p. 33

第三章 敏捷價值觀與原則

大多數的人普遍誤以為敏捷團隊是不寫文件不做計劃的,但實際上,敏捷團隊為規劃(planning)和文件工作所花費的時間、精力遠多於傳統團隊,因為計畫(plan)需要不斷地進行詳細劃分和更新。 p. 39

敏捷計畫在整個專案生命期間是一直在累積和演變的,是有生命的,而不是奉為圭臬的厚重書籍。這意味者,不管在任何的時間點,計畫都能代表我們當時對專案的最佳理解,但我們仍然期待,在我們檢驗和調整的同時,它也在演變和改進。 p. 39

在團隊內部,效率最高且效果最佳的資訊傳遞方式,就是面對面的交談。 (中略) 敏捷團隊是在更加開放的共用空間中工作,且只要有可能都會選擇以口頭交流的方式。 p. 47

最佳的架構、需求與設計都源自於能夠自我組織的團隊。 (中略) 在scrum團隊中,她可不是『那個架構師』(The Architect)而已,團隊會將她的專業技能視為非常重要的資源,也經常會尋求他的指導,架構工作也會有她的參與和貢獻,旦絕不會是由她來『負責架構』,而是由團隊平均分擔這個責任。 p. 51

第五章 Scrum歷史簡述

Schwaber覺得,新方法成功的秘訣在於,他使用了經驗式(empirical)流程(檢驗和調整),而不是自定義流程(計畫和執行)。 p. 70

第六章 Scrum角色

產品負責人(Product owner)的責任就在於,幫公司得到最高投資回報,作法是引導團隊做最有價值的工作,並遠離價值較低的工作。也就是,產品負責人控制著團隊待辦清單(product backlog)上的優先順序。在scrum中,產品負責人是唯一有權要求團隊做(什麼)事以及改變待辦清單修先順序的人。 p. 74

後註:我還是不喜歡專有名詞硬要翻譯成中文。

scrum master總是和團隊間『保持著一定的距離』,不至於太過親密,但會密切注意流程和進度的情況,獻計獻策幫助團隊解決小問題,有需要時還會扮演共鳴板角色。 p. 76

一個高產出和更為自我管理的團隊,他們可能已經不再需要scrum master來主持scrum會議。稱職的scrum master會退居幕後並鼓勵他們放手去做。事實上,稱職的scrum master會不斷地調整自己的風格去適應團隊的需要。 p. 77

scrum master還有另一個關鍵的作用,為團隊移除障礙。任何拖累團隊的都是障礙,它們的形式多樣、規模各異。 p. 77

一個scrum團隊應該有多少個隊員呢?經驗法則通常是七個人,再或多或少兩個人,也就五到九個人。如果團隊人數再少,可能會欠缺多樣化的足夠技能,而難以全部完成使用者故事(user story)所需的工作。如果團隊人數更多,溝通開銷會開始過度地增長。務必牢記,這只是參考而已,人數更多或更少的成功團隊我們都見過。 p. 79

Scrum並不追求做到團隊所有成員都可以互換,只要他們在團隊需要時,願意選擇舒適區以外的工作即可。 p. 80

第七章 Sprint週期

一個典型團隊要掌握敏捷流程的精髓大約需要六個sprint,至於使用的是一天還是四週的sprint則無關緊要。 p. 84

我們建議,按照每個開發週期2小時的比例來安排sprint規劃會議(sprint planning meeting),一週的sprint適合開2小時的會,而一個二週的sprint開4個小時的會應該也夠了。 p. 85

即使團隊已經全力以赴地確認澄清需要完成的所有工作(task),但實際上得到的清單仍可能有欠完整。當實際工作展開後,新工作就會顯露出來,此時,把新工作記錄下來,並添加到目前sprint的工作清單(sprint backlog)即可。高效率團隊通常能在sprint規劃會議上確認60%到70%左右的工作。 p. 87

那工作估算該怎麼做呢?用什麼單位?推薦三種常用方式:工作小時(用工作小時做估算單位,有時候會造成混亂,因人們總是期待著,工作可以在估計的時間內完成,這就是估算的本質,也是估大小往往比估時間更有效的原因)、工作點(sprint過程中,團隊只要追蹤需要完成的剩餘點數即可)和工作數(缺點是他無法在一開始就發現工作過大或過多的情況並警示團隊)。哪種方式最好?團隊得自己拿主意。要記住,最終目標還是在團隊偏移原計畫時程能及早發現,如此就還來得及採取行動。 p. 88

其一,清單修整(user story refinement)屬於事前行工作,在週期中要趁早完成以便有充足的前置時間,讓產品負責人可以在他們的計畫和優先順序排序工作中用上這些估算。其二,在sprint長度超過一週的情況下,1小時的會議多開幾次,效果會比一次開幾個小時更好。(中略)其三,你應該不想將sprint結尾弄得跟馬拉松會議一樣長(結尾有sprint review和自省會議,再開refinement會議實在太長)。 p. 91

第八章 Scrum產出物

在產品待辦清單上方的,大多是較小型且定義完善的項目。這樣正好,因為團隊接下來要實做的就是這些故事。清單再往下,故事的規模更大,定義也更粗略。沒關係,只要在把它們挪到上方之前,好好地改善即可。當特性(feature)在產品待辦清單中不斷地往上移動,就代表越來越接近它將被實現的時刻,而團隊對它的檢查也會更加詳細,估算和驗收標準也更精確,大故事也會被拆解成小故事。(中略)清單的優點就在於,絕不會浪費時間為那些可能永不見天日的特性撰寫詳細規格書。 p. 102

值得一提的是,完成之定義(Definition of Done, DoD)和驗收標準(Acceptance Criteria)是有區別的。驗收標準是屬於產品負責人或客戶的領域,明確定義了被視為『可接受』(的)產品必須滿足的條件並記錄在案。但像是回歸測試或版本整合這些內容,則不屬於驗收標準的範疇。完成之定義歸開發團隊所有,關注的不是產品的使用者導向的功能,而是若產品要能交付,必須要做完那些工作。(可參考書摘《Executable Specifications with Scrum》p. 113

第九章 使用者故事

使用者故事是對談的敲門磚。使用者故事不是完整的需求或說明書,它們是佔位關係(placeholder)。它們的資訊量足以提醒團隊有東西要完成,但我們刻意地不過多探討細節……直到必須(開發)之時。 p. 118

對談中,如果某一刻大家覺得對使用者故事已有共識,那就該寫驗收標準了。(中略)完善驗收標準也是修整清單工作(user story refinement)的一部分。專家級產品負責人應符合以下要求,在sprint開始前他們就已定義所有驗收標準並和團隊達成一致,而且sprint中不做改變。 p. 119

第十章 用故事大小值估算工作

產生估算的真正目的是要提供進度的可預測性度量。 p. 123

團隊估算遊戲規則
第一部分:集體排隊
所有玩家輪流上場,輪到自己時可以做以下任何一件事:
- 在牆上放置新的故事卡。
- 移動已在牆上的故事卡。保持其他卡片的順序,即使為了給那張換位卡留出空間,而移動很多卡片也完全沒關係。
- 移交行動權給下一個玩家。
卡片請依從左到右且從小到大的順序放置。可以將它們調鬆些,後面在調整順序時才方便。所有人都輪流上場待(故事卡)選擇完時遊戲宣告結束。

第二部分:你的數字是?
所有玩家輪流上場,輪到自己時可以做以下任何一件事:
- 在某章故事卡上方放下一張費式數列卡片,代表此處的故事大小增加了。
- 將費式數列卡片換到另一個故事的位置。(移動時必須維持數字的順序,也就是說1在2之前,13在21之前。)
- 像第一部分那樣移動故事卡片。
- 移交行動權給下一個玩家。
所有人都輪流上場待選擇完後遊戲宣告結束,代表故事的順序和大小分配都無須再做調整。 p. 133

Jul 19, 2020

留言
avatar-img
留言分享你的想法!
avatar-img
Spirit的沙龍
55會員
107內容數
這是從 Medium 開始的一個專題,主要是想用輕鬆閒談的方式,分享這幾年軟體開發的心得,原本比較侷限於軟體架構,但這幾年的文章不僅限於架構,也聊不少流程相關的心得,所以趁換平台,順勢換成閒談軟體設計。
Spirit的沙龍的其他內容
2024/05/23
本書大多數的內容都以 OO 的概念出發,詳列了許多設計的臭味道,也有大量的例子。個人雖然不會這樣寫程式,但仍是覺得受益良多,至少在 code review 時能更清楚知道該怎麼描述問題。不過,即便不是用 OO 的概念,有些章節還是可以帶來一些想法,用 OO 概念寫程式的人更不該錯過這本好書。
Thumbnail
2024/05/23
本書大多數的內容都以 OO 的概念出發,詳列了許多設計的臭味道,也有大量的例子。個人雖然不會這樣寫程式,但仍是覺得受益良多,至少在 code review 時能更清楚知道該怎麼描述問題。不過,即便不是用 OO 的概念,有些章節還是可以帶來一些想法,用 OO 概念寫程式的人更不該錯過這本好書。
Thumbnail
2024/05/11
實際就業後,會發現收集與分析需求,通常都不是工程師在做,會有另一群人,以非工程的角度收集及分析需求,然後在開發過程中蹦出不同的火花,於是很好奇另一群人的想法是什麼?我不敢說這本書能完全代表另一群人的想法,但確實能夠得到很多有用的思維。推薦給所有的軟體工程師。
Thumbnail
2024/05/11
實際就業後,會發現收集與分析需求,通常都不是工程師在做,會有另一群人,以非工程的角度收集及分析需求,然後在開發過程中蹦出不同的火花,於是很好奇另一群人的想法是什麼?我不敢說這本書能完全代表另一群人的想法,但確實能夠得到很多有用的思維。推薦給所有的軟體工程師。
Thumbnail
2024/05/09
本書介紹了戰略設計、管理領域複雜度、實際應用領域驅動設計等主題。透過對核心子領域、支持子領域、限界上下文等概念的探討,提供了領域驅動設計的相關知識。這篇文章中還涉及了微服務、事件驅動架構和資料網格等相關主題,提供了設計系統和應用領域驅動設計的指導。
Thumbnail
2024/05/09
本書介紹了戰略設計、管理領域複雜度、實際應用領域驅動設計等主題。透過對核心子領域、支持子領域、限界上下文等概念的探討,提供了領域驅動設計的相關知識。這篇文章中還涉及了微服務、事件驅動架構和資料網格等相關主題,提供了設計系統和應用領域驅動設計的指導。
Thumbnail
看更多
你可能也想看
Thumbnail
敏捷管理不是懂工具應用而已,管理的心態、團隊文化才是最後能否成功的要件!
Thumbnail
敏捷管理不是懂工具應用而已,管理的心態、團隊文化才是最後能否成功的要件!
Thumbnail
打造團隊也要懂得營造快樂的氛圍,當你問高績效團隊,最令人快樂的是什麼,他們會說快樂是來自於努力的過程,把自己的身體、心理及精神狀態發揮到極限。
Thumbnail
打造團隊也要懂得營造快樂的氛圍,當你問高績效團隊,最令人快樂的是什麼,他們會說快樂是來自於努力的過程,把自己的身體、心理及精神狀態發揮到極限。
Thumbnail
工作中,Scrum 跑的對不對,不是最重要的事了。在看這一本書時,想到的大多是 2016 在某公司推廣 Scrum 的經歷,很多是在這本書都提到了,很適合想要推廣敏捷前,先讀的一本好書。
Thumbnail
工作中,Scrum 跑的對不對,不是最重要的事了。在看這一本書時,想到的大多是 2016 在某公司推廣 Scrum 的經歷,很多是在這本書都提到了,很適合想要推廣敏捷前,先讀的一本好書。
Thumbnail
老實說,從中文書名無法聯想回原文書是《The Elements of Scrum》,雖然書名翻譯沒有太離譜(和內容無關之類的),但總覺得貼近原意會好一點。『Scrum團隊週記』這一章,整個讀完,其實就差不多可以了解Scrum的大部分,所以,若要讀這本書,又沒有太多時間,就先看這一章吧!
Thumbnail
老實說,從中文書名無法聯想回原文書是《The Elements of Scrum》,雖然書名翻譯沒有太離譜(和內容無關之類的),但總覺得貼近原意會好一點。『Scrum團隊週記』這一章,整個讀完,其實就差不多可以了解Scrum的大部分,所以,若要讀這本書,又沒有太多時間,就先看這一章吧!
Thumbnail
上一篇文章我們提到傳統的瀑布式專案管理的方法,這次我們來說說敏捷式方法,還有其特性,以及在 Notion 中應該如何應用。
Thumbnail
上一篇文章我們提到傳統的瀑布式專案管理的方法,這次我們來說說敏捷式方法,還有其特性,以及在 Notion 中應該如何應用。
Thumbnail
在一間採用 Scrum 的公司中工作,勢必要了解敏捷開發是一個怎樣的概念。也因此,我們在分配完畢團隊後,先以團隊為單位安排出我們所理解的「敏捷流程」並且相互對照討論。
Thumbnail
在一間採用 Scrum 的公司中工作,勢必要了解敏捷開發是一個怎樣的概念。也因此,我們在分配完畢團隊後,先以團隊為單位安排出我們所理解的「敏捷流程」並且相互對照討論。
Thumbnail
在引進敏捷方法的初期,我們付出了許多時間、精神、和心力,也面對了許多亂象,直到一兩年後才慢慢步上正軌。回顧過去幾年的敏捷轉型史,如果可以重來,我們也許會改變一些做法;而本文的目的,就是讓你「早知道」,不必再走同樣的坎坷路。
Thumbnail
在引進敏捷方法的初期,我們付出了許多時間、精神、和心力,也面對了許多亂象,直到一兩年後才慢慢步上正軌。回顧過去幾年的敏捷轉型史,如果可以重來,我們也許會改變一些做法;而本文的目的,就是讓你「早知道」,不必再走同樣的坎坷路。
Thumbnail
Scrum是近年軟體開發方法最熱門的關鍵字,說得像是可以返老還童、起死回生的仙丹妙藥。但台灣真正導入的團隊又沒多少,聲稱導入的團隊又充滿著在地文化的台灣式手法。那麼,到底應不應該導入Scrum呢?
Thumbnail
Scrum是近年軟體開發方法最熱門的關鍵字,說得像是可以返老還童、起死回生的仙丹妙藥。但台灣真正導入的團隊又沒多少,聲稱導入的團隊又充滿著在地文化的台灣式手法。那麼,到底應不應該導入Scrum呢?
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News