




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、實用的軟件系統(tǒng)開發(fā)成本估算法軟件系統(tǒng)開發(fā)成本估算法功能點估算含例子 32 目錄一、 功能點估算法概念1二、 功能點估算法的特點1三、 功能點分析的步驟(含例子)23.1 識別項目的類型23.2 識別項目的范圍和邊界33.3 按不同功能點計算33.3.1功能點估算分類33.3.2識別功能點的重要原則43.3.3內(nèi)部邏輯文件與外部接口文件43.3.4事務類型功能點的計算規(guī)則93.3.5計算調(diào)整因子143.3.6計算調(diào)整后的功能點個數(shù)253.4 總結(jié)33一、 功能點估算法概念功能點估算法是軟件項目管理眾多方法中比較有技術(shù)含量的一個,也是最實用的一個。在軟件項目管理中項目計劃制定的優(yōu)劣、合理直接關(guān)系到
2、項目的成敗,項目計劃中對項目范圍的估算又尤為重要。如果項目負責人對項目的規(guī)模沒有一個比較客觀的認識,沒有對工作量、所需資 源、完工時間等因素進行估算,那么項目計劃也就沒有存在的意義。二、 功能點估算法的特點項目范圍的估算在CMMI的“MA”度量分析管理和“PP”項目計劃中均有涉及。對軟件項目范圍的估算有很多種方法,常見的是LOC代碼行和FP功能點法。它們之間的區(qū)別和關(guān)系如下:· 功能點估算法常用在項目開始或項目需求基本明確時使用,這時進行估算其結(jié)果的準確性比較高。假如這個時候使用LOC代碼行估算法,則誤差會比較大。· 使用功能點估算法無需懂得軟件使用何種開發(fā)技術(shù)。LOC代碼
3、行估算法則與軟件開發(fā)技術(shù)密切相關(guān)。· 功能點估算法是以用戶為角度進行估算,LOC代碼行估算法則是以技術(shù)為角度進行估算。· 通過一些行業(yè)標準或企業(yè)自身度量的分析,功能點估算法是可以轉(zhuǎn)換為LOC代碼行的。 在項目剛開始的時候進行功能點估算可以對項目的范圍進行預測。在項目開發(fā)的過程中由于需求的變更和細化可能會導致項目范圍的蔓延,計算出來的結(jié)果會與當初 估計的不同。因此,在項目結(jié)束時還需要對項目的范圍情況重新進行估算,這個時候估算的結(jié)果才能最準確反映項目的規(guī)模。三、 功能點分析的步驟(含例子)本文將以國際標準IFPUG(International Function Poi
4、nt Users Group)組織提供的功能點估算法V4.1.1為基礎(chǔ)進行講解。如下圖所示,首先大家應該了解功能點估算法的使用步驟。圖1 功能點估算法的步驟 具體步驟包括: 1. 識別功能點的類型。 2. 識別待估算應用程序的邊界和范圍。 3. 計算數(shù)據(jù)類型功能點所提供的未調(diào)整的功能點數(shù)量。 4. 計算人機交互功能所提供的未調(diào)整的功能點數(shù)量。 5. 確定調(diào)整因子。
5、60; 6. 計算調(diào)整后的功能點數(shù)量。3.1 識別項目的類型 國際IFPUG組織將軟件項目分為三類,功能點估算法適用于任何一類項目:· 新開發(fā)項目· 二次開發(fā)的項目· 功能增強的項目3.2 識別項目的范圍和邊界 使用UML的“UseCase”用例圖是以用戶角度進行識別項目范圍和邊界的最好方法,在畫用例圖時就必須明確系統(tǒng)的邊界。通過系統(tǒng)的邊界,我們可以知道 哪些功能要計算功能點,哪些功能點是外部系統(tǒng)負責計算的。以圖2為例:一個外貿(mào)訂單系統(tǒng)只包含錄入、修改、刪除、查詢和統(tǒng)計訂單的功能,而匯率查詢轉(zhuǎn)換服 務是不屬于該系統(tǒng)的。 &
6、#160;應用程序邊界的識別規(guī)則大家一定要牢記,不能從技術(shù)角度去思考,必須從用戶角度來定義;如果項目牽扯到多個系統(tǒng),那么必須將這多個系統(tǒng)的邊界全部描述清楚。圖2 外貿(mào)訂單系統(tǒng)用例圖3.3 按不同功能點計算3.3.1 功能點估算分類 功能點估算法將功能點分為以下5類: 1. ILF:Internal Logical File內(nèi)部邏輯文件 2. EIF: External Interface File外部接口文件 3. EI: External Input外部輸入
7、60; 4. EO: External Output外部輸出 5. EQ: External Inquiry外部查詢 其中,ILF和EIF屬于數(shù)據(jù)類型的功能點,EI、EO、EQ屬于人機交互事務類型的功能點。 以外貿(mào)訂單系統(tǒng)項目為例:· 錄入訂單、修改訂單、刪除訂單是EI;· 查詢訂單是EO· 統(tǒng)計訂單是EQ· 匯率查詢轉(zhuǎn)換系統(tǒng)為EIF· 訂單和客戶是ILF3.3.2 識別功能點的重要原則ILF、EIF要與EI、EO、EQ分開計算。對ILF和EIF復雜度
8、的計算可以簡單理解為對數(shù)據(jù)庫復雜度的計算。對EI、EO、EQ復雜度的計算可以理 解為對程序開發(fā)復雜度的計算。一般軟件項目都是由數(shù)據(jù)和程序構(gòu)成的,因此計算ILF、EIF和計算EI、EO、EQ之間沒有任何關(guān)系。3.3.3 內(nèi)部邏輯文件與外部接口文件ILF內(nèi)部邏輯文件 內(nèi)部邏輯文件是指一組以用戶角度識別的、在應用程序邊界內(nèi)且被維護的邏輯相關(guān)數(shù)據(jù)或控制信息。ILF的主要目的是通過應用程序的一個或多個基本處理過程來維護數(shù)據(jù)。 EIF外部接口文件 外部接口文件是指一組在應用程序邊界內(nèi)被查詢,但在其他應用程序中被維護的、以用戶角度來識別的、邏輯上相關(guān)的數(shù)
9、據(jù)。因此,一個應用程序中的EIF必然是 其他應用程序中的ILF。EIF的主要目的是為邊界內(nèi)的應用程序提供一個或多個通過基礎(chǔ)操作過程來引用的一組數(shù)據(jù)或信息。 EIF所遵循的規(guī)則:· 從用戶角度出發(fā)識別的一組邏輯數(shù)據(jù)。· 這組數(shù)據(jù)是在應用程序外部,并被應用程序引用的。· 計算功能點的這個應用程序并不維護該EIF。· 這組數(shù)據(jù)是作為另一個應用程序中的ILF被維護的。ILF和EIF的復雜性計算 ILF和EIF的復雜性是取決于RET(Record element type)和DET(Data
10、element type)的數(shù)量。DET是一個以用戶角度識別的、非重復的、有業(yè)務邏輯意義的字段。 DET計算的規(guī)則如下:· 通過一個基本處理過程的執(zhí)行,對ILF進行維護,或從ILF/EIF中返回一個特定的、用戶可識別的、非重復的字段,那么每個這樣的字段算一個DET。 例如:添加一個外貿(mào)訂單時需要保存“訂單號碼、訂單日期、地址、郵編”,那么對于ILF訂單來說它的DET就是4個。 再如:保存訂單時還會保存訂單的明細。訂單的明細往往作為一個子表進行保存,那么“訂單號碼”在主表和子表中
11、都同時存在(主外鍵)。但以用戶角度來識別時,存盤操作是一個最小的單位,那么訂單號碼只能算做一個DET。· 當兩個應用程序維護和/或引用相同的ILF/EIF,但是每個應用程序分別維護/引用它們相應的DET時,這些DET在這兩個應用程序的維護/引用中將單獨計算。 例如,一個應用程序的兩個“Elementary Process”基本處理過程都需要使用到“地址”的信息,地址信息又可以細分為“國家、城市、街道、郵編”。那么對于其中一個基本處理過程來說,它將整 個地址信息作為一個整體進行處理,只算一個DET;另外一個基本處理過程使用每個地址的詳細信息,那么DE
12、T就是4個。 RET計算的規(guī)則如下: RET是指一個EIF/ILF中用戶可以識別的DET的集合。如果把DET簡單理解為字段的話,那RET就可以簡單理解為數(shù)據(jù)庫中的表。RET在ILF /EIF中分為兩種類型:可選的(Optional)和必選的(Mandatory)。計算RET的規(guī)則為以下兩點:· 在一個ILF/EIF中每一個可選或必選的集合都被計算為一個RET。· 如果一個ILF/EIF沒有子集合,則ILF/EIF被計算為一個RET。 例如:在外貿(mào)訂單系統(tǒng)中添加一個訂單
13、時會保存“訂單信息、客戶的ID、部門的ID”。那么訂單系統(tǒng)ILF中的RET為: 1. 訂單信息(必選的) 2. 客戶信息(必選的) 3. 部門信息(可選的) 因此ILF中RET的個數(shù)為3個。 ILF/EIF復雜度的矩陣如下: 119個DET2050個DET超過51個DET1個RET低低中等25個RET低中等高6個以上RET中等高高軟件項目管理中的功能點估算法將功能點分為5類:ILF(Internal Log
14、ical File,內(nèi)部邏輯文件)、EIF(External Interface File,外部接口文件)、EI(External Input,外部輸入)、EO(External Output,外部輸出)和EQ(External Inquiry,外部查詢)。其中,ILF和EIF屬于數(shù)據(jù)類型的功能點,EI、EO、EQ屬于事務類型的功能點。EI、EO、EQ的比較 EI是處理來自應用程序邊界外部的一組數(shù)據(jù)輸入,它的主要目的是維護一個或多個ILF,以及/或者更改系統(tǒng)的行為。 EO是輸送數(shù)據(jù)到應用程序邊界外部的過程。它的主要目的是通
15、過邏輯處理過程向用戶呈現(xiàn)信息。該處理過程必須包含至少一個數(shù)學公式或計算方法,或生成派生數(shù)據(jù)。一個EO也可以維護一個或多個ILF,并/或改變系統(tǒng)行為。 EQ是向應用程序邊界外發(fā)送數(shù)據(jù)基本處理的過程。其主要目的是從ILF或EIF中通過恢復數(shù)據(jù)信息來向用戶呈現(xiàn)。該處理邏輯不包括任何數(shù)學公式或計算方法,也不會生成任何派生數(shù)據(jù)。EQ不會維護任何一個ILF,也不會改變應用程序的系統(tǒng)行為。 EO和EQ的共同點是,其主要目的都是通過基本操作過程展現(xiàn)數(shù)據(jù)給用戶。EI、EO、EQ的比較見下表。表1 EI、EO、EQ的主要目的目的EIEOEQ改
16、變應用程序的屬性或行為主要目的次要目的不允許維護一個或多個ILF主要目的次要目的不允許顯示信息給用戶次要目的主要目的主要目的表2 EI、EO、EQ的主要行為行為EIEOEQ數(shù)學公式或計算被執(zhí)行可以至少選擇一次不可以至少一個ILF被修改至少選擇一次至少選擇一次不可以至少一個ILF或EIF被引用可選可選必選數(shù)據(jù)被重新恢復可選可選必選派生數(shù)據(jù)被創(chuàng)建可選至少選擇一次可選應用程序的行為或?qū)傩员恍薷闹辽龠x擇一次至少選擇一次可選準備或呈現(xiàn)信息到系統(tǒng)邊界外可選必選必選接受進入系統(tǒng)邊界內(nèi)的數(shù)據(jù)的能力必須可選可選3.3.4 事務類型功能點的計算規(guī)則在IFPUG的定義中有一個重要的單詞“Elementary Pro
17、cess”基本處理過程。該過程對用戶來說是一個有意義的、最小的活動單位,并且是一個自包含的活動。功能點的分類,EI、EO、EQ的識別都 是基于“Elementary Process”基本處理過程的。 EI的計算規(guī)則 1. 從應用邊界之外收到數(shù)據(jù)。 2. 如果進入系統(tǒng)邊界內(nèi)的數(shù)據(jù)不是一個改變系統(tǒng)行為的控制信息,那么至少一個ILF應該被改變。 3. 對于已識別的處理過程,至少滿足下面三個條件之一。· 該基本處理過程的邏輯與本應用系統(tǒng)中其它基本處理過程的邏輯不同。該基本處理
18、過程應該具有唯一性。例如:不能存在兩個完全一模一樣的存盤操作。 · 在應用程序邊界內(nèi),該基本處理過程所使用的這組數(shù)據(jù)應該與其他基本處理過程所使用的數(shù)據(jù)不同。 · 在應用程序邊界內(nèi),基本處理過程所引用的ILF或EIF是不同于其它基本處理過程所引用的ILF或EIF。 EO和EQ通用計算規(guī)則 必須全部滿足以下內(nèi)容才能被視為一個EO或EQ: 1. 從外部發(fā)送數(shù)據(jù)或控制信息到應用程序邊界內(nèi)。 2. 為了識別這個過程,以下三點必須滿足一個:&
19、#183; 該基本處理過程邏輯上必須是唯一的,該唯一性是指其在應用程序中與其他EO或EQ在邏輯性上保持唯一。 · 該基本處理過程所使用的數(shù)據(jù)應該是唯一的,該唯一性是指其在應用程序中與其他EO或EQ所使用的數(shù)據(jù)不同。 · 該基本處理過程所引用的ILF或EIF文件應該是唯一的,該唯一性是指其在應用程序中與其他EO或EQ所引用的ILF或EIF文件不同。 EO補充的計算規(guī)則 除了要滿足上面的通用規(guī)則外,還要滿足下面其中一條:· 在基本操作過程中至少包含一個數(shù)學公式或計算方法 · 在基本操作
20、過程中要產(chǎn)生派生數(shù)據(jù) · 在基本操作過程中至少要維護一個ILF · 在基本操作過程中要改變系統(tǒng)的行為。 EQ補充的計算規(guī)則 除了要滿足上面的通用規(guī)則外,還要滿足下面其中一條:· 基本操作過程從ILF或EIF中獲取數(shù)據(jù)。 · 基本操作過程不能包含數(shù)學公式或計算方法。 · 基本操作過程不能生成派生數(shù)據(jù) · 基本操作過程不能維護任何一個ILF · 基本操作過程不能改變系統(tǒng)的行為 EI、EQ和EO的技術(shù)復雜性計算復雜性取決于FIRs和DETs的數(shù)量。FTR是被
21、一個事物讀取或維護的ILF,或者是被一個事物讀取的EIF。 EI中識別FTR規(guī)則· 每一個ILF應該算做一個FTR。 · 通過EI讀取的每個ILF或EIF都應該計算為一個FTR。 · 既被EI維護又被讀取的ILF僅計算為一個FTR。 EI中識別DET規(guī)則· 在EI的過程中,以用戶角度識別的、通過應用系統(tǒng)邊界輸入系統(tǒng)內(nèi)部的非重復字段,應算作一個DET。 · 在EI的過程中,只要沒有通過系統(tǒng)邊界輸入,即使它存在于系統(tǒng)內(nèi)的一個ILF中,也不能算為一個DET。
22、60; 例如,外貿(mào)訂單系統(tǒng)中,訂單的金額是被單價和數(shù)量自動計算的,那么金額是沒有通過系統(tǒng)邊界輸入的,因此在EI操作中就不應該算做一個DET。· 在應用程序的EI操作時,系統(tǒng)提示的錯誤信息或完成操作的信息,應該被分別計算為一個DET。 例如,在網(wǎng)站注冊用戶信息時,由于輸入錯誤系統(tǒng)會顯示提示信息,那么這些提示信息應該被逐個計算為一個DET。 再如,當EI操作完成時系統(tǒng)提示并顯示出來的信息,應該被計算為一個DET。· 在EI操作中,如果遇到主外鍵的字段,應該算作一個DET。
23、0; EO和EQ計算FTR的規(guī)則 1. 通用規(guī)則:· 每個在EO/EQ處理過程中讀取的ILF和EIF算一個FTR 2. EO額外的FTR計算規(guī)則· 在EO處理過程中每個被維護的ILF算一個FTR · 在EO處理過程中既被讀取又被維護的ILF算一個FTR EO和EQ計算DET的通用規(guī)則· 用戶可識別的非重復字段,進入應用邊界并指明處理什么、何時處理或處理方式,并且由EO/EQ返回或產(chǎn)生,那么這樣的每個字段算一個DET。 &
24、#160; 例如,報表中的每個字段都是一個DET。· 在應用邊界內(nèi)以用戶角度識別的非重復字段算一個DET。 例如,在報表中起到解釋或備注作用的文字信息,不管是一個字、一個詞或一段話,都當作一個DET。 再如,某種編號或日期,即使它被物理存儲在不同字段中,但從用戶角度看是一個整體的信息,因此被算作一個DET。 還有,在餅圖中百分比和分類算作不同的DET。· 在EO或EQ操作中,如果對系統(tǒng)進行輸入或讀取操作時,相同的字段只計算一個DET。
25、60; 例如,在報表查詢時,輸入的字段在報表上也有顯示,那么將算作同一個DET。· 在應用程序的EO或EQ操作時,系統(tǒng)提示的錯誤信息或完成操作的信息,應該被計算為DET。 例如,用戶查詢一個列表時被拒絕,那么拒絕的提示信息就算為一個DET。· 在EO或EQ操作中如果遇到主外鍵的字段,應該算作一個DET。 · 在EO或EQ過程中,只要沒有通過系統(tǒng)邊界輸入,就算它存在于系統(tǒng)內(nèi)的一個ILF中,也不能算為一個DET。 例如,在公司發(fā)工資的時候,員工對應的狀態(tài)信息被更新,但這個狀態(tài)信息的
26、更新是沒有通過系統(tǒng)邊界輸入的,因此也不能算做一個DET。· 頁面的標題等類似信息不計算DET。 · 系統(tǒng)字段生成的記號不能被算作一個DET。 例如,頁碼、位置信息、時間、上一頁和下一頁等信息,都不能算作一個DET。EI復雜度計算矩陣 14個DET515個DET多于16個DET01個FTR低低中等2個FTR低中等高大于2個FRT中等高高EO和EQ復雜度計算矩陣 15個DET619個DET多于20個DET01個FTR低低中等23個FTR低中等高多于4個FTR中等高高未調(diào)整前功能點對應矩陣EI、EO、EQ、ILF和EIF技
27、術(shù)復雜度對應的功能點如下表所示: 低一般高EI346EO457EQ346ILF71015EIF5710用功能點估算法計算軟件項目功能點時會用到調(diào)整因子(或稱調(diào)整系數(shù))。功能點的調(diào)整系數(shù)是通過通用系統(tǒng)特性及其影響程度來評定的,對每個常規(guī)系統(tǒng)特性的評估由其影響程度(DI)而定,分為05級: 0 毫無影響 1 偶然影響 2 適度影響 3 一般影響 4 重要影響 5 強烈影響
28、160; 然后依次對以下14個系統(tǒng)常規(guī)特性進行打分,并帶入以下計算公式算出功能點的調(diào)整因子。 Value Adjustment Factor=( sum of (DI) * 0.01 ) + 0.653.3.5 計算調(diào)整因子1. 數(shù)據(jù)通訊 數(shù)據(jù)通訊指的是應用程序直接與處理器通訊的程度。通常我們都是通過某種通訊手段來實現(xiàn)在一個應用中所使用的數(shù)據(jù)或者控制信息。連接到本地控制器上的終端被認為是通訊設施,協(xié)議則指兩個系統(tǒng)或設備之間進行通訊時使用的一種約定。所有的數(shù)據(jù)通訊鏈接都需要某種協(xié)議。0
29、160; 應用程序是單純的批處理或者PC stand-alone1應用程序是一種批處理過程,但是包含遠程數(shù)據(jù)的錄入或遠程打印2應用程序是一種批處理過程,但是包含遠程數(shù)據(jù)的錄入和遠程打印3應用程序包括在線數(shù)據(jù)收集或者包括批處理或查詢系統(tǒng)的遠程處理的前端應用4應用程序不單只是前端應用,但是僅支持一種遠程處理通訊協(xié)議5應用程序不單只是前端應用,還支持多于一種的遠程處理通訊協(xié)議2. 分布式數(shù)據(jù)處理 分布式數(shù)據(jù)處理是應用在內(nèi)部組件之間傳遞信息的程度。這個特性是在應用邊界內(nèi)體現(xiàn)的。 0&
30、#160; 應用程序不支持組件之間的數(shù)據(jù)傳輸和處理功能1應用程序為用戶可能進行的處理準備數(shù)據(jù)(例如使用電子表格或者數(shù)據(jù)庫等)2應用程序所準備的數(shù)據(jù)是為了在系統(tǒng)另外一個組件上傳輸和處理,并非為終端用戶所處理。3分布式處理和數(shù)據(jù)傳輸是在線的,并且是單向的4分布式處理和數(shù)據(jù)傳輸是在線的,并且是雙向的5由系統(tǒng)中最恰當?shù)慕M件動態(tài)地執(zhí)行處理功能3. 性能 性能是吞吐量、處理時間等指標對開發(fā)的影響。用戶所提出的性能要求將直接影響到系統(tǒng)的設計、實施、安裝和支持。0
31、160; 用戶沒有提出性能方面的要求1用戶提出了性能和設計方面的要求,但不需要采取特定措施2響應時間和吞吐量在系統(tǒng)峰值時是關(guān)鍵的,但是不需要采取相應的CPU使用方面的特殊設計。處理的最后期限是在下一個工作日。3在任何時候響應時間和吞吐量都是關(guān)鍵的,但是不需要采取相應的CPU使用方面的特殊設計。處理的完成期限比較嚴格。4除了上面一項的要求外,由于對需求的要求比較嚴格,在設計階段就要進行性能分析。5除了上面一項的要求之外,在設計和實施階段需要使用性能分析工具來判斷性能要求的完成情況。4. 大業(yè)務量配置 &
32、#160; 大業(yè)務量配置是指計算機資源對應用開發(fā)的影響程度。大業(yè)務量的運行配置對設計有特殊要求,是必須考慮的一個系統(tǒng)特性。0 沒有提出明確的運行方面的限制1有運行方面的限制,但是不需要采取特別的措施以滿足運行限制2提出了一些安全和時間方面的限制3應用程序的某些部分對處理器有特定的要求4提出的運行限制對應用的中央處理器或者專用處理器有特殊的要求5除上面一項之外,還對應用的分布式組件提出了限制5. 事務處理率 事務處理率是業(yè)務交易處理速度對系統(tǒng)
33、的設計、實施、安裝和支持等的影響。 0 預計不會出現(xiàn)周期性的高峰事務處理期1預計會有周期性的高峰事務處理期(例如:每月、每季、每年)2預計每周都會出現(xiàn)高峰事務處理期3預計每天都會出現(xiàn)高峰事務處理期4用戶在應用程序需求或者服務級別協(xié)議中對事務率要求很高,因此必須在設計階段進行性能分析。5用戶在應用程序需求或者服務級別協(xié)議中對事務率要求很高,因此必須進行性能分析并在設計、開發(fā)和安裝階段中使用到性能分析工具。6. 在線數(shù)據(jù)輸入 在線數(shù)據(jù)輸入是指數(shù)據(jù)通過交互的
34、方式輸入系統(tǒng)的程度。系統(tǒng)中包括在線數(shù)據(jù)輸入和控制信息功能。0 所有事務都是批處理的11%7%的事務是以交互式的方式進行數(shù)據(jù)錄入28%15%的事務是以交互式的方式進行數(shù)據(jù)錄入316%23%的事務是以交互式的方式進行數(shù)據(jù)錄入424%30%的事務是以交互式的方式進行數(shù)據(jù)錄入530%以上的事務是以交互式的方式進行數(shù)據(jù)錄入7. 最終用戶效率 最終用戶效率是指對應用的人文因素及使用的便捷程度等的考慮程度。 如下功能設計是針對最終
35、用戶效率的: · 頁面導航 · 菜單 · 在線幫助或文檔 · 光標自動跳轉(zhuǎn) · 可以滾動 · 在線遠程打印 · 預定義的功能鍵 · 在線做批量提交任務 · 光標可以選取界面上的數(shù)據(jù) · 用戶使用大量反白顯示、重點顯示、下劃線或其他的標識 · 在線copy用戶文檔 · 鼠標拖動功能 · 彈出窗體 · 使用最少的界面完成某種商業(yè)功能 · 雙語言支持(如果選擇了這個就算4項) · 語言支持(如果選擇了這個就算6項) 0
36、 以上的一個都不包括1包括以上的13個2包括以上的45個3包括以上的6個或以上,但是沒有用戶對于效率的要求4包括以上的6個或以上,對用戶使用效率有較高要求,因而必須考慮用戶方面的設計(例如,最少擊鍵次數(shù)、盡可能提供默認值、模版的使用)5包括以上的6個或以上,用戶對效率的要求使得開發(fā)人員必須使用特定的工具和流程以判定用戶對效率的要求已經(jīng)被達成8. 在線更新 在線更新是指內(nèi)部邏輯文件ILF被在線更新的程度。應用系統(tǒng)提供在線更新內(nèi)部邏輯文件的功能。 0
37、60; 沒有在線更新1包含13 個控制文件的在線更新。更新的流量低,恢復容易。2包含對4 個以上控制文件的在線更新。更新的流量低,恢復容易。3包含對主要ILF 的更新。4除了3 之外,在設計和實施中要考慮對數(shù)據(jù)丟失的防范。5除了4 之外,大量的數(shù)據(jù)恢復工作要考慮成本因素,同時包含了高度自動化的恢復流程。9. 復雜處理 復雜處理描述了邏輯處理對應用開發(fā)的影響程度。它包含以下要素: · 敏感控制(例如特殊的審核過程)和/或程序特定的安全處理 · 大量的邏輯處理 ·
38、; 大量的數(shù)學處理 · 因為例外處理造成的需要重新處理的情況(例如,由TP中斷、數(shù)據(jù)值缺少和驗證失敗導致的ATM事務) · 多種可能的輸入/輸出造成的復雜處理 0 上面一個都不滿足1只滿足一個2只滿足兩個3滿足三個4滿足四個5都滿足10. 可復用性 應用系統(tǒng)中的應用和代碼經(jīng)過特殊設計、開發(fā)和支持,可以在其他應用系統(tǒng)中復用。 0
39、 沒有可復用的代碼1代碼在應用之內(nèi)復用2應用中被其他用戶復用的部分不足10%3應用中被不止一個用戶使用的部分超過10%4應用遵從一種易于復用的方式被打包和文檔化。用戶在源代碼級客戶化該應用。5應用按照一種易于復用的方式被打包和文檔化。用戶使用用戶參數(shù)來對該應用進行客戶化。11. 易安裝性 易安裝性指應用系統(tǒng)的轉(zhuǎn)換和安裝容易度對開發(fā)的影響程度。系統(tǒng)測試階段提供了轉(zhuǎn)換和安裝計劃/轉(zhuǎn)換工具。 0 用戶對安裝沒有特定的要求1用戶對安裝沒有特定的要求,但有特定的
40、安裝環(huán)境要求2用戶提出了安裝和轉(zhuǎn)化的要求,轉(zhuǎn)化/安裝指南被經(jīng)過測試提供給用戶。但是轉(zhuǎn)化的影響對該應用不重要。3用戶提出了安裝和轉(zhuǎn)化的要求,轉(zhuǎn)化/安裝指南被經(jīng)過測試提供給用戶。轉(zhuǎn)化的影響對該應用來說是重要的。4除了2 的要求之外,需要提供經(jīng)過測試的自動化的安裝和轉(zhuǎn)化工具。5除了3 的要求之外,需要提供經(jīng)過測試的自動化的安裝和轉(zhuǎn)化工具。12. 易操作性 易操作性指的是應用對運行的影響程度,如有效啟動、備份和恢復規(guī)程的影響。易操作性是應用提供的一種特性,它最小化了手工操作的要求。0
41、 用戶沒有指定除正常備份程序外的其它特定操作1提供高效的啟動、備份和恢復進程,但需要人手操作2提供高效的啟動、備份和恢復進程,不需要人手操作(當作兩項計算)3應用程序?qū)Υ艓У男枨笞钚』?應用程序?qū)τ部截愄幚淼男枨笞钚』?程序設計成無人操作模式。無人操作模式的意思是除了啟動和關(guān)閉之外,不需要對系統(tǒng)進行操作。程序的其中一個功能就是錯誤自動恢復。13. 多場地 多場地指應用系統(tǒng)經(jīng)特殊設計、開發(fā)可以在多個組織、多個地點應用的程度。 0
42、用戶需求不含多場地和組織的要求1考慮了多場地的要求,但是設計要求應用在不同的場地使用相同的軟硬件環(huán)境2考慮了多場地的要求,但是設計要求應用在不同的場地使用類似的軟硬件環(huán)境3考慮了多場地的要求,同時設計支持應用在不同的場地使用不同的軟硬件環(huán)境4在1 或者2 的要求之上,提供了經(jīng)過測試的多場地的文檔和支持計劃5在3 的要求之上,提供了經(jīng)過測試的多場地的文檔和支持計劃14. 支持變更 支持變更是指應用在設計上考慮支持處理邏輯和數(shù)據(jù)結(jié)構(gòu)變化的程度。 可以具有如下的特性:· 提供可以處理簡單要求的彈性查詢和報告功能,如對一
43、個ILF進行與(或)邏輯 · 提供可以處理一般復雜度要求的彈性查詢和報告功能,如對多于一個的ILF進行與(或)邏輯(當作兩項計算) · 提供可以處理復雜要求的彈性查詢和報告功能,如對一個或多個ILF進行與(或)邏輯的組合(當作三項計算) · 業(yè)務控制數(shù)據(jù)被保存到用戶通過在線交互進程維護的表中,但變更只會在第二個工作日生效 · 業(yè)務控制數(shù)據(jù)被保存到用戶通過在線交互進程維護的表中,且變更即時生效 0 一個都不滿足1合計滿足一個2合計滿足二個3合計滿足三個4合計滿足
44、四個5合計滿足五個3.3.6 計算調(diào)整后的功能點個數(shù) 國際IFPUG組織將軟件項目分為三類,功能點估算法適用于任何一類項目,其計算公式中的術(shù)語請詳見表1。· 功能點的原始計算公式: FP Count =UFP * VAF· 新開發(fā)項目 有時新開發(fā)的軟件項目也需要與其他現(xiàn)存的軟件系統(tǒng)進行整合。例如:一個企業(yè)新開發(fā)的MIS內(nèi)部管理系統(tǒng)經(jīng)常會與財務系統(tǒng)進行整合。這時除了考慮本身項目的功能點個數(shù)外,還要考慮系統(tǒng)整合或數(shù)據(jù)遷移部分的工作量。因此,其功能點計算公式如下:
45、60; FP Count =(UFP+CFP)* VAF· 二次開發(fā)的項目 有時新開發(fā)的軟件項目是在原有基礎(chǔ)上進行二次開發(fā)的,只是為了增加一些新功能。因此,其功能點計算公式如下: FP Count = ADD * VAF · 功能增強的項目 功能增強項目的功能點估算比較復雜。在計算功能點前大家需要計算有哪些是新增加的功能,哪些是被修改的功能,哪些是屬于數(shù)據(jù)遷移或系統(tǒng)整合的功能。然后計 算新系統(tǒng)技術(shù)復雜度的調(diào)整因子“VAFA”,并在此基礎(chǔ)上計算系
46、統(tǒng)功能點的數(shù)量。當然,此類項目也會去掉一些原有功能,那么在原有系統(tǒng)的技術(shù)復雜度基礎(chǔ)上 重新計算功能點的調(diào)整因子“VAFB”,再計算所去掉功能貢獻的功能點數(shù)量。因此,其功能點計算公式如下: FP Count = (ADD+CHGA+CFP)* VAFA+(DEL * VAFB) 表1 功能點技術(shù)公式術(shù)語術(shù)語英文中文含義ADDAdded functionality被添加的功能點個數(shù)CFPConversion functionality被轉(zhuǎn)換的功能點個數(shù)CHGAUFP of changed functionality after enhancement功能增強后所
47、改動的功能所貢獻的未調(diào)整的功能點個數(shù)DELDeleted functionality被刪除的功能點個數(shù)UFPUnadjusted functional point count未調(diào)整的功能點個數(shù)VAFValue adjustment factorVAF=(sum of(DI)* 0.01)+ 0.65功能點的調(diào)整因子的計算公式VAF=(sum of(DI)* 0.01)+ 0.65VAFAValue adjustment factor after enhancement功能增強后的功能點調(diào)整因子VAFBValue adjustment factor before enhancement功能增強前
48、的功能點調(diào)整因子以員工管理系統(tǒng)為例,詳細說明如何利用功能點估算法計算業(yè)務復雜度。 在員工管理系統(tǒng)中添加一個員工資料,會使用到員工的一般信息、教育情況、工作經(jīng)歷和家屬信息。員工隸屬于某個部門,在本系統(tǒng)中會有一個對部門進行維護的功能。員工的工資則由另外一個財務系統(tǒng)提供。因此,其用例圖如下所示:圖1 員工管理系統(tǒng)用例圖 假設員工基本信息如下所示:· 員工ID(標簽控件) · 員工名稱 · 性別 · 生日 · 婚否 · 所屬部門ID(標簽控件) ·
49、所屬部門名稱 · 受教育的時間 · 學校名稱 · 所學專業(yè) · 工作時間 · 工作單位 · 工作部門 · 工作職務 · 親屬的姓名 · 之間關(guān)系 · 親屬年齡 · 工作單位 假設部門信息如下所示:· 部門ID(標簽控件) · 部門名稱 假設工資表信息如下所示:· 員工ID(標簽控件) · 員工姓名 · 金額 · 單位 ILF和EIF的功能點數(shù)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 漢服畫室活動策劃方案
- 法律實施宣傳活動方案
- 樣機處理活動方案
- 漢堡圣誕活動方案
- 樓盤瑜伽活動策劃方案
- 正月十五燈節(jié)活動方案
- 漢堡店下午茶活動方案
- 水果店新開業(yè)活動方案
- 母親節(jié)促銷活動方案
- 匯信公司年會活動方案
- 2024年河南省南召縣教育局公開招聘試題含答案分析
- 2025春季學期國開電大??啤稒C械制圖》一平臺在線形考(形成性任務1至4)試題及答案
- 紅外熱像儀性能提升行業(yè)深度調(diào)研及發(fā)展項目商業(yè)計劃書
- CJ/T 410-2012隔油提升一體化設備
- DB14-T 2245-2025 煤炭洗選企業(yè)標準化管理規(guī)范
- 家庭成員現(xiàn)實表現(xiàn)情況
- 2025屆湖南長沙雅禮實驗中學七年級數(shù)學第二學期期末學業(yè)水平測試試題含解析
- 2025云南鋁業(yè)股份限公司高校畢業(yè)生招聘100人易考易錯模擬試題(共500題)試卷后附參考答案
- 黃旭華人物介紹
- TCWEA6-2019水利水電工程施工期度汛方案編制導則
- 2025成都勞動合同范本
評論
0/150
提交評論