軟件成本評估中的功能點估算法將功能點分為5類:ILF(Internal Logical File,內(nèi)部邏輯文件)、EIF(External Interface File,外部接口文件)、EI(External Input,外部輸入)、EO(External Output,外部輸出)和EQ(External Inquiry,外部查詢)。ILF和EIF屬于數(shù)據(jù)類型的功能點,EI、EO、EQ屬于事務(wù)類型的功能點。
EI、EO、EQ的比較
EI是處理來自系統(tǒng)邊界外部的一組數(shù)據(jù)輸入,它的主要目的是維護(hù)一個或多個ILF,以及/或者更改系統(tǒng)的行為。對業(yè)務(wù)對象的增、刪、改等操作通常都是EI。
EO是輸送數(shù)據(jù)到系統(tǒng)邊界外部的過程。它的主要目的是通過邏輯處理過程向用戶呈現(xiàn)信息。該處理過程必須包含至少一個數(shù)學(xué)公式或計算方法,或生成派生數(shù)據(jù)。一個EO也可以維護(hù)一個或多個ILF,并/或改變系統(tǒng)行為。
EQ是向系統(tǒng)邊界外發(fā)送數(shù)據(jù)基本處理的過程。其主要目的是從ILF或EIF中通過恢復(fù)數(shù)據(jù)信息來向用戶呈現(xiàn)。該處理邏輯不包括任何數(shù)學(xué)公式或計算方法,也不會生成任何派生數(shù)據(jù)。EQ不會維護(hù)任何一個ILF,也不會改變應(yīng)用程序的系統(tǒng)行為。
EO和EQ的共同點是,其主要目的都是通過基本操作過程展現(xiàn)數(shù)據(jù)給用戶。EI、EO、EQ的比較見下表。
事務(wù)類型功能點的計算規(guī)則
事務(wù)功能又稱為交易功能,代表提供給用戶的處理數(shù)據(jù)的功能,每一個事務(wù)功能都是一個完整的基本過程,一個基本過程應(yīng)該是業(yè)務(wù)上的原子操作,并產(chǎn)生基本的業(yè)務(wù)價值,基本過程必然穿越系統(tǒng)邊界。
EI的計算規(guī)則
1. 從系統(tǒng)邊界之外收到數(shù)據(jù)。
2. 如果進(jìn)入系統(tǒng)邊界內(nèi)的數(shù)據(jù)不是一個改變系統(tǒng)行為的控制信息,那么至少一個ILF應(yīng)該被改變。
3. 對于已識別的處理過程,至少滿足下面三個條件之一:
• 該基本處理過程的邏輯與本應(yīng)用系統(tǒng)中其它基本處理過程的邏輯不同。該基本處理過程應(yīng)該具有唯一性。例如:不能存在兩個完全一模一樣的存盤操作。
• 在應(yīng)用程序邊界內(nèi),該基本處理過程所使用的這組數(shù)據(jù)應(yīng)該與其他基本處理過程所使用的數(shù)據(jù)不同。
• 在系統(tǒng)邊界內(nèi),基本處理過程所引用的ILF或EIF是不同于其它基本處理過程所引用的ILF或EIF。
EO和EQ通用計算規(guī)則
必須全部滿足以下內(nèi)容才能被視為一個EO或EQ:
1. 從外部發(fā)送數(shù)據(jù)或控制信息到系統(tǒng)邊界內(nèi)。
2. 為了識別這個過程,以下三點必須滿足一個:
• 該基本處理過程邏輯上必須是唯一的,該唯一性是指其在系統(tǒng)中與其他EO或EQ在邏輯性上保持唯一。
• 該基本處理過程所使用的數(shù)據(jù)應(yīng)該是唯一的,該唯一性是指其在系統(tǒng)中與其他EO或EQ所使用的數(shù)據(jù)不同。
• 該基本處理過程所引用的ILF或EIF文件應(yīng)該是唯一的,該唯一性是指其在系統(tǒng)中與其他EO或EQ所引用的ILF或EIF文件不同。
EO補(bǔ)充的計算規(guī)則
除了要滿足上面的通用規(guī)則外,還要滿足下面其中一條:
• 在基本操作過程中至少包含一個數(shù)學(xué)公式或計算方法
• 在基本操作過程中要產(chǎn)生派生數(shù)據(jù)
• 在基本操作過程中至少要維護(hù)一個ILF
• 在基本操作過程中要改變系統(tǒng)的行為。
EQ補(bǔ)充的計算規(guī)則
除了要滿足上面的通用規(guī)則外,還要滿足下面其中一條:
• 基本操作過程從ILF或EIF中獲取數(shù)據(jù)。
• 基本操作過程不能包含數(shù)學(xué)公式或計算方法。
• 基本操作過程不能生成派生數(shù)據(jù)
• 基本操作過程不能維護(hù)任何一個ILF
• 基本操作過程不能改變系統(tǒng)的行為
EI、EQ和EO的技術(shù)復(fù)雜性計算
復(fù)雜性取決于FIRs和DETs的數(shù)量。FTR是被一個事物讀取或維護(hù)的ILF,或者是被一個事物讀取的EIF。
EI中識別FTR規(guī)則
• 每一個ILF應(yīng)該算做一個FTR。
• 通過EI讀取的每個ILF或EIF都應(yīng)該計算為一個FTR。
• 既被EI維護(hù)又被讀取的ILF僅計算為一個FTR。
EI中識別DET規(guī)則
• 在EI的過程中,以用戶角度識別的、通過應(yīng)用系統(tǒng)邊界輸入系統(tǒng)內(nèi)部的非重復(fù)字段,應(yīng)算作一個DET。
• 在EI的過程中,只要沒有通過系統(tǒng)邊界輸入,即使它存在于系統(tǒng)內(nèi)的一個ILF中,也不能算為一個DET。
例如,外貿(mào)訂單系統(tǒng)中,訂單的金額是被單價和數(shù)量自動計算的,那么金額是沒有通過系統(tǒng)邊界輸入的,因此在EI操作中就不應(yīng)該算做一個DET。
• 在應(yīng)用程序的EI操作時,系統(tǒng)提示的錯誤信息或完成操作的信息,應(yīng)該被分別計算為一個DET。
例如,在網(wǎng)站注冊用戶信息時,由于輸入錯誤系統(tǒng)會顯示提示信息,那么這些提示信息應(yīng)該被逐個計算為一個DET。
再如,當(dāng)EI操作完成時系統(tǒng)提示并顯示出來的信息,應(yīng)該被計算為一個DET。
• 在EI操作中,如果遇到主外鍵的字段,應(yīng)該算作一個DET。
EO和EQ計算FTR的規(guī)則
1. 通用規(guī)則:
• 每個在EO/EQ處理過程中讀取的ILF和EIF算一個FTR
2. EO額外的FTR計算規(guī)則
• 在EO處理過程中每個被維護(hù)的ILF算一個FTR
• 在EO處理過程中既被讀取又被維護(hù)的ILF算一個FTR
EO和EQ計算DET的通用規(guī)則
• 用戶可識別的非重復(fù)字段,進(jìn)入系統(tǒng)邊界并指明處理什么、何時處理或處理方式,并且由EO/EQ返回或產(chǎn)生,那么這樣的每個字段算一個DET。
例如,報表中的每個字段都是一個DET。
• 在系統(tǒng)邊界內(nèi)以用戶角度識別的非重復(fù)字段算一個DET。
例如,在報表中起到解釋或備注作用的文字信息,不管是一個字、一個詞或一段話,都當(dāng)作一個DET。
再如,某種編號或日期,即使它被物理存儲在不同字段中,但從用戶角度看是一個整體的信息,因此被算作一個DET。
還有,在餅圖中百分比和分類算作不同的DET。
• 在EO或EQ操作中,如果對系統(tǒng)進(jìn)行輸入或讀取操作時,相同的字段只計算一個DET。
例如,在報表查詢時,輸入的字段在報表上也有顯示,那么將算作同一個DET。
• 在系統(tǒng)的EO或EQ操作時,系統(tǒng)提示的錯誤信息或完成操作的信息,應(yīng)該被計算為DET。
例如,用戶查詢一個列表時被拒絕,那么拒絕的提示信息就算為一個DET。
• 在EO或EQ操作中如果遇到主外鍵的字段,應(yīng)該算作一個DET。
• 在EO或EQ過程中,只要沒有通過系統(tǒng)邊界輸入,就算它存在于系統(tǒng)內(nèi)的一個ILF中,也不能算為一個DET。
例如,在公司發(fā)工資的時候,員工對應(yīng)的狀態(tài)信息被更新,但這個狀態(tài)信息的更新是沒有通過系統(tǒng)邊界輸入的,因此也不能算做一個DET。
• 頁面的標(biāo)題等類似信息不計算DET。
• 系統(tǒng)字段生成的記號不能被算作一個DET。
例如,頁碼、位置信息、時間、上一頁和下一頁等信息,都不能算作一個DET。
EI、EO、EQ的比較
EI是處理來自系統(tǒng)邊界外部的一組數(shù)據(jù)輸入,它的主要目的是維護(hù)一個或多個ILF,以及/或者更改系統(tǒng)的行為。對業(yè)務(wù)對象的增、刪、改等操作通常都是EI。
EO是輸送數(shù)據(jù)到系統(tǒng)邊界外部的過程。它的主要目的是通過邏輯處理過程向用戶呈現(xiàn)信息。該處理過程必須包含至少一個數(shù)學(xué)公式或計算方法,或生成派生數(shù)據(jù)。一個EO也可以維護(hù)一個或多個ILF,并/或改變系統(tǒng)行為。
EQ是向系統(tǒng)邊界外發(fā)送數(shù)據(jù)基本處理的過程。其主要目的是從ILF或EIF中通過恢復(fù)數(shù)據(jù)信息來向用戶呈現(xiàn)。該處理邏輯不包括任何數(shù)學(xué)公式或計算方法,也不會生成任何派生數(shù)據(jù)。EQ不會維護(hù)任何一個ILF,也不會改變應(yīng)用程序的系統(tǒng)行為。
EO和EQ的共同點是,其主要目的都是通過基本操作過程展現(xiàn)數(shù)據(jù)給用戶。EI、EO、EQ的比較見下表。

EI、EO、EQ的主要目的


EI、EO、EQ的主要行為
事務(wù)類型功能點的計算規(guī)則
事務(wù)功能又稱為交易功能,代表提供給用戶的處理數(shù)據(jù)的功能,每一個事務(wù)功能都是一個完整的基本過程,一個基本過程應(yīng)該是業(yè)務(wù)上的原子操作,并產(chǎn)生基本的業(yè)務(wù)價值,基本過程必然穿越系統(tǒng)邊界。
EI的計算規(guī)則
1. 從系統(tǒng)邊界之外收到數(shù)據(jù)。
2. 如果進(jìn)入系統(tǒng)邊界內(nèi)的數(shù)據(jù)不是一個改變系統(tǒng)行為的控制信息,那么至少一個ILF應(yīng)該被改變。
3. 對于已識別的處理過程,至少滿足下面三個條件之一:
• 該基本處理過程的邏輯與本應(yīng)用系統(tǒng)中其它基本處理過程的邏輯不同。該基本處理過程應(yīng)該具有唯一性。例如:不能存在兩個完全一模一樣的存盤操作。
• 在應(yīng)用程序邊界內(nèi),該基本處理過程所使用的這組數(shù)據(jù)應(yīng)該與其他基本處理過程所使用的數(shù)據(jù)不同。
• 在系統(tǒng)邊界內(nèi),基本處理過程所引用的ILF或EIF是不同于其它基本處理過程所引用的ILF或EIF。
EO和EQ通用計算規(guī)則
必須全部滿足以下內(nèi)容才能被視為一個EO或EQ:
1. 從外部發(fā)送數(shù)據(jù)或控制信息到系統(tǒng)邊界內(nèi)。
2. 為了識別這個過程,以下三點必須滿足一個:
• 該基本處理過程邏輯上必須是唯一的,該唯一性是指其在系統(tǒng)中與其他EO或EQ在邏輯性上保持唯一。
• 該基本處理過程所使用的數(shù)據(jù)應(yīng)該是唯一的,該唯一性是指其在系統(tǒng)中與其他EO或EQ所使用的數(shù)據(jù)不同。
• 該基本處理過程所引用的ILF或EIF文件應(yīng)該是唯一的,該唯一性是指其在系統(tǒng)中與其他EO或EQ所引用的ILF或EIF文件不同。
EO補(bǔ)充的計算規(guī)則
除了要滿足上面的通用規(guī)則外,還要滿足下面其中一條:
• 在基本操作過程中至少包含一個數(shù)學(xué)公式或計算方法
• 在基本操作過程中要產(chǎn)生派生數(shù)據(jù)
• 在基本操作過程中至少要維護(hù)一個ILF
• 在基本操作過程中要改變系統(tǒng)的行為。
EQ補(bǔ)充的計算規(guī)則
除了要滿足上面的通用規(guī)則外,還要滿足下面其中一條:
• 基本操作過程從ILF或EIF中獲取數(shù)據(jù)。
• 基本操作過程不能包含數(shù)學(xué)公式或計算方法。
• 基本操作過程不能生成派生數(shù)據(jù)
• 基本操作過程不能維護(hù)任何一個ILF
• 基本操作過程不能改變系統(tǒng)的行為
EI、EQ和EO的技術(shù)復(fù)雜性計算
復(fù)雜性取決于FIRs和DETs的數(shù)量。FTR是被一個事物讀取或維護(hù)的ILF,或者是被一個事物讀取的EIF。
EI中識別FTR規(guī)則
• 每一個ILF應(yīng)該算做一個FTR。
• 通過EI讀取的每個ILF或EIF都應(yīng)該計算為一個FTR。
• 既被EI維護(hù)又被讀取的ILF僅計算為一個FTR。
EI中識別DET規(guī)則
• 在EI的過程中,以用戶角度識別的、通過應(yīng)用系統(tǒng)邊界輸入系統(tǒng)內(nèi)部的非重復(fù)字段,應(yīng)算作一個DET。
• 在EI的過程中,只要沒有通過系統(tǒng)邊界輸入,即使它存在于系統(tǒng)內(nèi)的一個ILF中,也不能算為一個DET。
例如,外貿(mào)訂單系統(tǒng)中,訂單的金額是被單價和數(shù)量自動計算的,那么金額是沒有通過系統(tǒng)邊界輸入的,因此在EI操作中就不應(yīng)該算做一個DET。
• 在應(yīng)用程序的EI操作時,系統(tǒng)提示的錯誤信息或完成操作的信息,應(yīng)該被分別計算為一個DET。
例如,在網(wǎng)站注冊用戶信息時,由于輸入錯誤系統(tǒng)會顯示提示信息,那么這些提示信息應(yīng)該被逐個計算為一個DET。
再如,當(dāng)EI操作完成時系統(tǒng)提示并顯示出來的信息,應(yīng)該被計算為一個DET。
• 在EI操作中,如果遇到主外鍵的字段,應(yīng)該算作一個DET。
EO和EQ計算FTR的規(guī)則
1. 通用規(guī)則:
• 每個在EO/EQ處理過程中讀取的ILF和EIF算一個FTR
2. EO額外的FTR計算規(guī)則
• 在EO處理過程中每個被維護(hù)的ILF算一個FTR
• 在EO處理過程中既被讀取又被維護(hù)的ILF算一個FTR
EO和EQ計算DET的通用規(guī)則
• 用戶可識別的非重復(fù)字段,進(jìn)入系統(tǒng)邊界并指明處理什么、何時處理或處理方式,并且由EO/EQ返回或產(chǎn)生,那么這樣的每個字段算一個DET。
例如,報表中的每個字段都是一個DET。
• 在系統(tǒng)邊界內(nèi)以用戶角度識別的非重復(fù)字段算一個DET。
例如,在報表中起到解釋或備注作用的文字信息,不管是一個字、一個詞或一段話,都當(dāng)作一個DET。
再如,某種編號或日期,即使它被物理存儲在不同字段中,但從用戶角度看是一個整體的信息,因此被算作一個DET。
還有,在餅圖中百分比和分類算作不同的DET。
• 在EO或EQ操作中,如果對系統(tǒng)進(jìn)行輸入或讀取操作時,相同的字段只計算一個DET。
例如,在報表查詢時,輸入的字段在報表上也有顯示,那么將算作同一個DET。
• 在系統(tǒng)的EO或EQ操作時,系統(tǒng)提示的錯誤信息或完成操作的信息,應(yīng)該被計算為DET。
例如,用戶查詢一個列表時被拒絕,那么拒絕的提示信息就算為一個DET。
• 在EO或EQ操作中如果遇到主外鍵的字段,應(yīng)該算作一個DET。
• 在EO或EQ過程中,只要沒有通過系統(tǒng)邊界輸入,就算它存在于系統(tǒng)內(nèi)的一個ILF中,也不能算為一個DET。
例如,在公司發(fā)工資的時候,員工對應(yīng)的狀態(tài)信息被更新,但這個狀態(tài)信息的更新是沒有通過系統(tǒng)邊界輸入的,因此也不能算做一個DET。
• 頁面的標(biāo)題等類似信息不計算DET。
• 系統(tǒng)字段生成的記號不能被算作一個DET。
例如,頁碼、位置信息、時間、上一頁和下一頁等信息,都不能算作一個DET。