logo

敏捷開發介紹

這篇主題會涵蓋幾個點:

  1. 總結和回顧一下在前東家帶 Agile Development (敏捷開發) 的心得
  2. 為什麼很多人對敏捷開發都是調侃的心態 (我敏捷,你開發😂)
  3. 讓更多人合適地使用敏捷開發
  4. 為什麼要敏捷開發

敏捷開發是一種應對快速變化的需求的一種軟體開發能力, 對於這個開發概念,有個對應的宣言
而根據概念和這些理念發展出了 Scrum 和 Kanban 主要兩個大框架 (各個組織裡面後來都會有各種的變形 )

聽過很多把敏捷開發用的很糟的團隊
大部分都是負責帶「敏捷開發」的人把它當成來拿壓工程團隊時程的擋箭牌
「敏捷開發」是 Agile Development 不是 Fast Development

具體上來講這個開發概念跟 Release 功能的時間並沒有直接的關係
Agile 代表是有可以調整開發過程和市場反應的彈性
並不代表一個開發週期裡塞滿一堆超過開發能量的功能

接下來我想介紹 Scrum 這個框架
Scrum 這個框架裡主要由 3個角色、 3個產出和 5個會議組成

角色

  1. Scrum Master (How to deliver)
  2. Project wner (What to deliver)
  3. Tech Lead (How to implement)

產出

  1. User Story
  2. Tasks
  3. Story points

會議

  1. Sprint Grooming
  2. Sprint Planning
  3. Sprint Kickoff
  4. Sprint Start
  5. Sprint Demo and Retro

Scrum 就是透過這幾個角色的互動和不同要素間的使用
確保團隊維持一個有效運作的機制
初步的介紹先到這裡

很多在詬病這些開發框架的人或團隊,可以試著拔掉完全不用框架
沒採用任何開發流程,也會自然而然的發展出類似的模式
而透過定義這些工作框架 (Scrum, Kanban),可以讓每個團隊不用重新摸索組織可以怎麼有效地運作

框架讓大家建立在一樣的基礎上工作,若發現框架因為特定因素不適合 (團隊人數、市場需求劇烈變化) ,就該去調整,可能是少一些會議,不同嚴謹程度的文件

唯有保持調整的彈性才是真正的 Agile 的精神

2022 ❤️ Frank Tsai