The Deadline(II) – Tom DeMarco

防止失敗


  • 壯士斷腕
  • 控制失敗比優化成功更能提高你的整體績效
  • 除非必要,否則不要自己去組成一個團隊。去找一個已經成形的團隊來用
  • 維持好一個團隊(如果他們願意的話),也幫助你的繼任者避免團隊凝聚過慢或無法凝聚的問題
  • 把凝聚在一起的團隊-充分、也願意接受新的工作挑戰-當成是專案的收穫之一
  • 專案開始時浪費的一天和最後階段浪費的一天,對專案造成的傷害是一樣的
  • 有無數種方法可以浪費一天的時間……但是沒有任何方法可以拿回一天的時間

    開發過程的建模和模擬


  • 以你認為工作是如何完成的直覺為基礎,建立一套模型
  • 在和同事的互動中使用這些模型,以便交流提煉關於專案如何運作的想法
  • 用模型來模擬專案的結果
  • 根據實際的結果來調整模型 -> 這裏的模型指的是團隊成員、新進成員、互動損失、融合成本以及生產力之間的關係

    「病態的政治」


  • 每一天,你都必須準備拿自己的工作去當賭注
  • ……但是這也不能保證「病態的政治」不會影響你
  • 「病態的政治」可能在任何地方出現,哪怕是在最健全的組織裏面
  • 「病態的政治」的特徵:對個人權勢的渴望超過了組織本身的目標
  • 即使這種不合理的目標與組織的目標完全相反,它也可能出現
  • 「病態的政治」最惡劣的副作用是:人事精簡的專案可能會受到壓力 -> 外行領導專業。上級人員不了解專案的複雜性,以其認定的想法來主導專案進行。事實上以開發軟體而言,「人力」乘以「工時」不等於「生產力」

    度量


  • 度量每個產品的規模
  • 不要執著於單位-在等待客觀度量的時候,先用你自己的主觀單位
  • 從所有能得到的原始資料(一些可計算的軟體特性)自己建立度量單位
  • 從已經完成的專案中蒐集原始資料,以推導出生產力趨勢線
  • 不斷修正你的度量方程式,直到它的計算結果與原始資料庫中的專案工作量有最好的對應關係
  • 借助資料庫畫一條趨勢線,把預期的工作量表示為人造度量單位的函數值
  • 現在,針對每個待評估的專案,計算出人造度量單位值,並根據這個值在趨勢線上找到預期工作量的值
  • 用生產力趨勢線周圍的噪音水平,來反映預測的允差範圍 -> 可使用function point來度量規模

    流程和流程改善


  • 好的流程和持續的流程改善是很好的目標
  • 它們也是非常自然的目標:優秀的技術工作者一定會關心這個,不管你有沒有告訴也們
  • 正式的流程改善計畫需要花錢、花時間;特定的流程改善工作還會延遲專案進度。儘管最終會看到生產力上的改善,它們也不可能抵銷花在流程改善上的時間
  • 但是,專案的確可能從「單一的」、謹慎選擇的方法改善中得到足夠的收益,並抵銷為這次改善付出的時間金錢
  • 在專案進行中,不要希望在超過一個方法的範圍內實施改善。多種技術的改善計畫(比如說提高整整一個CMM等級)很可能使得專案比不實施改善更晚完成
  • 標準流程的危險就在於人們可能失去重要的走捷徑的機會
  • 特別是對於人員超編的專案,標準流程看起來很嚴謹,因為它們製造出了足夠的工作(有用的和無用的),讓所有的人都忙個不停 -> 流程改善是漸進式的,不要期望一推行流程改善,生產力就會大幅上昇;不當的流程改善只是增加許多文書工作而已,對專案一點幫助也沒有

    待續……

  • Advertisements

    Leave a Reply

    Fill in your details below or click an icon to log in:

    WordPress.com Logo

    You are commenting using your WordPress.com account. Log Out / Change )

    Twitter picture

    You are commenting using your Twitter account. Log Out / Change )

    Facebook photo

    You are commenting using your Facebook account. Log Out / Change )

    Google+ photo

    You are commenting using your Google+ account. Log Out / Change )

    Connecting to %s