Scrum 標準與心得

主要紀錄自己對於 Scrum 的心得和感想

Scrum 標準組成和流程

Scrum 是 Agile 的一種實踐框架。Scrum 的主要組成有以下四點:

  1. 三個角色
  2. 三個 Artifacts
  3. 七個工作流程
  4. 五個價值

三個角色

  1. Scrum Master:負責帶領團隊執行 Scrum,幫助團隊清除障礙
  2. Product Owner:確定產品的方向和願景,定義產品的發布內容、優先級和交付時間
  3. Delivery Team:跨職能的團隊,建議人數為 5-9 人

三個 Artifacts

  1. Product Backlog:整個專案的概要文件,主要使用 User Story / Use Case 的方式來描述,從使用者的角度作出發點。主要關注於想要生產什麼樣的產品。開放式的,所有人都可編輯。包括所有需要功能的簡略描述,粗略的難易度估算,通常使用時間或 Story Point。這可以幫助 Product Owner 衡量優先度和時程。
  2. Sprint Backlog:細化 Product Backlog 的文件,內容需要包含團隊如何實現 Sprint(基本的設計、系統架構的可能性)。然後會細分為 Task,其執行時間可以細分到小時為單位。沒有任務可以超過 16 小時。如果需要超過 16 小時,就應該再次拆分。Sprint Backlog 上的 Task 不會被分派,而是由團隊成員自由認領喜愛的任務。
  3. Increment:在 Sprint 完成後所提出的文檔,列出已經完成的 Task,有時候會使用 Burndown Chart 作為代替。

七個工作流程

  1. Sprint:貫穿整個 Scrum 的流程。通常時間為 2 週或一個月為一個迭代的週期。
  2. Sprint Planning:討論哪些 User Story 會加入到新的 Sprint 中。有些做法會拆成兩個部分 What-meeting 和 How-meeting。
    • What-meeting:將 User Story 從 Product Backlog 中移入到 Sprint Backlog(優先順序由 PO 決定、要選多少則由團隊決定)
    • How-meeting:團隊成員將 Story 拆分為更細小的 Task,並對 Task 依照複雜度、耗時性等去做估算(通常用時間或是 Story Point)
  3. Daily Scrum:會議目的是要 Sync 團隊狀況,具有以下原則
    • 會議準時開始
    • 歡迎所有人參加,但只有 Scrum Master、Product Owner、Delivery Team 可以發言
    • 不論團隊規模,限制在 15 分中內結束
    • 所有出席者應站立
    • 會議固定時間和地點舉行
    • 會議上每個成員只需要回答三個問題:
      1. 昨天完成了什麼工作
      2. 今天打算做什麼
      3. 完成目標會有什麼障礙(Scrum Master 需記下障礙)
  4. Sprint Review:用於審查這次 Sprint 的完成的成果,展示給其他相關的人員看。此會議主要審視的是產品的功能上,在其中的修改或有新的想法或做法。都應該記錄起來由 Product Owner 新增為新的 User Story 加入到 Product Backlog 中。這邊只展示已經完成的項目,未完成的項目,應放回 Product Backlog,等待下次 Sprint Planning 時再拿出來討論、是否應該修正估算值、或是優先順序等。
  5. Sprint Retrospective:用於審視這次 Sprint 「流程」的問題並反省,主要有三個主要項目要討論
    1. 這次 Sprint 做得好的,應該持續下去的
    2. 這次 Sprint 不夠好需要改正或停止的
    3. 選取一個重要且需要改進的部分並由專人負責處理
  6. Backlog refinement:需要進行對於 Backlog 的重新審視,建議保持約 10% 的團隊能力來處理。在軟體工程上,通常用於處理技術債的問題。
  7. Canceling a sprint: Product Owner 擁有取消 Sprint 的權力,當有必須的時候。

五個價值

  1. Courage:需要有接受變化的勇氣
  2. Commitment:團隊成員為合理的目標作出承諾並確保成功
  3. Focus:清楚定義目標和角色使你關注你所關注的事物,一次只做一件事
  4. Respect:在 Scrum 團隊中每個成員需要互相尊重
  5. Openness:項目中所有事物對於所有人都是開放的,所有人朝著同一個目標前進

個人經驗和見解

個人在工作經驗上,滿常會遇到的問題是,這個流程沒有特別提到 Scrum master 應該要輪替的方式。還有常常會忽略掉工作流程最後的 Backlog refinement。然後最後一個是最常遇到的也最常被忽略的 - 溝通。在跑 Scrum 時我很常聽到的都是,因為會議太多很常要被打斷。但怎麼講少這個成本就是一個至關重要的問題。如果 Scrum 的第一個價值,是要有接受改變,變動跟穩定交付之間的平衡。

Reference

Did you find this article valuable?

Support 攻城獅 by becoming a sponsor. Any amount is appreciated!