999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

軍用型號項目軟件復用成本度量模型

2015-02-24 05:14:14張圓圓
計算機工程與應用 2015年5期
關鍵詞:成本功能

張圓圓,劉 琪,王 穎

1.中國電子科技集團公司 電子科學研究院,北京 100041

2.北京海淀區復興路14號 80分隊,北京 100897

1 引言

近年來,我軍武器裝備更新步伐不斷加快,對軍工裝備研制需求不斷增長。軍工科研項目是普遍按照產品型號及系列進行研發的大型復雜系統工程[1],具有安全可靠性高、投資規模巨大、建設周期長等特點[2]。軟件研發是軍工項目研制的一部分,隨著計算機技術越來越廣泛地應用于武器裝備,軍用軟件在規模和功能重要性上均呈急劇上升趨勢,軟件研發已成為軍工型號項目研制的關鍵[3]。“軟件活動是可控、可度量和可改進的過程”(Watts Humphrey),為了提高軟件質量、控制進度,軍用軟件開發組織必須在項目過程中持續度量,持續跟蹤,持續改進,不斷提高軟件項目管理水平。

目前,各武器裝備型號都積累了一大批成熟的軟件產品,型號項目的系列化研制方式,使得軟件產品的重用也越來越普遍[4],對存在復用的型號項目軟件進行有效、準確的軟件規模/成本估計(Software Measurement),是軟件研制過程中進行任務、資源分配,以及進度安排等項目策劃(Project Plan)活動的重要前提和基礎。軟件復用開發與傳統的軟件開發方式不同,導致了新的軟件復用度量方法及度量模型的需求[5],本文根據軍用型號項目軟件研制特點,分析了軟件開發過程中的復用行為對成本度量結果的影響,并結合項目實施的實際過程及經驗數據,對 COCOMO2.0(Constructive Cost Model,建設成本分析模型)進行了改進,形成了適用于軍用型號項目的改進型軟件復用進度/成本估計模型。

2 軍用型號項目軟件復用成本度量

2.1 軟件可復用性及復用成本度量

隨著現代軟件工程技術越來越向集成化、構件化方向發展,相應地,能夠在不同層次、不同程度上,以不同方式重復使用軟件各個要素及成分的軟件復用技術也得到了越來越普遍的運用。可復用軟(構)件具有測試充分、接口清晰、可移植性好、質量穩定等特點,合理的復用能夠有效縮短軟件開發周期、減少軟件代碼錯誤率,從而有效地減少項目開發的成本[6]。

根據復用粒度大小和抽象層次的不同[7],可將軟件復用分為小粒度復用、中粒度復用及大粒度復用三類;軟件復用活動可分為生產活動和消費活動[8-9],生產活動是可復用(軟)構件的研發過程(Development for Reuse),如 COTS(Commercial Off-The-Shelf components,成品軟件)的研發;消費活動是基于可復用軟件(構件)來構造、集成和組裝應用系統的過程(Development with Reuse),即對可復用對象進行選擇、裁剪及使用的消費過程。顯然,軟件復用生產活動趨向于增加項目成本,消費行為趨向于減少項目成本。

將對構件的可復用性進行的度量稱為軟件可復用性度量(reusability metrics),描述了軟(構)件被專門設計、開發和支持,以便在其他應用程序中加以利用的程度;將開發過程對軟構件消費的成本度量稱為復用度量(reuse metrics)。

軍用型號項目研制周期較長,多按產品型號進行系列化研制[4],各型產品多積累了豐富的領域知識、架構設計、測試用例、需求設計文檔、軟件源代碼等各粒度、各層次的可復用成分,在軍用型號軟件項目研制過程中,應在繼承、復用型號積累的各類可復用因素的同時,在軟件架構、接口設計等各個環節注重產品的可復用性,使軟件產品易于被同型號產品所沿用,即型號項目軟件研發過程同時包含了復用軟件的生產和消費。因此,不同于一般軟件項目,軍用型號項目軟件復用成本度量模型應同時包含對軟件可復用性及軟件復用的成本度量。

COCOMO模型對軟件可復用性的度量通過系統通用特性統計項中的“可重用性”及成本影響力因子“可復用性開發”得到了體現,本文主要對模型中軟件復用度量(reuse metrics)方法進行了改進。

2.2 軍用型號項目軟件復用成本度量模型

根據是否采用算法模型(Algorithmic Model),可以將軟件成本度量方法分為基于算法模型的方法、非基于算法模型的方法以及組合方法[10]。其中,基于算法模型的成本估算方法通過線性模型、乘法模型、分析模型等規則、公式的建立,將軟件成本估算為一系列主要成本驅動因子變量的函數[11]。COCOMO模型是基于算法模型的成本度量方法的典型代表,該方法選取項目中具有代表性的特征,從產品(Product)、平臺(Platform)、人員(Personnel)和項目(Project)等 4個方面使用17個成本影響力乘數EM(Effort-Multiplier)來綜合衡量環境、人員等因素對項目開發成本/進度的影響。

每類 EM 乘數都分為“Very Low,Low,Nominal,High,Very High,Extra High”等級別,每個級別對應通常在0.5到1.5之間的具體參數值,而每類乘數的Nominal級別取值一定為1,代表該類乘數對項目成本沒有影響,取值小于1,表示項目中該類因素能減少項目成本,反之則會增加項目成本。EM乘數直接與軟件規模估計結果相乘,每一項影響力乘數/因子都會對軟件規模估計結果的整體進行調整。

成本度量模型需要軟件規模度量結果作為輸入[11],根據軍用型號項目軟件的特點,本文使用IFPUG功能點法進行規模估計、COCOMO 2.0成本度量模型進行成本/進度度量,在此基礎上,從以下幾個方面對上述模型進行了改進,形成了軍用型號項目軟件復用成本度量模型:

(1)基于復用度量的功能點規模估計方法

在根據需求進行功能點分析及識別的同時,根據復用粒度不同,對復用單元逐一進行復用度分析,分析精度可精確到類一級,具體闡述及數學模型見3.3節。

(2)復用軟件(構件)DI表

在 GSC(General System Characteristic,系統通用特性)列表中增加了復用軟(構)件DI項,并定義了量化評價表,以量化評估軟件復用對系統整體規模的影響。

(3)復用乘數

在軟件成本估計階段,增加了反映系統復用消費情況的乘數“REME”(Reuse Metric,復用度量)。REME量化評估表見4.2節表4。

3 功能點法軟件規模估計

功能點規模估計法(Function Point Analysis,FPA)是基于軟件的功能性需求,通過統計各類需求功能點的數量及復雜度,以得到軟件規模估計值的方法[12-13]。功能點估計法是目前普遍使用的主流軟件規模估計方法,能夠在項目早期根據用戶需求對軟件功能數量進行測量,而無需借助于軟件設計細節及具體編碼。現以功能點估計法中的IFPUG法為例,介紹功能點估計的基本工作過程。

3.1 未調整功能點數計算

IFPUG法將應用系統功能性需求分為兩類:數據功能性需求和事務功能性需求。數據功能性需求滿足用戶的內、外部數據需求,分為內部邏輯文件(Internal Logical Files,ILF)及外部接口文件(External Interface Files,EIF),其中,ILF是指一組存在內在邏輯關聯、由本應用內部產生及維護的數據/控制信息,EIF是在本應用中被引用的在應用邊界之外產生及維護的數據/控制信息;事物(交易)功能性需求是用戶提出的用來對數據進行處理的需求,包括外部輸入(External Inputs,EI)、外部輸出(External Outputs,EO)以及外部查詢(External Inquiries,EQ),其中,EI接收來自應用邊界之外的數據/控制信息,用以維護內部邏輯文件或改變系統行為,EO向應用系統之外發送經處理的數據/控制信息,而EQ則向用戶展示經提取處理的數據/控制信息,不會引起對ILF的維護或系統行為的改變。

通過識別及歸類,得到用戶需求中以上五類功能點的數量及類別。對于每個功能點,需要根據其處理的事務或數據的復雜程度來確定該功能點的復雜度權值,復雜度越高,賦予功能點的權值也就越高,意味著實現該功能點所需要的工作量也越大。功能點復雜度權值計算方法如表1所示。

表1 各類功能點不同復雜度的權值

表1中,功能點復雜度分為簡單,一般,復雜等類別,主要根據功能點的復雜度加權因子來計算并確定,如:表2為使用RET及DET來確定EIF類功能點的復雜度分類閾值的示例。

表2 外部接口文件類功能點復雜度

表2中,記錄元素類型(RET)代表用戶可以識別的數據元素子集,相當于數據庫中的表;數據元素類型(DET)代表用戶可以識別的,唯一、不重復的字段,即數據表中字段。

逐一確定每個功能點的復雜度,統計每類功能點中各復雜度功能點數量Nij,并與表1中相對應的復雜度權值Vij相乘,得到系統未調整功能點數UFP,如式(1)所示:

3.2 評估通用系統特性(GSC)

UFP能夠從數據/事務復雜度的角度出發來衡量系統規模,但一些諸如復雜安全控制,大量邏輯處理、復雜數學計算、復雜輸入/輸出、軟件復用度等系統級影響因素,都會在整體上客觀影響項目開發周期及項目成本估計結果。為此,需要統計各GSC項對系統規模的影響,并使用一個從1(不重要)到5(絕對重要)的評分標準來量化評估通用系統特性對系統規模的影響程度。將各個GSC項取值相加,得到系統TDI(Total Degree of Influence),如式(2)所示。其中,i代表第i項GSC對系統的影響程度。

GSC項的選擇、取值、對項目的影響程度及所占比重均可以根據當前軟件行業的技術發展情況及所處行業的特點進行裁剪及定制[13],使其成為軟件開發組織的過程資產。對于軍用型號項目軟件,由于相同型號所使用的硬件平臺及軟件開發環境相對固定,且基于保密等原因一般不以網上下載升級包的形式進行軟件在線升級,因此刪除了“在線升級”GSC評估項,并根據型號項目開發過程中普遍存在的對同系列以往型號項目多個層次、各種粒度的復用、繼承的特點,對復用粒度大小,復用度百分比等復用因素進行量化、分級,開發了復用軟(構)件DI表,如表3所示。

表3 復用軟(構)件DI表

將式(2)中得到的通用評估特性TDI帶入公式(3)進行計算,得到系統調整(修正)因子VAF:

式(3)決定了系統影響度系數TDI在修正因子VAF中所占比重,即決定了項目的系統特性對軟件成本及進度的影響程度。由公式可推導出,由于TDI的取值范圍是[0,70],乘以權值后的取值范圍是 [0,0.7],因此VAF的取值范圍為[0.65,1.35]。也就是說,GSC項對項目的整體調整范圍是±35%。

最后,將通過式(3)得到的VAF與通過式(1)得到的UFP相乘,即得到了最終的軟件功能點度量值FPC,如式(4)所示:

3.3 基于復用度量的多粒度功能點估計模型

在COCOMO成本度量模型中,使用功能點法進行規模度量時,如果分析人員通過分析,估計有百分之r的構件可重用,則可以使用下式對軟件復用規模進行估計[11]:

上式對軟件的整體重用比例進行了估計,具有一定的主觀性,缺乏估計的客觀依據,往往不夠精確,從而影響了估計的準確性。軍用軟件開發過程中可能出現各種粒度的復用,以面向對象軟件為例,存在對象/類、模塊/操作集合、系統等不同粒度軟件單元的復用[14]。在使用功能點法進行規模估算的過程中,用戶需求被細分并識別為各類功能點,而功能點由具體的函數/類等小粒度軟件單元來實現,這樣,通過對功能點的識別及復用度估計,可實現對函數等小粒度軟件單元的復用度量[15]。進一步,可以按照粒度從小到大的順序,自底層到頂層逐步計算系統功能點數,并估計各粒度復用對象的復用度,直至整個系統。根據復用對象的不同,可使用以下三個準則進行分析及估算:

(1)對函數/方法(Function)、類(Class)等小粒度復用,在進行類的規模度量的同時,估計其在新系統中的復用度RPC;

其中,UFPi表示對某個復用類i的功能點度量,RPCi表示該類的復用度估計值。

(2)對模塊(Module)為粒度的復用,估計模塊整體復用度RPM,同時估計該復用模塊的TDI;

其中,UFPj表示對某個復用模塊j的功能點數度量結果,RPMj表示對該模塊的整體復用度估計值,TDIj表示對該模塊的GSC統計結果。

(3)對分系統(System)級大粒度復用,則需在估計分系統復用度RPS、計算分系統TDI的同時,以該復用分系統為單位統計其成本規模因子EM。

分系統級復用度量=EMk×TDIk×(1-RPSk)×UFPk其中,UFPk表示對某個分系統級復用模塊k的功能點數度量結果,RPSk表示對分系統的整體復用度估計值,TDIk表示對該分系統的GSC統計結果,EMk表示對分系統的成本估計乘數。

使用準則(1),(2),(3),在軟件功能點度量過程中對各個粒度的軟件復用對象進行復用規模估算,即得到了最終的軟件復用后規模度量結果。

4 COCOMO2.0軟件成本估計

通過第3章得到以功能點為單位的軟件復用規模度量值FPC,進一步,需要對系統的成本因子進行度量,以得到最終的工作量/成本及進度估計。

4.1 軟件規模效應

其中,A為常量,當軟件規模以功能點為單位時,A的取值為0.033,指數E由下式得出:

式(6)中,B為線性縮放比例常量,取值為0.91;W代表開發團隊的5項規模效應比例因子(Scaling Factor),用以衡量軟件開發組織對大規模軟件的研發能力,分別為:PREC(先例性,有開發類似產品的經驗),FLEX(開發靈活性),RESL(能夠處理和化解項目風險的能力),TEAM(團隊凝聚力),PMAT(組織過程成熟度)。

通過式(5)、(6)可知,當指數E>1時,軟件組織的收益率會隨著開發規模的增大而下降,即具有規模不經濟性,反之則具有規模經濟性。

經過計算,即得到估計了規模不經濟性后的標稱(nominal)工作量PMNM。

4.2 系統復用度量乘數REME

實際估計過程中,根據經驗,去掉了與軟件復用情況密切相關的RELY及DOCU乘數,增加了反映系統復用情況的乘數“REME”(Reuse Metric,復用度量),并定義了其量化評估取值表,如表4所示。

表4 REME量化評估表

將上一節得到的標稱工作量PMNS與各項成本驅動因子量化評估結果相乘,得到校正后(adjust)的最終工作量估計PMAD(人×月):

進一步,使用下式得到軟件開發周期的估計值TDEV(月):

5 軟件系統開發成本估計實例

本章使用改進的系統復用成本度量模型對某軍用大型軟件地面規劃分系統進行基于各粒度復用的成本度量。該分系統具有A、B、C、D、E五個模塊,分系統繼承、復用了該型號軟件產品的領域知識、算法,軟件架構等。其中,模塊B是對以往型號的整體改造和移植,重用度達到90%;模塊C、D集成了一個COTS軟件系統,并使用COTS提供的二次開發接口進行了顯示功能及連接代碼的開發,新開發部分的重用度為60%;模塊A、E為新研,但重用了部分以往型號的軟件源代碼、庫函數。

5.1 功能點法軟件規模估計

功能點估計及計算結果如下:

為解決上述技術難點,分別建立永磁直驅柔性構架有限元瞬態響應分析模型及整車動力學模型,并提出架懸直驅結構與驅動軸間動態間隙的干涉評判指標,以此作為間隙大小設定的依據。

(1)對模塊A、B、C、D、E分別根據各模塊的整體特性進行TDI統計,將結果帶入式(3),得到模塊調整(修正)因子VAF,具體統計結果如表5所示。

(2)對5個模塊(A,B,C,D,E)進行功能點規模估計,得到各模塊的功能點估計結果(269,930,233,90,299)。

(3)對5個模塊分別按各復用對象的復用粒度進行復用規模分析。

模塊A中,部分重用了(30%)該型產品上一版軟件的一個功能需求,共計由2個ILF(簡單,復雜度權值7),1個EI(簡單,復雜度權值3),2個EQ(簡單,復雜度權值3)實現該功能需求[15],代入式(1)進行計算可得該重用需求功能點的UFP計算結果為23,運用3.3節準則(1)進行計算后可得該需求功能的復用規模度量結果為17;模塊B為配置項級重用,重用后工作量為原來的10%;模塊C、D在COTS提供的接口基礎上進行功能開發,重用后工作量為原來的40%;模塊E中,部分重用了(80%)一個需求功能點,共計由2個ILF(簡單,復雜度權值7),2個EI(簡單,復雜度權值3),3個EO(簡單,復雜度權值4),3個EQ(簡單,復雜度權值3)實現該功能,代入式(1)進行計算可得該重用需求功能點的UFP計算結果為41,同樣,運用3.3節準則(1)進行計算后可得該需求功能的復用規模度量結果為8;重用部分的UFP為原來的20%。復用度量后各模塊規模估計結果為(263,93,93,36,266)。

表5 改進GSC項列表及各模塊TDI

(4)將得到的模塊VAF向量與各模塊復用UFP向量進行點乘,得到整個分系統功能點估計結果,如表6所示。

表6 功能點計算結果

5.2 軟件成本估計

軟件成本/進度估計計算結果如下:

(1)規模經濟效益指數E

對5項規模效應比例因子所涉及的5個方面進行衡量,以量化評估開發組織的研發能力隨著軟件規模的增大而變化的趨勢,經過對組織的五項比例因子進行考察,最終規模經濟性比例因子取值見表7中黑體所示,將規模因子帶入公式(6)進行計算,得到規模指數E。

表7 規模經濟比例因子取值表

(2)經過對分系統的整體復用程度進行衡量及評估,該系統的復用度量乘數REME取值定為0.95(high)。

(3)逐一確定各成本影響力乘數的取值,具體取值結果見表8所示。

5.3 估計結果比對

為了檢驗改進的軟件復用度量模型的有效性,將改進的度量模型與標準的COCOMO2.0軟件估計方法的各步驟中間計算結果進行了比較,并將使用兩種方法得到的工作量、工期、成本以及平均生產率等最終規模度量結果與該項目實際數據進行了對比。計算過程中,取待估計分系統的整體TDI為31,分系統整體復用度估計值r為0.6。兩種方法計算結果對比值如表9所示。

5.4 結果驗證

本單位通過積累前期歷次執行型號項目軟件研發工作的經驗數據,得到本組織的型號產品軟件開發項目平均生產率P為8 h/功能點,以每周5個工作日,每天工作8 h來計算,則P為20功能點/人月;在工期估計方面,該分系統開發項目于2013年3月11日開始進入需求分析階段,至2013年12月22日完成驗收交付,歷時41周。可見,使用改進的成本估計方法的確提高了軟件估計的精度。

表8 成本影響力乘數EM取值對比表

表9 成本估計計算結果對比表

6 結束語

準確的軟件成本度量是項目順利進行的基礎。軍用型號項目軟件復用度量模型使用功能點法詳細評估每個復用單元的復用后實際工作量,并對COCOMO2.0軟件成本分析模型進行了改進,增加了軟件復用量化評估成本驅動因子及系統通用特性統計項,從系統級對度量結果進行了修正。與傳統度量模型相比,復用度量模型具有更高的準確性,適應了軍用型號軟件項目的開發特點,為項目的進度安排及成本控制等方面提供了很好的參考。

[1]張杰,閆振國,李原.航空型號生產項目集成進度控制方法[J].計算機工程與應用,2008,44(26):230-232.

[2]郭薇,李想,曾斌.面向軍用軟件的COCOMOII改進模型研究[J].船舶電子工程,2014,34(1).

[3]Lee T,Gu T,Baik J.MND-SCEMP:an empirical study of a software cost estimation modeling process in the defense domain[J].Empirical Software Engineering,2014,19(1):213-240.

[4]吳清才,鄭琪,王首一.軍用軟件的工程研制與[M].北京:國防工業出版社,2013.

[5]李英梅.基于構件的軟件復用度量的研究[D].哈爾濱:哈爾濱工程大學,2007.

[6]Graham I.Object-orientedmethods[M].Wokingham,UK:Addison-Wesley,1991.

[7]Agresti W W.Software reuse:developers’experiences and perceptions[J].Journal of Software Engineering and Applications,2011,4(1):48-58.

[8]Karlsson E A.Software reuse:a holistic approach[M].Chichester:John Wiley and Sons Ltd.,1995.

[9]Vasantha R,Sudhakaran J K.A mixed method approach for efficient component retrieval from a component repository[J].Journalof Software Engineering and Applications,2011,4(7).

[10]李明樹,何梅,楊達,等.軟件成本估算方法及應用[J].軟件學報,2007,18(4):775-795.

[11]Boehm B W,Abts C,Brown A W,et al.Software cost estimationwithCOCOMO II[M].New York:Prentice Hall,2000.

[12]IFPUG(International Function Point Users Group).Function point counting practices manual-release4.2[R].2004.

[13]Chrobot B C.The economic importance of business softwaresystemsfunctionalsizemeasurement[J].Software Engineering,2011,1(1).

[14]毛明志,陳立.多粒度的面向對象軟件估算模型的研究及應用[J].計算機科學,2009(2).

[15]文靜,顧勛梅.一種度量軟件需求的功能點方法[J].微電子學與計算機,2011(10).

猜你喜歡
成本功能
也談詩的“功能”
中華詩詞(2022年6期)2022-12-31 06:41:24
2021年最新酒駕成本清單
河南電力(2021年5期)2021-05-29 02:10:00
溫子仁,你還是適合拍小成本
電影(2018年12期)2018-12-23 02:18:48
鄉愁的成本
特別健康(2018年2期)2018-06-29 06:13:42
關于非首都功能疏解的幾點思考
“二孩補貼”難抵養娃成本
懷孕了,凝血功能怎么變?
媽媽寶寶(2017年2期)2017-02-21 01:21:24
“簡直”和“幾乎”的表達功能
中西醫結合治療甲狀腺功能亢進癥31例
辨證施護在輕度認知功能損害中的應用
主站蜘蛛池模板: 青青草欧美| 天天躁夜夜躁狠狠躁图片| 亚洲无码37.| 国国产a国产片免费麻豆| 五月天福利视频| 综合天天色| 自偷自拍三级全三级视频| 精品久久综合1区2区3区激情| 国产乱子伦无码精品小说| 国产成人在线无码免费视频| 亚洲国产清纯| 精品久久高清| 久久久久无码精品| 日韩精品成人网页视频在线| 99在线视频免费| 在线播放真实国产乱子伦| 高清免费毛片| 九九九国产| 国产午夜无码专区喷水| 亚洲最猛黑人xxxx黑人猛交| 欧美高清三区| 欧美www在线观看| 毛片基地美国正在播放亚洲| 丁香五月婷婷激情基地| 精品99在线观看| 伊人久久综在合线亚洲2019| 人妻中文字幕无码久久一区| 国产成人超碰无码| 亚洲天天更新| a级毛片免费播放| 在线国产三级| 啪啪免费视频一区二区| 岛国精品一区免费视频在线观看 | 亚洲欧洲综合| 亚洲妓女综合网995久久| 国产亚洲第一页| 亚洲午夜天堂| 国产女人18水真多毛片18精品| 毛片久久网站小视频| 国产一级二级在线观看| 国产一在线观看| 谁有在线观看日韩亚洲最新视频| 992Tv视频国产精品| 国产女人综合久久精品视| 午夜爽爽视频| 五月婷婷综合在线视频| 国产真实乱子伦视频播放| 亚洲人成网站在线观看播放不卡| 青青青草国产| 在线色综合| 亚洲色图在线观看| 国产激情无码一区二区APP| 国产欧美视频综合二区 | 国产一区二区三区免费观看| 国产精品久久久久久久伊一| 久热中文字幕在线观看| 国产成人精品一区二区三区| 操美女免费网站| 99精品这里只有精品高清视频| 欧美日韩导航| 国产福利微拍精品一区二区| 女人毛片a级大学毛片免费| 日日拍夜夜嗷嗷叫国产| 久久精品国产999大香线焦| 欧美性天天| 国产一级小视频| 不卡国产视频第一页| 久久中文无码精品| 性视频一区| 精品国产女同疯狂摩擦2| 午夜福利在线观看成人| 亚洲中文无码av永久伊人| 国产性爱网站| 亚洲国产亚综合在线区| 亚洲看片网| 久久久久亚洲Av片无码观看| 日韩av手机在线| 日韩在线播放欧美字幕| 99国产精品一区二区| 国产AV无码专区亚洲精品网站| 国产精品性| 国产精品人人做人人爽人人添|