天天看點

Scrum靈活精要

本文抽取Scrum中的一些重要思想和概念,對Scrum靈活執行的主題流程進行精要的介紹。

一、基本思想

個體和互動   高于   流程和工具

工作的軟體   高于   詳盡的文檔

客戶合作      高于   合同談判

響應變化      高于   遵循計劃

Scrum靈活精要

二、主要特性:

  • 疊代式、增量式
  • 自組織的小團隊
  • 快速回報的短周期
  • 按照業務價值的優先級排序

三、scrum中的角色

Stakeholders:利益相關人

Scrum master:保證流程正确 

Scrum靈活精要

四、開發過程

  1. 産品規劃
  2. 編制使用者故事清單(Product Backlog)
  3. 制定疊代計劃(Sprint Planning)
  4. 疊代開發
  5. 疊代評審、回顧
  6. 制定釋出計劃(Release Planning)

五、使用者故事

icesrcum:使用者故事管理軟體

使用者故事是什麼?

  描述系統需求的一個單元,(“誰” “做什麼”)[ “目的”]

特性:

  • 獨立
  • 可更改
  • 有價值
  • 可估計
  • 大小合适
  • 可測試

實踐:

  • Product Owner提出最初的産品設想,主要的使用者故事
  • 頭腦風暴
  • IceScrum
  • 任何人都可以建立使用者故事,新建立的故事放在Sandbox中
  • 開會讨論,建立使用者故事清單(Product Backlog)

六、疊代計劃

  • 調整使用者故事(增加、删除、修改、改變優先級等)
  • 确定疊代時間長度
  • 描述疊代目标
  • 按照優先級選取使用者故事
  • 每個使用者故事的工作量估計
  • 任務分解
  • 确定疊代示範和回顧日期,并立刻發出會議通知
  • 确定每日站立會議時間,并立刻發出會議通知
  • 使用者故事描述的比較詳細,機關: “理想人天”         
  • 使用“計劃撲克牌”(Planning Poker),可選值:0 , 1 , 2 , 3,5 , 8 , 13 , ?
  • 理想人天*1.5
  • 關于疊代速率(velocity)的曆史資料
  • 團隊成員都可以針對使用者故事給出自己的工作量評估牌
  • 會議結束之後,所有細分任務都有一個明确的責任人

七、疊代開發

  • 團隊溝通和協作
  • 參考使用XP(極限程式設計)的工程實踐,如持續內建、重構、結對程式設計等
  • 代碼審查
  • Bug生命周期管理

每日站立會議主題:昨天做了什麼,今天計劃什麼,有什麼問題(疊代計劃并不确定任務的完成時間段)

  及時更新IceScrum系統中任務的狀态

  不定期的結對程式設計

  代碼審查

    • 疊代内,所有代碼都要被審查

  持續內建

    • 持續建構
    • 持續審查
    • 持續測試
    • 持續資料庫內建
    • 持續部署
    • 持續通知

Bug跟蹤:

  • 我們目前使用Redmine作為工具
  • 任何人發現bug,都可以送出
  • 一些小的功能增強,也可以bug的方式進行跟蹤

八、疊代示範和回顧

疊代示範 (Sprint Review)

  • 一定要有一個可工作的疊代增量
  • 對管理層:更好的項目可視度
  • 對團隊:階段性壓力、階段性成就感 – 激勵團隊

 疊代回顧(Sprint Retrospective)

  • 針對工程實踐,而不是産品功能本身
  • 做得好的:使用者故事裁剪
  • 需要改進的:持續內建
  • Scrum Master主持會議
  • 檢視疊代目标和疊代内承諾傳遞的使用者故事
  • 産品示範

九、釋出計劃

工作量估計

速率(velocity)估計

  • 根據以往疊代,進行估計
  • 留有餘地

确定之後,要明确告知團隊和相關利益負責人

可以調整

  • 記住,範圍(釋出那些使用者故事)是有彈性的

十、Scrum整體流程最佳實踐

  • 估計使用者故事之前,要明确其範圍
  • 使用“計劃撲克牌”(Planning Poker)的技術進行估計
  • 端到端的內建,從第一個疊代開始,貫穿始終
  • 疊代計劃會議上明确任務分解和責任人
  • 疊代示範和回顧日期在疊代計劃會議之後就确定,并立刻發出會議通知
  • 漸進式功能開發,過早優化是陷阱

繼續閱讀