說到規劃與掌握工作進度,我們第一個想到的可能會是先列出所有要做的任務、幫每個任務排序、以及為每個任務打上死線,接下來剩下的就是死命地完成它們了。這種類似於瀑布式模型的開發哲學,從小到大被我們應用在生活中的各種層面;然而,當計劃趕不上變化時,除了乾著急與硬拚以外,還有甚麼其他的解決方式呢?
Scrum (沒有中文譯稱、命名還是從橄欖球運動術語借來的) 是一種起源於軟體開發的工作框架,它的特性是能夠讓開發團隊在時間與人數非常有限、甚至產品規格目標都還在摸索的情況下,還能夠持續且準時的多次交付出產品。近年來,Scrum的部分概念也被應用至其他變動性高、節奏快速的產業中,也獲得了巨大的迴響。
Scrum的整體框架較為複雜,不過下面這幾個短片能讓你快速掌握 scrum 的基本核心概念:
Scrum 101 - Part 1 | Scrum Basics
Scrum 101 - Part 2 | The Scrum Process
Scrum 101 - Part 3 | Scrum Values
Scrum 101 - Part 4 | Scrum Terms Review
一套完整的 Scrum 流程,包含了許多獨有的元素 (例如角色間的定位、各種大小會議、sprint、看板方法、usecase or story、燃盡圖、迭代的方法...等) 在實務上施行也有許多要注意的細節與眉角,誤用也時有所聞,往後我們將另篇介紹。
適用場景
Scrum 框架的機動性很高,特別適合在需求可能經常變動的應用場景中使用這樣的概念。然而也不是所有的專案都適合使用這套方法來規劃:
適用 Scrum 的場景
• 有大方向的願景,但由於某些原因,任務難以一開始就細分(breakdown)
• 預算、目標、時程,這三種的任一因素變動的可能性很大
• 產品或服務模式尚未達到 product-market fit
• 產品需要多次交付 (或無限次交付),或其他可以利用迭代發揮成效的模式
• 利害相關者(stakeholders)眾多,共識尚未明確
不適用 Scrum 的場景
• 任務性質是已有SOP等執行準則的
• 任務的達成與否已有明確的細項標準或指標
• 已有合作備忘錄、合約、SOW等明文記載的專案範疇、里程碑與交付期限
• 產品屬於單次交付,或其他無法使用迭代發揮成效的模式