Function Point Estimation 功能點估算是一種用來估算項目大小的技術。
功能點是對軟件功能和規模的間接定量測量,它基于客觀的外部應用接口和主觀的內部應用復雜度以及總體的性能特征。
功能點法和專家法估算最大的不同點在于對估算規模的細化的定量分析上面.我們在用專家法估算的時候往往會直接去估算工作量,或在規模的估算中摻雜了生產率的數據,導致估算數據出現問題.專家法估算雖然有時候也很準確,但不能提升為組織級可以參考和借鑒的同樣規則.其實專家法的估算要做準確也是遵循了功能點法估算的思路,在考慮一個軟件功能究竟涉及到哪些操作,涉及到多少數據文件的存在,每個操作需要訪問哪些數據文件等相關問題.只是這些想法停留在專家頭腦里面而沒有量化出來.
我們的預測,分析和決策能力要提升,就必須對我們的經驗進行模型化和定量分析.功能點法正好就起到了這個作用.其實功能點發也有不完善的地方,這可以根據我們項目實際的使用情況去不斷的改進.
功能點發進行估算的時候具體過程是:
1.對估算功能單元的類型進行識別
2.計算每種類型的復雜度.
3.計算總體的調整前的功能點數
4.根據調整因子對功能點數進行調整
功能點估算中有5種信息域需要進行描述:其中事務類的有EI,EO和EQ,數據存儲類有ILF和EIF.
外部輸入(EI):通過界面等的輸入,插入更新等操作都是典型外部輸入
外部輸出(EO):僅僅輸出,入導出,報表,打印等輸出
外部查詢(EQ):先要輸入數據,在根據輸入數據計算輸出,如查詢
內部邏輯文件(ILF):可以理解為業務對象,可能對應多個數據表
外部接口文件(EIF):其它應用提供的接口數據
A.對事務類功能點的估算:
對事務類的功能點估算需要確定DET和FTR兩個指標:
DET:可以理解為界面的錄入具體數據項,按鈕也要作為數據項
FTR:事務功能需要操作的數據文件的數目
對EI的復雜度的計算:
對EO和EQ復雜度的計算:
B.對數據存儲類功能點的估算
對數據存儲類功能點的估算需要確定DET和RET兩個指標
DET:具體數據存儲文件的數據項的數目
RET:數據文件是復合文件時候關聯或引用的個數.如訂單數據文件由于存在訂單頭和明細關聯引用,RET應該算2.
對ILF和EIF復雜度的計算:
信息域數據估算完成后可以開始考慮調整因子:
調整因子是一種補償機制,即通過五個信息域和復雜度都還沒有辦法考慮到的因素就應該做為調整因子.如同樣一個軟件系統一種是系統要支持分布式和自動更新,而另一種是不考慮這種需求,如果不考慮調整因子這兩者的規模是一樣的,但很明細第一種情況復雜度和規模都會更大些.
有了調整因子后最終可以得到調整后的功能點數:
AFP(調整后功能點)= UFP (未調整功能點數目)* AF (影響因子)
文章來源于領測軟件測試網 http://www.kjueaiud.com/