轉載請注明出處:http://www.cnblogs.com/lidabnu/p/5700412.html
主要參考資料來自百度文庫:http://wenku.baidu.com/link?url=yIlNC-mchaeBPtiz6zeXTMPQgIgY_1tyfb0rlJjvB43aqRNWZrcdfL13cL7pgfgWawJZ1Rq2ZDAsLs2IqaXNgfr5VEEWHUCvKt4xAJalXua
關鍵點:
功能點分析是一種從用戶的角度對軟件開發進行度量的方法。
目標:
功能點方法度量的是軟件的規模,它是主要從邏輯設計的角度出發對提供給客戶的功能進行量化的方法。功能點分析方法的目標是:
- 度量用戶要求和能夠接收到的功能的規模。
- 提供一種與具體實施方法和技術無關的對軟件開發和維護進行度量的手段。
步驟:
1、決定分析類型:包括開發項目功能點分析、升級項目功能點分析、應用功能點分析;開發項目功能點分析適用於一個新開發項目,升級項目功能點分析則適用於對已有項目的升級,應用功能點分析適用於分析一個已有應用的功能規模。
2、識別分析范圍和應用邊界:分析范圍確定了一次分析的功能點范圍;應用邊界確定了用戶和應用的邊界;
3、識別未經調整的功能點數:僅計算向用戶提供的功能數量,原則是僅計算”向用戶提供了什么功能“,而不包含”怎么提供的這些功能“,包含”數據“和”交易“兩大類功能。
數據功能是指用戶能夠識別的、滿足內部或外部數據需求的功能。分為內部邏輯文件ILF和外部接口文件EIF兩類,ILF是用戶能夠識別的、存在內在邏輯關系的一組數據或控制信息,其目的是容納一組在本應用范圍內被一組基本處理所維護(所謂維護,及本應用會修改它)的數據;EIF則是用戶能夠識別的、在本應用中被引用的、存在內在邏輯關系的一組數據或控制信息,其與ILF的不同在於其是由邊界之外控制的,其目的是容納本應用一組基本處理所引用(也即只讀)的數據,這意味着本應用的EIF必然是另外一個應用的ILF。
交易功能是指向用戶提供的來處理數據的功能,包括外部輸入、外部輸出和外部查詢三類。外部輸入EI是指對來自本應用邊界之外的數據或控制信息的基礎處理,EI的目的是為了維護ILF或者改變系統的行為;外部輸出EO則是向應用邊界之外發送一組數據或控制信息的基本處理,其目的是為了向用戶展示一組經過了提取之外(提取操作屬於外部查詢)的其他邏輯處理的數據或控制信息,這里的處理至少包含一個數學演算和衍生數據的生成,EO可能包括對ILF的維護或系統行為的改變;外部查詢也是向應用邊界發送一組數據或控制信息的基礎處理,與EO的不同之處在於其包含的邏輯處理僅僅是提取,不包含數學公式的計算或衍生數據的生成,因此不維護ILF,也不會改變系統行為。區分EI和EO的目的在於二者的復雜程度會不同,因此度量出來的功能點是不同的。
4、確定調整系數VAF,包含14個基本特征,每個特征都有規則來描述該特征對本應用的影響大小,以0-5的分值表示。
5、計算調整后功能:針對項目開發、項目升級、應用三個類型使用不同的公式計算而來。