[Essential Scrum] Scrum規劃的原則

Yu-Song Syu
Kuma君的閱讀雜記
3 min readFeb 13, 2018

人們總是對Scrum有個偏頗的想法:『Scrum不做規劃』。事實上這件事我在先前的文章也已經提過,這實在是很大的誤會。人們會有這種印象,應該是受了大學時軟體工程課堂那隻長得像古代貝類的圖的影響吧:

Spiral model 來源:維基百科

而你發現了嗎?事實上Spiral model也有為規劃預留空間喔!所以說上課還是要專心的。

話說回來,事實上,硬要說的話,Scrum應該比較像是『邊做邊規劃』,或是『只做必要的規劃』。而,如果你真的有在跑scrum流程的話,你應該會發現,總時間算下來,scrum團隊花在規劃上的時間,不會比瀑布式要來得少,甚至更多。那麼差別在哪裡呢?差別在scrum流程總是『在必要時才規劃』,以及『只做必要的規劃』。

那麼,到底應該怎麼做?Scrum的規劃會遵守下列原則:

  • 接受『無法事前全盤了解』的這項事實

沒有人是神,即使是神也不是萬能。我們必須承認我們無法預知未來,這個未來包括市場、技術、以及人。如果我一定要在現在叫Alex君作出Beta專案在半年後的細節規畫,那麼,你甚至無法保證Alex君在那時還在這間公司上班。

  • 只要不過度,我們可以做一些事前規劃

然而,我們也不是蒙著馬眼就一股腦兒往前衝的。書中提到一個例子,作者問他的朋友,你在滑雪時,是會規劃你從起點到終點的所有詳細路徑嗎?朋友說不是的,但她還是會設定幾個目標點,先到A目標,再規劃到B的路徑,其次是C...等。

蒙馬眼示意圖

Scrum的規劃也是這樣,誰也不知道這個產品等你把目標一做完後,市場變成什麼樣子,如果你花太多時間規劃,那麼等你到了A點,發現到B的路已經被封起來了,你該怎麼辦?

  • 保持規劃原則開放,重視調整勝過遵循

繼續滑雪的例子,我們做了一部份的規劃,進行到一半發現此路不通,怎麼辦?硬著頭皮幹?不是的。我們把規劃的原則放在開放可討論的地方,一旦環境有變,馬上改變原規劃。就現實面來看,這是為了避免更多損失。

試想你在戰場上,發現眼前的森林跟出發前長官給你的地圖長得完全不一樣,你該怎麼辦?很簡單,原則就是:『永遠要相信你真正身處的環境。』一旦環境跟你認知的不同,原則只有一個:趕快重新認識這個環境,重新做必要的規劃。

有學過動態規劃(DP)的人,是否很有感觸呢?

  • 『規劃的產出』也是庫存

對的,規劃的產出也是庫存,不執行的規劃產出就是沉沒成本。過多與過早的規劃就是這間公司的WIP。WIP多了,庫存就會壓的你喘不過氣來,這點,不管是軟體業或是製造業都是相通的。

  • 小而頻繁的交付

這不用多說了,這就是Continuous Delivery的精隨啊!頻繁交付,每次交付的產品跟上一版本差異都很小,這樣就可以把風險控制在一定範圍內,即使要退版,退版本身的風險也可以降低。

什麼?你退版要手動?

上帝保佑你。

  • PIVOT

當我閱讀到這裡時,我腦中只想到以下畫面:

至於這跟scrum規劃的關係是什麼,我想我不用多說了 :)

--

--