跳到主要內容

[職場]準不準時都要估!預估工時的意義究竟在哪?


  看到 PTT Soft_Job 板上有人問了一個問題,作者公司的開發方法是瀑布式,但是由於規格常常變動(據說原因是「加入了敏捷的迭代想法」),所以專案預估的時程也很不準,所以作者心中浮起了一個疑惑:預估工時的意義是什麼?


  姑且先不戰這瀑布融合敏捷迭代的說法,來以 PM 的角度來討論為什麼要預估工時,還有為什麼覺得即使估不準也要估。

  為什麼要預估工時?

  平常最常使用的 App,除了通訊、社交 App 以外,最常用的是「台北等公車」,這個 App 功能很簡單,能讓你知道你在等的公車現在在哪一站、還有多久會到你現在在等的這一站,以及多久之後會到某個目的站牌。

  因為它能評估什麼時候出門、什麼時候到,並預估後續的時程。

  這跟預估工時有什麼關係呢?為什麼要預估工時?


  認為最重要的目的,就是藉由「同步各方預期」,成為「溝通與協作的基礎」。

  「軟體功能開發」這件事,不是功能開完就能開發,開發完了就可以賣了,你必須與其他部門協作,而這協作常常是有先後順序與相依性的。在開發的一開始,PM 提出需求,設計師需要提供設計圖檔,工程師需要設計技術架構,接著寫程式,測試人員需要排定測試時間,行銷需要規劃上市活動,業務需要規劃推銷計畫等等,如果沒有一個對時程的預估,並與各方同步,各方資源怎麼知道該什麼時候投入,彼此如何協作?

  若沒有同步各方預期,可能一個要做三個月的功能,業務覺得這很簡單,跟客人說一個月就能交,行銷可能猜測要四個月,先把行銷資源調到其他產品上,或是等到功能快完成時,PM 才去要後續行銷以及業務資源,如果臨時要不到怎麼辦?

  文中的 RD 可能會說,但是規格一直變,時程也會一直改變,估不準如何協作?不,就是因為有變動,才要估計,才能協作。

  因為只有開始時有了估計,在 delay 時才能評估跟原本計畫的「差距」,進而準確調整計畫。

  就好像公車到站時間 App,可以知道到站時間,就可以評估什麼時候要出門──公車還有半小時,可以慢慢來;公車快到了,趕快出門不要滑手機了,也可以知道什麼時候可以抵達目的地,如果看起來會來不及,也可以提早決定搭計程車,或是先打個電話跟對方說一聲。

  在專案上,如果知道開發還有三個月才會完成,行銷資源就可以先專注在其他產品上;如果看到某一個人的時間分配看起來會是專案瓶頸,或功能在他身上要花最多時間,會提早分配其他資源協助;當計畫有變,看到預估和實際的差距,就會趕緊啟動應變計畫(談範疇、砍功能、橋資源、排beta版、調整開發測試順序等等),會知道若我維持原本的協作計畫,需要縮短多少時間,也會知道如果萬一真的無法縮短,對應的各部門要延後多久投入資源,溝通與談判要建立在什麼樣的新schedule上。

  而且這估計結果等於是將「勞力」以時間的方式具體化了,也更能估成本、比較功能規模、排優先順序,也能累積、傳承在其他專案上──PM 記得類似的功能之前估計多久,對於新專案、新功能的 scope 就會越來越有理解,更知道要如何跟客人談判﹑收錢。

  如果時程估不準,是否還有價值?

  「估計 schedule」本身就有價值。 因為估計 schedule 的過程,就是在逼你把事情想清楚。要能估計時程,總該從頭到尾想清楚要做什麼事情、各要花多少時間吧?越厲害的 RD,能想得越周到,對於可能遇到的問題也會多抓一些時間做緩衝,他們估的時間就越準。

  所以這本身也是一種練習,幫助 RD/PM 把事情想清楚,當時程不如預期時,也能知道自己哪邊沒想清楚,就像讀書考試一樣,如果只有讀書,沒有考試,很難知道自己是不是真的懂了,還是只是看過去,沒有融會貫通。

  考試答案有錯,就像schedule不準一樣,能幫助我們看到盲點, 可以注意到那邊是容易被忽略、高風險的地方,下次會記得不踩到,如果沒有「超過預期要delay了」的震撼,很難知道這邊其實是風險所在,幾次下來,之後在做規劃時就能思考得更周全。所以說——

  重要的不是 schedule 有多準,而是「它為什麼不準」,我忽略了什麼,「下次如何讓它更準」。

  這也是一種成長思維吧?

  另外,如果時程估不準的原因,是因為老闆或客戶一直改規格,反而這樣才更要估時程。做為 PM,老闆壓時間時,就能把功能以及所需時間攤開,問他要捨哪一項,或老闆真的要硬壓加班時,知道要加多少班,也可以跟客戶說明,根據預估,若改這個功能,會 delay 幾天,要多收多少錢。

  估時程還有一個好處,覺得是心理層面的,就是預估 schedule 時,都是請 RD 自己評估,這有種「承諾」的味道,自己估出去的 schedule,像是自己的承諾,會盡量逼自己想清楚,也會努力去達到目標,或是眼看著目標無法達成,也會先舉手示警,可以讓 PM 啟動後續的應變計畫。

  總之,估計時程有幾個好處:

  藉由時程估計,同步各方預期,啟動協作。

  藉由時程估計,在面對變動或不如預期時,幫助評估影響,並提早啟動應變計畫。

  藉由估時程的過程,把專案想清楚,要做的事情拆細,減少不確定性。

  藉由檢討實際時程以及預估時程的差別,幫助自己辨識盲點,在未來規劃時想得更清楚。

  藉由估時程,把勞力投入具體化,就能估成本、收錢、排優先順序,而且可以延伸到類似功能,累積專案評估經驗並傳承。

  其實認為問「為什麼要預估工時」,跟「為什麼要做計畫」一樣,如果預估會不準,應該要去檢討不準的原因、如何改善,而不是乾脆就不估了;如果知道計畫總是沒有照規劃的執行,應該是要去檢討為什麼,而不是不做計畫,直接放棄治療。

   但是當然「老闆硬壓時程」這件事不在這篇文章「估時程」的討論範圍內。不過如前面提到的,面對老闆硬壓時程的應對,也是會估「合理時程」給老闆參考,若老闆還是堅持,就問他要砍什麼功能,如果連功能也不給砍,到時候他壓的時間真的做不出來,至少不是 RD/PM 的鍋,他就會慢慢學到他的要求真的不合理。

這個網誌中的熱門文章

[娛樂]玩了多年的撲克牌,其實背後是結合工程、歷史、設計的大學問!

  全世界各地的人們都知道撲克牌,也都有和撲克牌打過交道,幾乎每個地方都宣稱撲克牌是自己的發明成果。中國人認為撲克牌最早起源於十二、十三世紀南宋時期傳出的中國的葉子戲(按照四季分為四種類別)。法國人則認為撲克牌是由塔羅牌演變而成,而英國人則表示自己是在所有經過認證的記錄資料中最早提到紙牌遊戲的國家。   現在,大家可能都知道怎樣玩「二十一點」或者是橋牌,但很少有人會靜下心來想一下,一副撲克牌其實是工程學、設計和歷史多方面融合而成的一個奇蹟。撲克牌不僅是一種休閒娛樂時的消遣工具,也是高額賭博和魔術技巧的練習和展示工具,不僅是一種數學概率模型,甚至有時候也會被當作貨幣或者是機密訊息的傳播媒介。   在這個過程中,撲克牌不同起源的獨特之處也展現了出來。撲克牌的名稱、顏色、標誌和設計根據不同的出處以及玩家不同的想法而發生變化。這一張張的圖形卡片不僅僅是玩具,或者是工具,他們更是展現不同習俗的一種文化印記:   有關撲克牌的誕生地一直眾說紛紜,外界也沒有達成一個確定的共識,但就像火藥、茶和瓷器這些發明一樣,幾乎可以肯定的是撲克牌也是起源於東方。國際撲克牌協會(IPCS)主席 Gejus Van Diggele 也表示:「學者們和歷史學家對撲克牌的確切起源存在分歧,但他們普遍認為撲克牌是由東方向西方進行擴散傳播的。」   中國唐朝時期有史料提到了一種紙牌遊戲,雖然這種遊戲更像是現在的多米諾骨牌,但專家認為這是有關紙牌最早的書面記載材料。歐洲 14 世紀末期的一些參考文獻曾提到一種「撒拉遜人(阿拉伯人的古稱)玩的遊戲」突然傳入歐洲,這表明紙牌不是來源於中國,而是來自阿拉伯半島。   此外,還有一種說法是,紙牌最早是由游牧民族從印度帶來的一種能夠預測命運的卡片,為紙牌的起源打上了更為久遠的一個印記。但無論是哪一種起源,應該都是有一定的商業契機促進了紙牌在遙遠的東方與歐洲之間的傳播,與此同時印刷技術的發展也加速了紙牌跨國界的生產和傳播。   在中世紀的歐洲,紙牌遊戲多是與喝酒、賭博還有其他的一些陋習聯繫在一起。由於紙牌遊戲傳播的廣泛性,以及它給當地所帶來的破壞性,當局決定禁止紙牌遊戲。歷史學家 Michael Dummett 在他的《塔羅牌遊戲》一書中提到了巴黎的一項法令,禁止公民在工作日玩紙牌。後來,紙牌遊戲被教會視為異端邪說,傳教士也紛紛遊說,認為「...

[開發]如何讓 Unicode 圖案 (特殊符號) 在網頁上正常顯示?

展示了許多可以取代網站小圖示的 UNICODE,其優點非常顯而易見: ① 字元的傳輸量遠低於圖片的傳輸量。 ② 可以減少許多小圖示的 http 請求量。 那麼接下來的問題會是,要怎麼讓網站所使用的 UNICODE 表情圖案、特殊字元,都能讓所有訪客看到呢? ⑴ 符號數量。 符號數量越多,代表字型檔案越大。目前 Unicode 各國文字的數量太多先略過,屬於圖案的部分超過一千個,持續有新圖案推出。 ⑵ 編碼為 UTF8。 1 2 3 4 5 <!-- HTML4 --> <meta http-equiv= "Content-Type" content= "text/html; charset=utf-8" > <!-- HTML5 --> <meta charset= "utf-8" > ⑶  使用方式 使用 Unicode 的話,這一切就能懶人化,先查閱 Unicode 特殊符號一覽表,找到對應的圖案,例如西洋棋黑騎士圖案,那麼在網頁想顯示的地方,直接擺上 Html 代碼: 1 &#9822; 輸入以上字元就行,但是為方便維護,建議還是將該內容直接貼上「♞」。 注意:在使用不同的字體時,渲染出來的符號可能會有所不同,因此,iOS 和 Android 將一些unicode字元轉換為表情符號。在您使用這些 unicode 字元之前,最好測試一下它們,確定不會出現在不同瀏覽器表現不同的情況出現。

[特攝]網友票選《最帥特攝俳優》你知道這些人氣男星都是超級戰隊英雄出身的嗎?

  網路資源還沒那麼發達的小時候,第四台能看的日本節目其實很有限,偶爾轉到忍不住停下看的特攝作品也成了接收日本文化的媒介之一。如果說拍攝泳裝寫真是日本女星的必經之路,那麼校園劇和特攝日劇應該就是大部分男星的跳板了,尤其《假面騎士》根本等同"爆紅速成班"一樣主演男星幾乎都大紅,但別忘了《超級戰隊系列》也捧紅不少線上人氣俳優。最近日本網站就請網友們從戰隊英雄出身的俳優中票選了一下覺得最帥的戰隊英雄,大家又會第一個想到誰呢?   第10位:山田裕貴(海賊戰隊豪快者)。   第9位:金子昇(百獸戰隊牙吠連者)。   第8位:白川裕二郎(忍風戰隊破裏劍者)。   第7位:中尾暢樹(動物戰隊獸王者)。   第6位:志尊淳(烈車戰隊特急者)。   第5位 永井大(未來戰隊時間連者)。   第4位:千葉雄大(天裝戰隊護星者)。   第3位:玉山鐵二(百獸戰隊牙吠連者)。   第2位:橫濱流星(烈車戰隊特急者)。   第1位:松坂桃李(侍戰隊真劍者)。   真的好多都是日劇演紅之後才驚覺他們有演過特攝作品的俳優,也更讓人想回去重看這些出道作品呢。