Putnam模型

來源:果殼範文吧 7.88K

Putnam 模型是指1978年Putnam提出的一種具有實用價值的動態多變數軟體成本進度模型。它是假定在軟體開發的整個生存期中工作量有特定的分佈。這種模型是依據在一些大型專案(總工作量達到或超過30個人年)中收集到的工作量分佈情況而推匯出來的,但也可以應用在一些較小的軟體專案中。

Putnam模型


Putnam模型的基本觀點和關係式

Putnam 認為採用SLOC/PM(原始碼行/人月)作為軟體生產效率的指標,源於傳統經濟學的投入產出分析,在軟體中應用表現平平。根本原因是忽略了進度計劃對軟體開發的影響。然而在實際專案中,進度計劃是影響軟體費用和人力資源投入的非常重要和敏感的因素。

Putnam在從事軟體開發管理27年的生涯中,收集分析了6600個完成的軟體專案資料,認為一個軟體成本和人力 投入預計模型必須要能夠反映時間(即進度計劃)和人力兩個因素的影響。Putnam總結並提出下列基本關係。

Amount of function=effort×Schedule×Process Productivity

其中Effort(人力投入)和Schedule(進度計劃)具有指數關係。

在此基礎上,Putnam將這種關係用下列方程具體描述:

Size=(Effort/Beta)1/3×Schedule4/3×Process productivity Parameter

其中:

Size(程式規模或尺寸)可用SLOC(原始碼行)或其他度量,例如功能數量表示。

Effort(投入)用開發中的人力投入PY(人年)表示。

Beta與技能因素有關,同時也是Size的函式。其取值區間是[0.16 0.39]。Beta具有降低生產效率的作用。

Process Productivity Parameter (過程生產效率引數)是一個代表生產能力的引數,不同的機構其開發和管理能力不同,各種應用程式開發難度也有很大差別,需要用不同的過程生存率引數加以調整,其理論值區間是[610 1346269],典型的取值區間是[1947 121393]。

Putnam模型的調整和估值

模型調整和估值的目的是估計或調整過程生產效率引數取值,使其符合開發機構實際狀況。Putnam模型的優點恰恰在於可以準確地計算出過程生存率引數數值。其計算方法如下: Process Productivity Parameter=Size/((Effort/Beta)1/3(Schedule4/3))

該式中存在Effort和Schedule兩個變數,因此應用到新開發的專案時,還需要另外一個附加的約束條件才能準確求解。約束條件有多種形式,如果專案的最大預算金額已經確定,則:(最大開發人力投入)=(最大費用)/(平均人力費用負擔)

其他形式的約束條件包括:最大開發時間,最大人力,最大人力構建率等。

熱門標籤