4.1 什麼是Scrum?
你已經知道,所有跟開發有關的事情都是標準化的。那如果我告訴你,幾乎所有的事情都是標準化的呢?而且這裡說的可不只是變數和函數的名字,雖然它們也被標準化了🤦♂️。
有一套開發的方法論叫 Agile,而它的流行實現之一就是 Scrum。Scrum也被稱為框架(framework),它定義了團隊中的所有流程。會議什麼時候開,誰應該參加,應該討論什麼,會議的結果應該是什麼以及應該以什麼形式記錄下來。
“但為什麼需要這麼多標準化呢?”你可能會問。首先,你是在高科技領域工作——高科技,這些事情。其次,這使得彼此合作更容易。而第三,注意你職業名稱Python Fullstack Software Engineer的最後一個詞——工程師。然後你就會明白它的根源了。
4.2 Scrum 工作的樣子
Scrum 是一種靈活的項目管理方法論,經常用於軟件開發。它基於迭代和增量過程。
Scrum 將專案分成開發週期,稱為 sprint,一般持續一到四週。每個 sprint 從制定要完成的任務計劃開始,並在展示會中結束,團隊在此展示達成的成果。
Scrum 的關鍵元素包括角色、事件和工件。
主要角色 — 包括Product Owner,負責定義產品需求,Scrum Master,支持過程的運行依據Scrum的規則,和開發團隊,負責執行工作。
主要事件 — 包括每日會議(daily meetings),sprint計劃,回顧與工作結果展示。工件包括產品待辦事項(backlog),sprint待辦事項和產品增量。
不要害怕!雖然一切被標準化看起來有點嚇人,但“按Scrum方式工作”是簡單而愉快的。Scrum 解決了開發者與客戶/產品所有者之間的主要衝突。
開發者總是要求不要被打擾,讓他們安心工作。而產品所有者需要緊急添加新功能、進行一些改變,或進行某種實驗。
Scrum 將開發分成穩定時期 —— sprint(通常為2週)。在一個時期內,開發者只做那些在當前sprint計劃中的任務。如果客戶需要緊急做一些事情,他就得把這些功能添加到下一個sprint中。
4.3 Sprint 和 Scrum Board
Sprint — 是 Scrum 中的基本開發週期,持續時間為一到四週。正如我們所說,在這段時間內,團隊處理從產品待辦事項(backlog)中挑選的一組具體工作。
在每個 sprint 的開始會進行 計劃,團隊挑選出產品待辦事項中的任務並承諾將其完成。sprint 以展示已完成的工作和回顧的方式結束,團隊分析 sprint 的工作過程並找到改進下一個 sprint 的方法。這種方法允許產品定期更新,快速應對需求和優先級的變化。
在當前 sprint 期間,開發人員和產品所有者必須聚在一起開會,討論下一個 sprint 的任務。
Backlog 或稱待辦事項,是需要完成的所有任務的列表。在 Scrum中,區分產品待辦事項和 sprint待辦事項,產品待辦事項包含所有的產品需求(功能),而 sprint待辦事項由當前 sprint中選出的任務組成。待辦事項是一個動態文件,會定期更新和審核,以確保符合當前的業務目標和市場條件。
當前 sprint的待辦事項經常被以 Scrum Board 的形式展示 — 就是一個顯示任務和狀態的板子。板子被分成各個欄,通常代表任務的完成階段,比如“待執行”,“進行中”,“待檢查”和“完成”。這使得整個團隊能夠看到進度並輕易識別任何工作過程中的困難。
GO TO FULL VERSION