為什么軟件預算會改變和膨脹

cwf8 10年前發布 | 3K 次閱讀 軟件

作為一名軟件開發人員(抑或架構師?),我發現我總是在不斷地與客戶和項目經理討論預算的不準,以及需要改預算。我已經數不清有多少次在我給出預算 之后,又不得不因為一些看似細微的變化卻最終導致出現了bug而修改預算。有許多變量都會增加預算的風險,下面我將簡要談談一些主要因素。

為什么軟件預算會改變和膨脹

主要因素是:

  • 不斷變化的需求/前提條件——告訴你一個基本事實是,任何改變都會導致成本的增加。哪怕是刪除需求的行為也是需要改設計的……記住,即使是簡化設計也是工作。
  • 改變團隊結構——經驗豐富的開發人員總是比新手的效率更高。而深諳某種特定解決方案的人又比經驗豐富卻并不熟悉現有代碼的人要來得高效。對于一支并不清楚的團隊,想要精確預算是很難的,而且往往會導致更高的預算膨脹的風險。
  • 合理安排時間——如果你給開發人員40個小時去完成任務,那么他們至少用的時間就是40個小時。因為哪怕看上去似乎是一個非常簡單的任務,他們也會額外花費時間用于分析、測試,以及干點別的方面的事情來耗用這些時間,即使他們原本有能力完全可以在4小時之內搞定任務。
  • 預算僅僅只是個開始——告訴你一個殘酷的事實就是,對于那些不平凡的軟件,預算只是個開始,后期會隨著可用信息的增加而變化。在沒有獲得更多的信息之時你分析得越多,基于錯誤信息而得出的預算結果與事實的差距也就越大(尤其是當它還涉及上面幾個因素的時候)。

簡單地說就是,“所有的軟件開發都是設計”。任何變化的發生都會改變設計,衍生更多的工作量。敏捷理論的支持者意識到這一點(也可能是潛意識的)之后,通過鎖定設計時間來幫助推動事情的發展(至實際交付)來解決這一問題。漫長的設計周期,往往會導致不為人知的額外工作量。

譯文鏈接:http://www.geekwww.com/why-software-estimates-change-and-inflate.html
英文原文:Why Software Estimates Change and Inflate
翻譯作者:極客網 – John

 本文由用戶 cwf8 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!