功能點估算CMMI-FP含例子_第1頁
功能點估算CMMI-FP含例子_第2頁
功能點估算CMMI-FP含例子_第3頁
功能點估算CMMI-FP含例子_第4頁
功能點估算CMMI-FP含例子_第5頁
已閱讀5頁,還剩16頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、功能點估算(CMMI-FP)含例子功能點估算法是軟件項目管理眾多知識中比較有技術含量的一個。在軟件項目管理中項目 計劃制定的優劣直接關系到項目的成敗,項目計劃中對項目范圍的估 算又尤為重要。如果項目負責人對項目的規模沒有一個比較客觀的認識,沒有對工作量、所需資 源、完工時間等因素進行估算,那么項目計劃也就沒有存在的 意義。功能點估算法的特點項目范圍的估算在CMM的“MA度量分析管理和“ PP項目計劃中均有涉 及。對軟件項目范圍的估算有很多種方法,常見的是LOC代碼彳T和FP功能點法。 它們之間的區別和關系如下: 功能點估算法常用在項目開始或項目需求基本明確時使用,這時進行估算其結果的準確性比較

2、高。假如這個時候使用LOC弋碼行估算法,則誤差會 比較大。 使用功能點估算法無需懂得軟件使用何種開發技術。LOC代碼行估算法則 與軟件開發技術密切相關。 功能點估算法是以用戶為角度進行估算,LOC代碼行估算法則是以技術為 角度進行估算。 通過一些行業標準或企業自身度量的分析,功能點估算法是可以轉換為 LOC代碼行的。在項目剛開始的時候進行功能點估算可以對項目的范圍進行預測。在項目開發的過程中由于需求的變更和細化可能會導致項目范圍的蔓延,計算出來的結果會與當初 估計的不同。因此,在項目結束時還需要對項目的范圍情況重新進行 估算,這個時候估算的結果才能最準確反映項目的規模。功能點分析的步驟本文將以

3、國際標準 IFPUG(International Function Point Users Group ) 組織提供的功能點估算法 V4.1.1為基礎進行講解。如下圖所示,首先大家應該 了解功能點估算法的使用步驟。21確定功能點的頰識別項 一落睥目的辿界人機交互功能點分析數據類型功能點分析f未調整的調蛔子調整后的功能點數量圖1功能點估算法的步驟具體步驟包括:1. 識別功能點的類型。2. 識別待估算應用程序的邊界和范圍。3. 計算數據類型功能點所提供的未調整的功能點數量。4. 計算人機交互功能所提供的未調整的功能點數量。5. 確定調整因子。6. 計算調整后的功能點數量。識別項目的類型國際IFPU

4、G組織將軟件項目分為三類,功能點估算法適用于任何一類項目: 新開發項目 二次開發的項目 功能增強的項目識別項目的范圍和邊界使用UMLB “UseCas3用例圖是以用戶角度進行識別項目范圍和邊界的最好方法,在畫用例圖時就必須明確系統的邊界。 通過系統的邊界,我們可以知道 哪些功能要計算功能點,哪些功能點是外部系統負責計算的。 以圖2為例:一個 外貿訂單系統只包含錄入、修改、刪除、查詢和統計訂單的功能,而匯率查詢轉 換服務是不屬于該系統的。應用程序邊界的識別規則大家一定要牢記, 不能從技術角度去思考,必須從 用戶角度來定義;如果項目牽扯到多個系統,那么必須將這多個系統的邊界全部 描述清楚。圖2外貿

5、訂單系統用例圖功能點估算分類功能點估算法將功能點分為以下 5類:1. ILF : Internal Logical File 內部邏輯文件2. EIF: External Interface File外部接 口文件3. EI: External Input 外部輸入4. EO: External Output外部輸出5. EQ: External Inquiry 外部查詢其中,ILF和EIF屬于數據類型的功能點,EI、EO EQ屬于人機交互事務類 型的功能點。以外貿訂單系統項目為例: 錄入訂單、修改訂單、刪除訂單是 EI ; 查詢訂單是EO 統計訂單是EQ 匯率查詢轉換系統為EIF 訂單和客戶

6、是ILF識別功能點的重要原則ILF 、EIF要與EI、EO EQ開計算。對ILF和EIF復雜度的計算可以簡單 理解為對數據庫復雜度的計算。對EI、EO EQ復雜度的計算可以理 解為對程序 開發復雜度的計算。一般軟件項目都是由數據和程序構成的,因此計算ILF、EIF和計算EI、EO EQ之間沒有任何關系。內部邏輯文件與外部接口文件ILF內部邏輯文件內部邏輯文件是指一組以用戶角度識別的、 在應用程序邊界內且被維護的邏 輯相關數據或控制信息。ILF的主要目的是通過應用程序的一個或多個基本處理 過程來維護數據。EIF外部接口文件外部接口文件是指一組在應用程序邊界內被查詢,但在其他應用程序中被維 護的、

7、以用戶角度來識別的、邏輯上相關的數據。因此,一個應用程序中的EIF必然是 其他應用程序中的ILFoEIF的主要目的是為邊界內的應用程序提供一個 或多個通過基礎操作過程來引用的一組數據或信息。EIF 所遵循的規則: 從用戶角度出發識別的一組邏輯數據。 這組數據是在應用程序外部,并被應用程序引用的。 計算功能點的這個應用程序并不維護該 EIF。 這組數據是作為另一個應用程序中的ILF被維護的ILF和EIF的復雜性計算ILF 和 EIF 的復雜性是取決于 RET (Record element type )和 DET (Data element type)的數量。DET是一個以用戶角度識別的、非重復

8、的、有業務邏輯 意義的字段。DET計算的規則如下: 通過一個基本處理過程的執行,對ILF進行維護,或從ILF/EIF中返回一 個特定的、用戶可識別的、非重復的字段,那么每個這樣的字段算一個 DET例如:添加一個外貿訂單時需要保存“訂單號碼、 訂單日期、地址、郵編”, 那么對于ILF訂單來說它的DETM是4個。再如:保存訂單時還會保存訂單的明細。訂單的明細往往作為一個子表進行 保存,那么“訂單號碼”在主表和子表中都同時存在(主外鍵)。但以用戶角度 來識別時,存盤操作是一個最小的單位,那么訂單號碼只能算做一個DET 當兩個應用程序維護和/或引用相同的ILF/EIF,但是每個應用程序分別 維護/引用

9、它們相應的DET時,這些DET在這兩個應用程序的維護/引用中 將單獨計算。例如,一個應用程序的兩個“ Elementary Process”基本處理過程都需要使 用到“地址”的信息,地址信息又可以細分為“國家、城市、街道、郵編”。那 么對于其中一個基本處理過程來說,它將整 個地址信息作為一個整體進行處理, 只算一個DET另外一個基本處理過程使用每個地址的詳細信息,那么DETM是4個。RET計算的規則如下:RET是指一個EIF/ILF中用戶可以識別的DET勺集合。如果把DET簡單理解 為字段的話,那RETM可以簡單理解為數據庫中的表。 RET& ILF/EIF中分為 兩種類型:可選的(O

10、ptional )和必選的(Mandatory)。計算RET的規則為以 下兩點:在一個ILF/EIF中每一個可選或必選的集合都被計算為一個RET如果一個ILF/EIF沒有子集合,則ILF/EIF被計算為一個RET例如:在外貿訂單系統中添加一個訂單時會保存“訂單信息、客戶的 ID、 部門的ID”。那么訂單系統ILF中的RET為:1. 訂單信息(必選的)2. 客戶信息(必選的)3. 部門信息(可選的)因此ILF中RET的個數為3個。ILF/EIF復雜度的矩陣如下:11119 個 DET2050 個 DET超過51個DET1 個 RET,氐低中等25 個 RETh1中等高6個以上RET中等高高軟件項

11、目管理中的功能點估算法將功能點分為5類:ILF (Internal LogicalFile ,內部邏輯文件)、EIF (External Interface File ,外部接口文件)、EI (External Input,外部輸入) EO External Output,外部輸出)和 EQ ExternalInquiry ,外部查詢)。其中,ILF和EIF屬于數據類型的功能點,EI、EO EQ 屬于事務類型的功能點。EI、EO EQ的比較EI是處理來自應用程序邊界外部的一組數據輸入,它的主要目的是維護一 個或多個ILF,以及/或者更改系統的行為。EO是輸送數據到應用程序邊界外部的過程。它的主

12、要目的是通過邏輯處理 過程向用戶呈現信息。該處理過程必須包含至少一個數學公式或計算方法,或生 成派生數據。一個EO也可以維護一個或多個ILF,并/或改變系統行為。EQ是向應用程序邊界外發送數據基本處理的過程。其主要目的是從ILF或EIF中通過恢復數據信息來向用戶呈現。 該處理邏輯不包括任何數學公式 或計算 方法,也不會生成任何派生數據。EQ會維護任何一個ILF,也不會改變應用程 序的系統行為。EO和EQ的共同點是,其主要目的都是通過基本操作過程展現數據給用戶 EI、EO EQ的比較見下表。表1 EI、EO EQ的主要目的目的EIEOEQ改變應用程序的屬性或行為主要目的次要目的不允許維護一個或多

13、個ILF主要目的 J次要目的不允許顯示信息給用戶次要目的主要目的 J主要目的 J表2 EI、EO EQ的主要行為EIEOEQ數學公式或計算被執行可以至少選擇一次/、口以至少一個ILF被修改至少選擇一次至少選擇一次/、口以至少一個ILF或EIF被引用可選可選必選數據被重新恢復可選可選必選派生數據被創建可選至少選擇一次可選應用程序的行為或屬性被修改至少選擇一次至少選擇一次可選準備或呈現信息到系統邊界外可選必選必選接受進入系統邊界內的數據的能力必須可選可選事務類型功能點的計算規則在IFPUG的定義中有一個重要的單詞“ Elementary Process-基本處理過程。該過程對用戶來說是一個有意義的

14、、 最小的活動單位,并且是一個自包含 的活動。功能點的分類,EI、EO EQ的識別都 是基于“Elementary Process” 基本處理過程的。EI的計算規則1. 從應用邊界之外收到數據。2. 如果進入系統邊界內的數據不是一個改變系統行為的控制信息,那么至少一個ILF應該被改變。3. 對于已識別的處理過程,至少滿足下面三個條件之一。 該基本處理過程的邏輯與本應用系統中其它基本處理過程的邏輯不同。該基本處理過程應該具有唯一性。例如:不能存在兩個完全一模一樣的存盤 操作。 在應用程序邊界內,該基本處理過程所使用的這組數據應該與其他基本處 理過程所使用的數據不同。 在應用程序邊界內,基本處理過

15、程所引用的ILF或EIF是不同于其它基本 處理過程所引用的ILF或EIF。EO和EQ通用計算規則必須全部滿足以下內容才能被視為一個 EO或EQ1. 從外部發送數據或控制信息到應用程序邊界內。2. 為了識別這個過程,以下三點必須滿足一個: 該基本處理過程邏輯上必須是唯一的,該唯一性是指其在應用程序中與其 他EO或EQ在邏輯性上保持唯一。 該基本處理過程所使用的數據應該是唯一的, 該唯一性是指其在應用程序 中與其他EO或EQ所使用的數據不同。 該基本處理過程所引用的ILF或EIF文件應該是唯一的,該唯一性是指其 在應用程序中與其他EO或EQ所引用的ILF或EIF文件不同。EO#充的計算規則除了要滿

16、足上面的通用規則外,還要滿足下面其中一條: 在基本操作過程中至少包含一個數學公式或計算方法 在基本操作過程中要產生派生數據 在基本操作過程中至少要維護一個ILF 在基本操作過程中要改變系統的行為。EQ補充的計算規則除了要滿足上面的通用規則外,還要滿足下面其中一條: 基本操作過程從ILF或EIF中獲取數據。 基本操作過程不能包含數學公式或計算方法。 基本操作過程不能生成派生數據 基本操作過程不能維護任何一個ILF 基本操作過程不能改變系統的行為EI、EQ和EO的技術復雜性計算復雜性取決于FIRs和DETs的數量。FTR是被一個事物讀取或維護的ILF , 或者是被一個事物讀取的EIF。EI中識別F

17、TR規則 每一個ILF應該算做一個FTR 通過EI讀取的每個ILF或EIF都應該計算為一個FTR 既被EI維護又被讀取的ILF僅計算為一個FTREI中識另1J DET規貝U 在EI的過程中,以用戶角度識別的、通過應用系統邊界輸入系統內部的 非重復字段,應算作一個DET 在EI的過程中,只要沒有通過系統邊界輸入,即使它存在于系統內的一 個ILF中,也不能算為一個DET例如,外貿訂單系統中,訂單的金額是被單價和數量自動計算的,那么金額是沒有通過系統邊界輸入的,因此在 EI操作中就不應該算做一個 DET 在應用程序的EI操作時,系統提示的錯誤信息或完成操作的信息,應該 被分別計算為一個DET例如,在

18、網站注冊用戶信息時,由于輸入錯誤系統會顯示提示信息, 那么這 些提示信息應該被逐個計算為一個 DET冉如,當EI操作完成時系統提示并顯示出來的信息,應該被計算為一個DET 在EI操作中,如果遇到主外鍵的字段,應該算作一個 DETEO和EQ計算FTR的規則1. 通用規則:每個在EO/EQ處理過程中讀取的ILF和EIF算一個FTR2. EO 額外的FTR計算規則 在EO處理過程中每個被維護的ILF算一個FTR 在EO處理過程中既被讀取又被維護的ILF算一個FTREO和EQ計算DET的通用規則 用戶可識別的非重復字段,進入應用邊界并指明處理什么、何時處理或處 理方式,并且由EO/EQ返回或產生,那么

19、這樣的每個字段算一個 DET例如,報表中的每個字段都是一個 DET 在應用邊界內以用戶角度識別的非重復字段算一個DET例如,在報表中起到解釋或備注作用的文字信息,不管是一個字、一個詞或一段話,都當作一個DET再如,某種編號或日期,即使它被物理存儲在不同字段中, 但從用戶角度看 是一個整體的信息,因此被算作一個 DET還有,在餅圖中百分比和分類算作不同的 DET 在EO或EQ操作中,如果對系統進行輸入或讀取操作時,相同的字段只計 算一個DET例如,在報表查詢時,輸入的字段在報表上也有顯示,那么將算作同一個 DET 在應用程序的EO或EQ操作時,系統提示的錯誤信息或完成操作的信息, 應該被計算為D

20、ET例如,用戶查詢一個列表時被拒絕,那么拒絕的提示信息就算為一個DET 在EO或EQ操作中如果遇到主外鍵的字段,應該算作一個 DET 在EO或EQ過程中,只要沒有通過系統邊界輸入,就算它存在于系統內的 一個ILF中,也不能算為一個 DET例如,在公司發工資的時候,員工對應的狀態信息被更新,但這個狀態信息 的更新是沒有通過系統邊界輸入的,因此也不能算做一個DET 頁面的標題等類似信息不計算DET 系統字段生成的記號不能被算作一個 DET例如,頁碼、位置信息、時間、上一頁和下一頁等信息,都不能算作一個DETEI復雜度計算矩陣14 個 DET515 個 DET多于16個DET01 個 FTR低低中等

21、2 個 FTR低中等高大于2個FRT 中等高高EO和EQM雜度計算矩陣15 個 DET619 個 DET多于20個DET01 個 FTR低低中等23 個 FTR低中等高"1多于4個FTR中等高高未調整前功能點對應矩陣EI、EO EQ ILF和EIF技術復雜度對應的功能點如下表所示:低高EI3146EO457EQ346ILF 71015EIF5710用功能點估算法計算軟件項目功能點時會用到調整因子 (或稱調整系數)。功能 點的調整系數是通過通用系統特性及其影響程度來評定的,對每個常規系統特性 的評估由其影響程度(DI)而定,分為0 5級:0毫無影響1 偶然影響2 適度影響3 一般影響4

22、 重要影響5 強烈影響然后依次對以下14個系統常規特性進行打分,并帶入以下計算公式算出功 能點的調整因子。Value Adjustment Factor=( sum of (DI) * 0.01 ) + 0.65計算調整因子1 .數據通訊數據通訊指的是應用程序直接與處理器通訊的程度。通常我們都是通過某種通訊手段來實現在一個應用中所使用的數據或者控制信息。連接到本地控制器上的終端被認為是通訊設施,協議則指兩個系統或設備之間進行通訊時使用的一種 約定。所有的數據通訊鏈接都需要某種協議。0應用程序是單純的批處理或者PC stand-alone1應用程序是一種批處理過程,但是包含遠程數據的錄入或遠程打

23、印2應用程序是一種批處理過程,但是包含遠程數據的錄入和遠程打印3應用程序包括在線數據收集或者包括批處理或查詢系統的遠程處 理的前端應用4應用程序不單只是前端應用,但是僅支種遠程處理通訊協議5應用程序不單只是前端應用,還支持多于一種的遠程處理通訊協議2 .分布式數據處理分布式數據處理是應用在內部組件之間傳遞信息的程度。這個特性是在應用邊界內體現的。0應用程序不支持組件之間的數據傳輸和處理功能1應用程序為用戶可能進行的處理準備數據(例如使用電子表格或者 數據庫等)2應用程序所準備的數據是為了在系統另外一個組件上傳輸和處理, 并非為終端用戶所處理。3分布式處理和數據傳輸是在線的,并且是單向的4分布式

24、處理和數據傳輸是在線的,并且是雙向的5由系統中最恰當的組件動態地執行處理功能3 .性能性能是吞吐量、處理時間等指標對開發的影響。用戶所提出的性能要求將直 接影響到系統的設計、實施、安裝和支持。0用戶沒有提出性能方面的要求1用戶提出了性能和設計方向的要求,但/、需要采取特定措施響應時間和吞吐量在系統峰值時是關鍵的,但是不需要采取相應的 CPUS用方面的特殊設計。處理的最后期限是在下一個工作日。在任何時候響應時間和吞吐量都是關鍵的,但是不需要采取相應的 CPUS用方面的特殊設計。處理的完成期限比較嚴格。除了上面一項的要求外,由于對需求的要求比較嚴格,在設計階段 就要進行性能分析。除了上面一項的要求

25、之外,在設計和實施階段需要使用性能分析工 具來判斷性能要求的完成情況。4 .大業務量配置大業務量配置是指計算機資源對應用開發的影響程度。大業務量的運行配置對設計有特殊要求,是必須考慮的一個系統特性。0 J沒有提出明確的運行方面的限制1有運行方向的限制,但是/、需要采取特別的措施以滿足運行限制 J2提出了 一些安全和時間方面的限制3應用程序的某些部分對處理器有特定的要求4提出的運行限制對應用的中央處理器或者專用處理器有特殊的要求5 除上面一項之外,還對應用的分布式組件提出了限制5 .事務處理率事務處理率是業務交易處理速度對系統的設計、實施、安裝和支持等的影響。0預計不會出現周期性的高峰事務處理期

26、1預計會有周期性的高峰事務處理期(例如:每月、每季、每年)2預計每周都會出現高峰事務處理期3預計每天都會出現高峰事務處理期4用戶在應用程序需求或者服務級別協議中對事務率要求很高, 必須在設計階段進行性能分析。因此5用戶在應用程序需求或者服務級別協議中對事務率要求很高,因此必須進行性能分析并在設計、開發和安裝階段中使用到性能分析工目口。6 .在線數據輸入在線數據輸入是指數據通過交互的方式輸入系統的程度。系統中包括在線數 據輸入和控制信息功能。0忻后事務都是批處理的11%7%J事務是以交互式的方式進行數據錄入28%15%J事務是以交互式的方式進行數據錄入316%23%J事務是以交互式的方式進行數據

27、錄入424%30%J事務是以交互式的方式進行數據錄入530%Z上的事務是以交互式的方式進行數據錄入7 .最終用戶效率最終用戶效率是指對應用的人文因素及使用的便捷程度等的考慮程度。如下功能設計是針對最終用戶效率的: 頁面導航 菜單 在線幫助或文檔 光標自動跳轉 可以滾動 在線遠程打印 預定義的功能鍵 在線做批量提交任務 光標可以選取界面上的數據 用戶使用大量反白顯示、重點顯示、下劃線或其他的標識 在線copy用戶文檔 鼠標拖動功能 彈出窗體 使用最少的界面完成某種商業功能 雙語言支持(如果選擇了這個就算 4項) 語言支持(如果選擇了這個就算 6項)0以上的一個都不包括1包括以上的13個2包括以上

28、的45個3包括以上的6個或以上,但是沒有用戶對于效率的要求4包括以上的6個或以上,對用戶使用效率后較圖要求,因而必須考 慮用戶方面的設計(例如,最少擊鍵次數、盡可能提供默認值、模 版的使用)5包括以上的6個或以上,用戶對效率的要求使得開發人員必須使用 特定的工具和流程以判定用戶對效率的要求已經被達成8 .在線更新在線更新是指內部邏輯文件ILF被在線更新的程度。應用系統提供在線更新 內部邏輯文件的功能。0沒有在線更新1包含13個控制文件的在線更新。更新的流量低,恢復容易。2包含對4個以上控制文件的在線更新。更新的流量低,恢復容易。3包含對主要ILF的更新。4除了 3之外,在設計和實施中要考慮對數

29、據丟失的防范。5除了 4之外,大量的數據恢復工作要考慮成本因素,同時包含了 高度自動化的恢復流程。9 .復雜處理復雜處理描述了邏輯處理對應用開發的影響程度。它包含以下要素: 敏感控制(例如特殊的審核過程)和/或程序特定的安全處理 大量的邏輯處理 大量的數學處理 因為例外處理造成的需要重新處理的情況(例如,由 TP中斷、數據值缺 少和驗證失敗導致的ATM事務) 多種可能的輸入/輸出造成的復雜處理0上面一個都不滿足1只滿足一個2只滿足兩個3滿足三個|4滿足四個5都滿足10 .可復用性應用系統中的應用和代碼經過特殊設計、 開發和支持,可以在其他應用系統 中復用。0沒有可復用的代碼1代碼在應用之內復用

30、2應用中被其他用戶復用的部分不足 10%3應用中被不止一個用戶使用的部分超過 10%4應用遵從一種易于復用的方式被打包和文檔化。戶化該應用。用戶在源代碼級客5應用按照一種易于復用的方式被打包和文檔化。 來對該應用進行客戶化。用戶使用用戶參數11 .易安裝性易安裝性指應用系統的轉換和安裝容易度對開發的影響程度。系統測試階段提供了轉換和安裝計劃/轉換工具。0用戶對安裝沒有特定的要求1用戶對安裝沒有特定的要求,但有特定的安裝環境要求J2用戶提出了安裝和轉化的要求,轉化/安裝指南被經過測試提供給 用戶。但是轉化的影響對該應用/、重要。3用戶提出了安裝和轉化的要求,轉化/安裝指南被經過測試提供給 用戶。

31、轉化的影響對該應用來說是重要的。4除了 2的要求之外,需要提供經過測試的自動化的安裝和轉化工 具。5除了 3的要求之外,需要提供經過測試的自動化的安裝和轉化工 具。12 .易操作性易操作性指的是應用對運行的影響程度, 如有效啟動、備份和恢復規程的影 響。易操作性是應用提供的一種特性,它最小化了手工操作的要求。0用戶沒有指定除正常備份程序外的其它特定操作1提供高效的啟動、備份和恢復進程,但需要人手操作2提供高效的啟動、備份和恢復進程,不需要人手操作(當作兩項計 算)3應用程序對磁帶的需求最小化4應用程序對硬拷貝處理的需求最小化5程序設計成無人操作模式。無人操作模式的意思是除了啟動和關閉 之外,/

32、、需要對系統進行操作。程序的其中一個功能就是錯誤自動 恢復。13 .多場地多場地指應用系統經特殊設計、開發可以在多個組織、多個地點應用的程度0用戶需求不含多場地和組織的要求1考慮了多場地的要求,但是設計要求應用在不同的場地使用相同的 軟硬件環境2考慮了多場地的要求,但是設計要求應用在不同的場地使用類似的 軟硬件環境3考慮了多場地的要求,同時設計支持應用在不同的場地使用不同的 軟硬件環境4在1或者2的要求之上,提供了經過測試的多場地的文檔和支持 計劃5在3的要求之上,提供了經過測試的多場地的文檔和支持計劃14 .支持變更支持變更是指應用在設計上考慮支持處理邏輯和數據結構變化的程度。可以具有如下的

33、特性: 提供可以處理簡單要求的彈性查詢和報告功能,如對一個ILF進行與(或) 邏輯 提供可以處理一般復雜度要求的彈性查詢和報告功能,如對多于一個的ILF進行與(或)邏輯(當作兩項計算) 提供可以處理復雜要求的彈性查詢和報告功能,如對一個或多個ILF進行 與(或)邏輯的組合(當作三項計算) 業務控制數據被保存到用戶通過在線交互進程維護的表中,但變更只會在 第二個工作日生效 業務控制數據被保存到用戶通過在線交互進程維護的表中,且變更即時生效0一個都不滿足1合計滿足一個2合計滿足二個3合計滿足三個14合計滿足四個5 _合計滿足五個計算調整后的功能點個數國際IFPUG組織將軟件項目分為三類,功能點估算

34、法適用于任何一類項目, 其計算公式中的術語請詳見表1。功能點的原始計算公式:FP Count =UFP * VAF新開發項目有時新開發的軟件項目也需要與其他現存的軟件系統進行整合。 例如:一個 企業新開發的MIS內部管理系統經常會與財務系統進行整合。這時除了考慮本身 項目的功能點個數外,還要考慮系統整合或數據遷移部分的工作量。 因此,其功 能點計算公式如下:FP Count =(UFP+CFP * VAF 二次開發的項目有時新開發的軟件項目是在原有基礎上進行二次開發的,只是為了增加一些新功能。因此,其功能點計算公式如下:FP Count = ADD * VAF 功能增強的項目功能增強項目的功能

35、點估算比較復雜。在計算功能點前大家需要計 算有哪些是新增加的功能,哪些是被修改的功能,哪些是屬于數據遷移 或系統整合的功能。然后計 算新系統技術復雜度的調整因子“ VAFA , 并在此基礎上計算系統功能點的數量。 當然,此類項目也會去掉一些原有 功能,那么在原有系統的技術復雜度基礎上重新計算功能點的調整因子“VAFB ,再計算所去掉功能貢獻的功能點數量。 因此,其功能點計算公 式如下:FP Count = (ADD+CHGA+CFPVAFA+ ( DEL * VAFB)表1功能點技術公式術語術語英文中文笆義ADDAdded functionality被添加的功能點個數CFPConversion

36、 functionality被轉換的功能點個數JCHG)UFP of changed functionality after enhancement功能增強后所改動的功能所貢獻的未調 整的功能點個數DELDeleted functionality被刪除的功能點個數UFPUnadjusted functional point count未調整的功能點個數VAFValue adjustment factorVAF=(sum of (DI) * 0.01 ) + 0.65功能點的調整因子的計算公式VAF= (sum of (DI) * 0.01 ) + 0.65VAFAValue adjustmen

37、t factor after enhancement功能增強后的功能點調整因子VAFBValue adjustment factor before enhancement功能增強前的功能點調整因子以員工管理系統為例,詳細說明如何利用功能點估算法計算業務復雜度。在員工管理系統中添加一個員工資料,會使用到員工的一般信息、教育情況、 工作經歷和家屬信息。員工隸屬于某個部門,在本系統中會有一個對部門進行維 護的功能。員工的工資則由另外一個財務系統提供。因此,其用例圖如下所示:員工管理系統員工年金)圖1員工管理系統用例圖假設員工基本信息如下所示:員工ID (標簽控件)財務系統 員工名稱 性別 生日 婚否 所屬部門ID (標簽控件) 所屬部門名稱 受教育的時間 學校名稱 所學專業 工作時間 工作單位 工作部| 1 工作職務 親屬的姓名 之間關系,親屬年齡 工作單位假設部門信息如下所示: 部門ID (標簽控件) 部門名稱假設工資表信息如下所示: 員工ID (標簽控件) 員工姓名 金額 單位ILF和EIF的功能點數本范例識別出來ILF和EIF功能點個數如下表所示ILF內部邏輯 文件RETDETt 數f雜度|未調整的FP 個數員工信息員工基本信息、受教育情況、工作經歷、親 屬

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論