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