• 沒有找到結果。

專案成本預估

第二章 背景知識與相關研究

2.2 專案成本預估

根據學者的研究,許多軟體專案預估的方法紛紛被提出,其中在Barry W.

Boehm所著Software Engineering Economics 一書中[7]將軟體專案預估的 方法分類,如下表:

7

表1、專案預估方法的種類[7]

其中可將估算的方法分為7類,以下將針對各類型詳細解說。

1. Algorithmic model:利用一個至多個演算法來針對軟體專案中的功能

性及環境進行預估,加以計算出專案所需的資源及成本,其中 LOC(Line of Code)、COCOMO(Constructive Cost Model)及本研究所 使用的Use Case Point便是屬於此類,以下將解說COCOMO估算方法

 COCOMO估算方法:

8

COCOMO(Constructive Cost Model)模式是個非線性的模式,由 Boehm 所發表,它分為三個不同的詳細程度,稱為基本模式(Basic Model)、中級模式(Intermediate Model)及詳細模式(Detailed Model)。

每一個模式都將軟體分為三個複雜程度,分別稱為簡單型、中等型 及複雜型。是適合於以第四代(4GL)等語言,使用物件導向開發 系統的衡量方式。以簡單型為例,物件導向程式大小的衡量,可以 下列因素去估算:

 顯示的螢幕數

 產出的報表

 應4GL 碼而開發的3GL 模組數

在COCOMO 方法中,其優點便是架構完整,而缺點是分類上過於 詳盡,實施上需藉由龐大的資料庫支援,否則參數估計的誤差會很

大。

2. Expert judgment:透過一個或多個專家以往的經驗,針對軟體專案做

預估,其判斷的資訊包括經驗法則、可用的資源、過去專案的資料、

過去估計的回饋及過去類似專案的詳細功能等,其中較著名的方法 為Delphi technique。

9

3. Analogy:將軟體專案與以往類似與已完成專案的實際成本為基礎來

估算新專案,估算新專案與舊系統相類似部分的成本,最後將每部

分的成本加總,預估出專案所需的成本。

4. Parkinson:Parkinson方法中認為工作的多寡是取決於何時將資源用

盡,所以專案可用的資源有多少,便能完成多少工作,因此在估算

上便是以目前專案所擁有的資源來做推估。

5. Price to win:以取得合約為原則,以可以取得合約的合理價格作為

基礎,對專案進行預估。

6. Top-down:由整體估計專案需投入的工作量,再往下分割到個人負

責的細部內容所需的工作量。

7. Buttom-up:針對軟體專案中的細部內容做區別估計規模大小,並加 以估算出成本,最後再整合成整個專案的成本預估。

雖然在專案預估上有以上七種不同的分類,但並非每個方法都能完整的 將專案中每個層面包含進來,因此Boehm指出,為綜合各種方法的優缺 點,傾向依情況互相搭配,將各方法優點及缺點互補,例如說由上而下 的方法與由下而上的方法結合,演算法結合專家判斷法,藉由這樣的搭 配,也使得專案預估更有效率。

在演算法估算中包含了兩大變數,分別為軟體規模與調整因子,軟體規

10

模的單位可為原始碼(Source Code)、功能點(Function Points)而調整 因子則包括如技術因子、環境因子等,因此本研究在專案預估的方法上,

便以演算法類型的預估為主,除了考量原本的軟體規模與調整因子外,

還加入了成員能力的因素,使演算法預估的考量更為完整,藉此提高預 估的準確度。

相關文件