規劃與未知的未知
原文連結: Planning and the Unknown Unknowns, by Richard Atlas
上個11月,我有一場關於Ultimate Chicken Horse講座,提到遊戲從早期構想到釋出之後的故事。他們會問這過程中的各式問題,例如:你如何得到資金?如何將遊戲放上PS?你如何找到夥伴來開公司?之類。我歸納出各個答案放在研講過程。
我在這個旅程所學到其中一個經驗就是"嘗試去思考所有事情"。這聽起來很平常,但其實很難知道自己沒有考慮到什麼事情,因為很明顯的你沒去思考這些事。因為要思考所有事情是有點難以執行的,所以我開始用另一個方式描述:為未知的未知規劃。
這個名詞是出現在一個心理學家Daniel Kahneman的著作:快思慢想,在其中一個章節提到規劃謬思。規劃謬思是寫下計劃並預測,讓未知的風險接近理想狀況,並利用分析來提升其結果。最後專案花了比計劃更長的時間,花費超出了預算,人們變得不開心,產品完成度低落,大家都沒賺到。聽起來得熟悉嗎?遊戲開發及許多其它產業的工作,都被規劃謬思所困住。
今天我提出三個建議去減緩規劃謬思。
- 立下基準線
- 取得外部觀點
- 為未知的未知做規劃
立下基準線
Kahneman及夥伴Amos從心理學視角在經濟行為領域做了很多研究,最終在2002年得到諾貝爾獎。在提出規劃謬思後,提出立下基準線這個方法。
這個想法是避免一般意念去影響對你的統計數據。例如遊戲開發的例子,"依數據來看,我們的團隊規模會花費4年開發MMO,但我們是業界的老手、有良好的團隊,所以只需要2年的時間",這很明顯不是正常的預先規劃,但這發生在我們身上,不管我們是否有認知到,從小事情到大事情都是。
這個想法最終被確立,並被命名reference class forecasting(參考類型預估),並以接下來的方式運作:
-辨識客觀的參考類型(獨立遊戲、動作遊戲、線上遊戲、由X人團隊做出的遊戲、由Y預算做出的遊戲、等)
-由參考類型上取得統計數據(這些專案花了多少時間、多少預算)
-利用這些數據立下預測,然後用我們自己的資訊來調整基準線
通常你會發現自己迷失於上調預測,你的資源有什麼?你的團隊有相關開發經驗嗎?這些技術可以快速實作嗎?有新的技術需要被習得嗎?什麼東西會讓它慢下來?
由統計數據會發現這其實很明顯,而我們通常會忘了去做這些事,且鮮少發現自己忘記了。
取得外部意見
下一件事是取得外部意見,並從自身狀況退一步。藉著現況,我們會很自然地將擁有、經歷過的經驗、我們面對的狀況,從這些角度來看事情。我們由所知的事物去推斷,我們擁有資料的一小部份,而且當計劃是關於我們及事情時,會被自身的感情困住來下決策。
對於我個人及我的公司,最簡單的方法就是去詢問其它人們。找到可以給你直接意見、不說廢話的人,並告訴你忽視以久的頑強問題。
藉著詢問別人,你不再只被眼前資訊影響,並可以給你更完整的資訊。
為未知的未知做規劃
還記得我們團隊只需花2年就可以做出MMO的例子嗎?我們已經討論過,設想自己能花比較少的時間不是件聰明的事。但大多數人們會花更多的步驟規劃。他們會設想所有所能想到的事情,取得外部觀點、詢問它人,甚至去看相關的專案去預估。一旦他們做了所有這些事,他們可以歸納出所有所需的項目,分配時間給他們,規劃利用現有及未來的資源。過了這些步驟,他們仍然只會覺得要花2年再多一點的時間。
這是因為他們沒有考慮未知的未知。這些事會在專案中期才會到來:僵化的官僚制度(我們都知道這是存在於遊戲業的)、生病、離婚、技術延遲、相關廠商的合作、生涯規劃、離職等等。我在這稍微提一些,因為你不會知道你不知道的事,所以難以規劃。
這就是為什麼我們要把偶發狀況列入預算,而且為什麼開始計劃及訂下時程時,我們要把一大堆額外時間加到計劃內。我們總是儘力不在事情完成前做出保證。許多企業(及個人)出問題而不能準時完成,但這些日期是自我期許而不需這麼固定。當然有些是給客戶的承諾,或是專案要要在某時期完成或上市,但是我已經看過無數個自訂日期是不是被合理制定的,這會造成沒必要的壓力、並因這些排程造成錯誤。
在詢問其它人會遭遇到什麼樣的未知時(就是外部觀點的例子),你可以同時研究其它專案或公司並看看他們有遇到什麼的問題。甚至你不預期會遇到的狀況,這是很好的機會去激發你去思考潛在的問題。
所以首先想想你及同伴的所有事情,然後將這些還沒想過的事列入規劃。
為什麼這是重要的
這關乎於任何在管理職或決策者。在遊戲開發,我聽過的所有專案都無法準時,如果它不延遲,那它一定比人們期望的還要差。我不確定其它產業是不是這麼糟糕,但我認為這是件全世界都會遇到的問題。
這裡並沒有任何困難的科學方法,也不是讓你遵照固定的步驟就能成功,但這些建議能幫助你避免錯誤。當我讀到Kahneman的書時,我理解到了心理學如何應用在遊戲開發上,所以分享了這些,希望你們閱讀愉快。