FPA筆記五 計算ILF/EIF功能點

本篇主要介紹在功能點分析法FPA中,如何計算一個ILF/EIF都有多少個功能點。其中找到ILF/EIF中包含多少個DETRET是關鍵。整個計算的步驟比較簡單,可分爲四小步。
1.         統計ILF/EIF中的數據元素類型DET
2.         統計ILF/EIF中的記錄元素類型RET
3.         參照DET/RET——複雜度對照表,確定該ILF/EIF的複雜度。
4.         參照複雜度——功能點對照表,確定該ILF/EIF的功能點數。
雖然美其名曰“計算”功能點,其實英文是“Count”,並沒有從DET/RET到功能點數的數學公式。IFPUG根據大量的項目統計數據,直接給出了DET/RET——複雜度——功能點數的對照表。我們只需按圖索驥即可。
計算ILF/EIF的功能點數,應當在列出所有的ILF/EIF後進行。本系列《FPA筆記三 數據功能的識別》介紹瞭如何是識別ILF/EIF

1.           數據元素類型DET

IFPUG CPM DET的定義是:A data element type is a unique user recognizable, non-repeated field。請注意,它是數據元素類型(Data Element Type),也就是說同一類型的數據元素只能記爲一個DET。具體的計數規則有三條。
l  每一個滿足下列所有條件的字段都要記爲一個DET.
n  用戶可識別的。
n  不重複的。
n  被某個處理元維護或獲取的。
l  如果兩個系統維護或引用了同一個ILF/EIF,每個系統只計自己維護或引用的DET
l  如果用戶要求用一個字段來建立與其他ILF/EIF的關係,該字段要記爲一個DET

 

不重複的數據元素類型這點很重要。比如一個員工信息的邏輯文件,既有員工自己的工號,也有員工主管的工號。這兩個工號的類型相同,只能記爲一個DET。但它們可能屬於不同的RET
再比如,用戶要求隨同訂單列出10條歷史修改記錄,這10條記錄也只能記爲一個DET
用戶提供的邏輯文件,有可能包含很多在目標系統中不需要的信息。表述這些信息的數據元素,不會被系統內任何一個處理元維護和獲取,所以不能統計在DET內。

 

2.           記錄元素類型RET

IFPUG CPM定義:A record element type (RET) is a user recognizable subgroup of data elements within an ILF or EIF。就像內容多的文章需要分章節一樣,很多ILF/EIF需要將其數據分成好幾組。每一個包含若干個DET的組就是一個RET。表現在GUI上,每一個RET通常會明顯的與其他RET區分開。比如
l  Frame等框在一起的數據通常是一個RET。一組單選鈕(Radio Button)不算,呵呵。
l  包含多步操作的嚮導中的,每一步通常展現一個RET
l  包含多個TAB頁面的界面,每個TAB頁面至少是一個RET
顯然,這裏的記錄,與數據庫和報表裏的記錄意義完全不同。它指的是邏輯文件裏的數據元素塊。我更願意叫它“Data Element Block”。RET分爲兩種:可選的和必須的。
可選的RET是在添加或創建邏輯文件過程中,用戶可用可不用的RET。必須的RET用戶至少要用一次。其實從計數角度看,可選RET和必須RET沒有區別。不必在此費神。
RET的計數規則有兩條:
l  ILF/EIF中每一組可選的或必須的數據元素,記爲一個RET
l  如果ILF/EIF不分組,就把整個ILF/EIF記爲一個RET

 

3.           DET/RET——複雜度——功能點數的對照表

對於每一個文件(ILFEIF),FPA是根據其複雜度來確定其功能點數。複雜度又根據文件所含的DETRET的數量分爲三級:低,中(平均)和高。
表格 1 邏輯文件功能點計算矩陣
DET個數

RET個數

1 ~ 19

20 ~50

 >= 50

 

複雜度

ILF 功能點數

EIF功能點數

1

7

5

2 ~ 5

10

7

>= 6

15

10

 

FPA的這種對照表,優點是簡單實用。缺點是過於粗糙,對於高複雜度的邏輯文件誤差較大。不過東西是死的,人是活的。如果真的有一個邏輯文件的DET遠遠超過50個,或RET遠遠超過6個,就應當想想是否應當將其分成多個邏輯文件。
得到每一個ILF/EIF的功能點數後,把它們的功能點數簡單加和起來,就是整個系統的數據功能點數了。

4.           案例——美國網絡商店的客戶信息

網絡商店的客戶信息,包含客戶姓名、客戶編號、電話號碼、地址(街區、城市、州、郵政編碼)這些基本信息。同時對於互聯網客戶,要包含電子郵件信息;對於有線電視客戶,要包含有線電視盒編號;對於電話客戶,要包含Modem地址。
這個客戶信息包含多少個DET,多少個DET,多少個功能點呢?
它包含10DET:客戶姓名、客戶編號、電話號碼、街區、城市、州、郵政編碼、電子郵件、有線電視盒編號、Modem地址。
它包含3RET:互聯網客戶、有線電視客戶、電話客戶。
根據對照表,它包含7個功能點。
 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章