這本書的第九章是在討論專案開發時經常碰到的疑難雜症,以及如何利用 VSTS 的統計報告來發現、診斷這些問題。其中談到一個挺有意思的術語:「時程膽小雞」(schedule chicken),它指的是開發人員因為無法承受時程的壓力,而做出一些敷衍、耍小手段等扭曲的行為,好讓自己的工作看起來已經達到預定進度了。"雞" 的下場右圖取自一篇名為 "Schedule Chicken" 的文章,圖的下標文字為「Nobody wants to be "chicken"」。

參 與過團隊開發的讀者也許也曾碰過「時程膽小雞」的情形。比如說,在開專案進度會議的時候,每個人都宣稱他的進度沒有落後,可是其實每個人都在等別人承認自 己的進度落後。還有人會故作姿態說:「如果你那邊還要再一兩個星期才能完成,我這邊可以等,我沒問題啦!」當然沒問題啊,誰會承認他還需要拖一兩個星期 呢?

再舉一個「時程膽小雞」的例子。假設程式經理宣佈某一天必須實施「程式碼凍結」(code freezing),從那天開始不能再增加新的程式,只允許修改有問題的程式碼。於是程式設計師們基於畏懼時程的心理,就算到時候無法如期完成預定進度, 還是會在程式碼凍結日的前一天簽入(check-in)所有的程式碼,但這些程式碼可能都沒經過測試、甚至無法執行或建置(管它的,先簽入再說,反正凍結 之後是允許修改的)。

個人以為,如果程式設計師沒有勇氣抵抗時程的壓力,而採用敷衍了事或吹噓進度的作法,最後吃虧的還是自己,當然團隊也 是。不過話說回來,如果我上班時偷雞摸魚,四處上網看"風景圖"、聊八卦,等到工作時程快要到 deadline 時才開始處理正事,這種情況就不能說自己是在發揮抵抗時程壓力的勇氣了 Big Smile

p.s. 以上的例子取自這篇部落格文章:Schedule Game #1: Schedule Chicken