iT邦幫忙

第 11 屆 iT 邦幫忙鐵人賽

DAY 4
0

Scrum是敏捷開發的一種方法,目前應該算是最夯最多人在推行採用的吧!要學習Scrum我覺得這篇文章介紹得很不錯,什麼是Scrum?不是工程師也能懂的Scrum入門介紹!,這邊我就用我的方式另外說明解說我認知的Scrum

https://ithelp.ithome.com.tw/upload/images/20190920/20111916y6fBbS7Rj9.png
圖片來源:當一個 Scrum Master 是一個怎樣的體驗?

先用這張圖片開場,在Scrum的世界裡,主要是三個角色、五個事件、三個產物

Role 角色

  • Product Owner 產品負責人:負責釐清需求並找到有價值的商業模式,同時也需決定每個需求的優先順序 ,並對成品驗收負責
  • Scrum Master 敏捷教練:負責執行Scrum方法,培養團隊敏捷的概念,並主持會議,持續改善流程
  • Team:包含測試與開發人員,需要互相配合,在每個Sprint內完成必須交付的任務

Event 事件

  • Sprint 衝刺期:為Scrum中的一個週期,通常以2-4週為單位,理論上一旦Sprint開始,就不得再增加任務,除了很緊急的bug以外
  • Sprint Planning:在每個Sprint開始前的會議,約1-2小時,會依照Product Owner提供的優先順序和團隊在這個Sprint週期中擁有的點數(一般就是我們可以使用的時數)評估哪些需求要加入此次的Sprint中
  • Daily Scrum 每日例會:又稱作Daily Standup Meeting,每日早上開的短會議,限制只有15分鐘,主軸為每個人要說明三件事情:
    • 昨日做了什麼?
    • 有遇到什麼問題
    • 今日要準備做什麼
      但要注意一件事情,在每日例會上不討論細節,也不追究問題,只是單純地描述而已
  • Sprint Review:主要是Demo成品,作為此次Sprint的成果交付以及給予回饋
  • Retrospective:一次1小時,主要是回顧這次Sprint的內容,檢討不足的地方作為下次改進的重點

Artifact 產物

  • Product Backlog 產品代辦清單:為整個產品的需求的清單,會讓Product Owner排定優先順序
  • Sprint Backlog 衝刺期待辦清單:每次Sprint週期劃入的任務
  • Product Increment 產品增量:簡單來說就是開發完Sprint週期中的任務後,完成的成品,會為該產品增加價值

接著,下方這張圖可以很清楚地顯示出Scrum跑一次Sprint的過程

https://ithelp.ithome.com.tw/upload/images/20190920/20111916DLHLWwONXB.png
圖片來源:搞笑談軟工

另外,在Scrum進行中,常常會在白板上畫出區塊,然後利用便利貼寫上Task任務,並在每次會議中移動調整,這就是所謂的Scrum Board,有點類似Kanban,但是兩者的概念不太一樣,後面會再行對比說明

附上一張常見的Scrum Board圖,主要區塊為四個:Story 故事、TODO / Not Started 待辦事項、In Progress 進行中、Done 已完成
要注意!在Scrum Board的世界裡,Story會是以Task任務的概念存在,有的時候這個Task完成了,並不表示User Story就整個完成了,是以開發者的角度去解讀,每個任務的週期
https://ithelp.ithome.com.tw/upload/images/20190920/20111916qymJUlNzMf.png
圖片來源:What Is a Scrum Board?

其實,Run Scrum不難,但是要執行的好卻是很有挑戰,尤其Scrum Master的職位我覺得特別需要著墨,我自己有執行過一次這種開發方式,真的挺有趣的,我身邊有些團隊也都開始加入敏捷開發的行列,他們所選用的方法也是Scrum,待之後有更多實務經驗時,再來分享細部經驗吧

參考資料、延伸閱讀:

下集預告:Kanban


上一篇
Extreme Programming
下一篇
Kanban
系列文
後端功城獅30天DevOps探討挑戰30

尚未有邦友留言

立即登入留言