敏捷實踐之Scrum框架學習
Scrum起源

Scrum的英文含義為橄欖球比賽中的兩隊并列爭球,1986年,在竹內弘高和野中郁次郎發表的《The New New Product Development Game》(《新新產品開發游戲》)文章中,將Scrum隱喻用于軟件開發,闡述了一種新的整體性的方法。
文中認為面對市場的激烈競爭,新產品開發需要的不僅是高質量、低成本和差異化,它還需要速度和靈活性。傳統的順序開發或“接力賽”方法可能與最高速度和靈活性的目標相沖突。相反,一個整體的或“橄欖球”的方法—一個團隊嘗試作為一個整體走完全程,來回傳遞球——可能更好地滿足當今的競爭要求。
文章從橄欖球比賽的特點和團隊取勝的關鍵中提取了六個特點:內置的不穩定性、自組織的項目團隊、重疊的開發階段、“多重學習”、微妙的控制和學習的組織轉移。 將六者有機結合在一起,就可以形成了一個快速靈活的新產品開發過程。同時,新方法將創造性的、市場驅動的想法和流程引入到原有組織中,可以起到變革推動的作用。
Jeff Sutherland、Ken Schwaber和Mike Beedle、Mike Cohn等業界大咖先后聯合推出了Scrum流程、規范了Scrum框架,初版了Scrum書籍、創辦了Scrum聯盟,撰寫了Scrum指南,幫助組織和團隊更好的理解Scrum,指導Scrum在實踐中落地。
Scrum定義
從Scrum的起源可見,Scrum的產生是為了指導團隊在面對復雜問題不確定的情況時,能夠通過齊心協力、自管理的方式去應對,提高速度和靈活性,更加適應市場的需求。
依據2020年發布的最新Scrum指南,Scrum 是一個輕量的框架,它通過提供針對復雜問題的自適應解決方案來幫助人們、團隊和組織創造價值。
“3355”分別代表3個職責、3個工件、5個事件、5種價值觀。
Scrum流程
簡單流程
首先,是輸入,根據相關利益干系人的需求,Product Owner創建Product Backlog,記錄產品的需求,并根據對應的客戶價值進行優先級排序。
然后,是開發,由Scrum Team(由框架圖中的3個職責的人員組成)進行開發實現需求,生產出對客戶有價值的產品增量。
最后,是輸出,將產品增量交由客戶進行評審,獲取反饋,進行調整。同時根據協商確定下個階段的輸入,整個Scrum是一個循環往復的過程,每個循環稱作一個Sprint。
在整個過程中,Scrum Master的職責就是營造Scrum環境,按照 Scrum 框架來建立 Scrum,幫助 Scrum Team 和組織內的每個人理解 Scrum 理論和實踐,確保Scrum的正確開展。
完整流程
完整流程就將簡單流程中的每個環節進行完善。
最初的產品需求來源于客戶等相關的利益干系人,Product Owner(簡稱PO)獲取需求后進行拆分、排序等梳理工作,形成Product Backlog(產品待辦列表),這是產品唯一的需求來源,由PO全權負責管理和維護。
開發階段是由一個個Sprint組成,每個Sprint稱作一個迭代,或者一個沖刺。在每個Sprint中都是由4個事件貫穿始終,最終會交付一個有價值的Increment(產品增量),通常是產品的一部分特性,能夠為客戶帶來價值。
Sprint Planning:團隊在Sprint計劃會議上從Product Backlog選取合適的需求條目進入到Sprint Backlog(迭代待辦列表),選取時依據團隊的速率(一個迭代中能夠完成的任務量)和需求的優先級。
Daily Scrum:團隊在整個開發過程中,每天在同一時間和同一時間舉行站會,成員共享資源、進度和風險,同時和Sprint Goal進行對齊,確保整個Sprint的工作是沿著正確的方向在進行。
Sprint Review:迭代結束前,檢查所有的工作的完成情況,是否符合DoD(Definition of Done),然后召開Sprint 評審會議,將產品增量向客戶等相關利益干系人演示,獲取反饋,用于指導改進和調整下一個階段的工作方向。
Sprint Retrospective:最后,團隊成員一起召開Sprint 回顧會議,對當前迭代的情況進行回顧,包括但不限于進度、質量、風險、障礙、成功、心情等方面的內容,回顧會議開展的是否成功對于一個團隊的改進是非常重要的。敏捷和精益中的一個核心理念就是持續改進,回顧會議是重要的一個環節。所以團隊要多花心思在回顧會議上,關于開好回顧會的更多內容可以參考《如何讓敏捷回顧會議更有效果,這樣做就對了》。
如此往復循環,若干個Sprint后,最終交付一個完整的產品。
在Scum框架中,價值觀和理論部分的指導是完整的,但是沒有限定每個階段采用的過程技術和方法,這是一個輕量級的框架,更多的技術實踐需要團隊根據自己的業務和組織情況去進行填充。所以業界有個說法,“Scrum是個筐(框這個字應該更好,但筐的發音好,哈哈),什么都能往里裝”。
Scrum應用現狀
根據VersionOne的第14屆年度敏捷行業狀態報告中,以Scrum為主的敏捷方法論(包括Scrum、Scrum/XP混合等)占70%+,一直居于主流地位。同時在報告調查中,Scrum的5個事件:每日站會、回顧會議、計劃會議、評審會議和短迭代,高居于敏捷技術實踐的Top5。
在應用Scrum的時候,需要注意的一點是,完整的 Scrum 框架是各個部分的有機組合,如果僅僅實施部分的 Scrum ,結果就不是 Scrum ,不能發揮Scrum的優點。這里面說到的“完整”是重神不重形,舉例來說就是你可以不開展每日站會,但是這種團隊內部的及時溝通交流機制需要有。還是建議組織和團隊在最初引入Scrum的時候要完全按照框架,無論學習什么方法技術都是一個“守、破、離”的過程,還是先要把“守”做好,真正理解它的內涵,然后才能因地制宜,升華到“破”和“離”的階段。
參考學習:華為云DevCloud智庫
敏捷開發
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。