• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于類比估算的軟件項目規(guī)模估計

      2016-05-30 18:42:44張志偉郭樹行
      科技創(chuàng)新導報 2016年13期
      關(guān)鍵詞:估算

      張志偉 郭樹行

      摘 要:針對軟件項目規(guī)模估算結(jié)果準確性普遍偏低的問題,該文提出一種采用類比估算方法的軟件項目規(guī)模估算策略。首先針對歷史項目數(shù)據(jù)以及現(xiàn)有評價體系,給出利用屬性值進行類比估算的模型;其次,給出類比估算操作步驟;最后在理論研究基礎(chǔ)上,通過實例驗證對目標項目規(guī)模進行估算。實驗表明,類比方法能有效減少偏差,為項目的成本編制提供有效參考。

      關(guān)鍵詞:類比方法 軟件規(guī)模 估算

      中圖分類號:G64 文獻標識碼:A 文章編號:1674-098X(2016)05(a)-0092-04

      軟件成本估算是軟件項目管理的重要環(huán)節(jié),對項目進度管理、質(zhì)量管理及采購管理等知識領(lǐng)域有重要影響,是軟件項目時間、成本及軟件工作規(guī)模估算等項目過程的重要環(huán)節(jié),是項目成敗的關(guān)鍵要素。如何才能準確估算軟件項目成本?這個問題長期困擾著產(chǎn)業(yè)界和學術(shù)界。軟件成本估算是軟件項目管理過程中的一項非常重要的活動,軟件項目進度、成本及工作量的估算作為軟件項目過程的重要環(huán)節(jié),對軟件開發(fā)項目的成敗起到重要作用。長期以來,準確的成本估算問題一直困擾著產(chǎn)業(yè)界和學術(shù)界。從20世紀60年代出現(xiàn)的SDC(system development corporation)線性模型開始,到現(xiàn)在已經(jīng)經(jīng)歷了近50年的發(fā)展,但是根據(jù)STANDISH組織[1]2004年的公布的數(shù)據(jù)顯示,成功項目只占所有50 000個項目的29%,失敗項目占到了18%,并且該報告指出,有89%的項目都有預算超支的情況發(fā)生。由此看來,作為解決預算超支問題的重要措施,軟件成本估算已經(jīng)成為軟件工程領(lǐng)域的一個重要研究方向。另外,精確的成本估算不但直接有助于做出合理的投資、外包、競標等商業(yè)決定,也有助于確定一些預算或進度方面的參考里程碑,使軟件組織或管理者對軟件開發(fā)過程進行監(jiān)督,從而更合理地控制和管理軟件質(zhì)量、人員生產(chǎn)率和產(chǎn)品進度。

      最早的軟件成本估算可以追溯到20世紀60年代,到現(xiàn)在已歷經(jīng)了40多年的發(fā)展,各個方面的研究都已經(jīng)比較深入,產(chǎn)生了很多種估算方法,目前普遍應用的有以下幾種方法:專家判斷、算法模型和類比方法。

      首先,專家判斷是一種自上往下的估算方法,用途非常廣泛。毫無借鑒的直覺判斷,有歷史數(shù)據(jù)支撐的預測,有過程框架和歷史清單支持的理性推斷,都可以看成是專家判斷[2]。當然,這個定義普適性太強、太寬泛,所謂專家判斷,太依賴于被認為是專家的人,專家依賴于以往的歷史經(jīng)驗,其推斷過程不具備重復可模仿性,因而過程是不能復用的;此外,專家判斷是主觀層面的,理性支撐不足。

      其次是算法模型,可采用多種算法模型,提取軟件成本變量為主要驅(qū)動因子,將這些成本驅(qū)動因子組裝成函數(shù)[3]。這些算法模型有乘法模型、表格模型、線性模型以及復合模型等。這種方法,把成本估算關(guān)系作為紐帶,將系統(tǒng)特征和項目工作量、項目進度的預測估算值聯(lián)系起來。不同算法模型,在成本因子的選取上不盡相同,最重要的是會在成本因子關(guān)系的表達式上有很大區(qū)別。

      類比估算法,通常是基于以前完成的一個或多個項目,要求項目的相似度較高,有一定的可參照性,通過對其分析來預測當前項目的進度或成本。在軟件項目的成本估算中,我們可以把每個已經(jīng)完成的軟件項目抽象為實例,將當前項目設(shè)置為待估算項目。從學術(shù)界的研究分析來看,關(guān)于類比估算方法的采用越來越多,1989年前發(fā)表論文1篇,1990—1999年發(fā)表15篇,2000—2004年發(fā)表15篇,2005年以來發(fā)表23篇。這說明類比估算法正在逐步被學術(shù)界和產(chǎn)業(yè)界接受,并投入應用實踐中。

      文章基于以上的研究背景,利用類比估算方法對于實際數(shù)據(jù)進行實證應用分析,通過實證分析證明,類比估算法能夠較為可靠地估算出軟件項目的工作量,可以作為一種可行的軟件成本估算的手段。

      1 類比估算方法研究

      類比估算是以過去類似活動的參數(shù)值(如范圍、成本、預算和持續(xù)時間等)或規(guī)模指標(如尺寸、重量和復雜性等)為基礎(chǔ),來估算未來活動的同類參數(shù)或指標的估算技術(shù)。這是一種粗略的估算方法,有時需根據(jù)項目復雜性方面的已知差異進行調(diào)整,是一種自上而下的專家判斷。在項目詳細信息不足時,就經(jīng)常使用這種技術(shù)來估算項目的成本或活動持續(xù)時間。該方法綜合利用歷史信息和專家判斷,常用在項目的早期階段。相對于其他估算技術(shù),類比估算通常成本較低、耗時較少,但準確性也較低。如果以往活動是本質(zhì)上而不只是表面上類似,并且從事估算的項目團隊成員具備必要的專業(yè)知識,那么類比估算就最為可靠。[13]

      1.1 類比估算優(yōu)勢

      類比估算相對于其他方法具有如下優(yōu)勢。

      (1)用戶更愿意接受類比方法生成的結(jié)果,因為它和人類解決問題的推理過程一致。

      (2)它避免了知識啟發(fā)、知識提取以及知識系統(tǒng)化等相關(guān)問題。

      (3)基于類比的系統(tǒng)僅需要處理實際上發(fā)生的問題,人們通過分析類比數(shù)據(jù)庫就可以了解類比的可信度。

      (4)類比能夠用于缺乏理解的領(lǐng)域,人們不需要對相關(guān)項目和領(lǐng)域都非常了解,這是因為類比方法使用的是實際存在的信息,這和基于規(guī)則的方案相反。

      目前,關(guān)于類比方法的研究已經(jīng)不斷展開,不管是從理論上還是從應用上都有了新的突破。比如,1992年Mukhopadhyay[4]等人提出采用歐幾里德距離來度量項目屬性的相似度,并且開發(fā)出ESTOR估算輔助工具;1996年英國Bournemouth大學的Shepperd[5]等人通過對9個不同數(shù)據(jù)集的估算結(jié)果分析,論證了類比估算方法是一種切實可行的估算方法,并且組織開發(fā)了ANGEL估算輔助工具;2006年加拿大Calgary大學的Li Jinzhou和Ruhe[6]等人,根據(jù)前人的成果提出了一種新的類比估算解決方案AQUA,并且持續(xù)進行了相關(guān)的改進研究,研究出QAUA+算法,加入對于存在缺失值的數(shù)據(jù)集采用RSA(Rough Set Analysis)進行研究。而在現(xiàn)階段國內(nèi)很少有人開展類比估算方法應用方面的研究,關(guān)于這方面的研究論文也很少。大部分論文只是在列舉軟件成本估算方法的時候簡單介紹了類比估算方法,或者是在論證類比估算應用在軟件規(guī)模估算上的可行性分析以及算法原理介紹。

      1.2 類比估算定義

      定義1[7]此文中將項目歷史數(shù)據(jù)集定義為一個三元組: DB=,其中:(1)P為項目集:P={P1,P2,…,Pn}。(2)A為項目的屬性集:A={A1,A2,…,Am},A1~Am為項目的屬性,其中A1為項目的規(guī)模(本文中以工作量—— 人·月表示,下文記為effort);(3)V={V11,…,V1m,…,Vn1,…,Vnm},其中Vij表示項目Pi的屬性Aj的值。

      設(shè)S={sn+1,sn+2,…,sn+k}為待估算的項目集合,假定:(1)S與P具有共同的屬性集A;(2)S與P中項目的屬性值不存在缺失現(xiàn)象。

      則估算模型的問題域為:

      定義2 根據(jù)項目P1~Pn的屬性向量和待估算項目S的屬性值計算待估算項目目標值Effort。

      1.3 類比估算基本步驟

      (1)提取相似項目,描述實例特征。

      該步驟的任務是通過相似度量的方法將數(shù)據(jù)集中的項目逐個進行比較,從歷史數(shù)據(jù)集DB中找到最相似項目集。

      (2)決定最相似的N個項目。

      該步驟的任務是以前一步驟的結(jié)果為基礎(chǔ),從項目集中得出N個最相似項目。

      (3)用類似的項目數(shù)據(jù)得到最終的估算值。該步驟的任務是通過類似項目,作為經(jīng)驗數(shù)據(jù)來預測當前或未來項目結(jié)果,給出估算值,作為未來決策的依據(jù)。

      (4)估算結(jié)果驗證。在通過類比估算預測出項目開發(fā)成本后,需要在實際項目中對預測值進行驗證。如果預測值滿足歷史數(shù)據(jù)庫對精確度的要求,則可將其添加到歷史數(shù)據(jù)庫中。通常情況下,通過這種方法做過篩選的數(shù)據(jù),比通過調(diào)查問卷得到的數(shù)據(jù)更加精確。

      1.4 類比估算計算方法

      根據(jù)Richter[7]關(guān)于局部全局相似度的度量方法和Wangenheim[8]等人關(guān)于各類屬性局部相似度的定義,可以把屬性分成以下幾個類別:數(shù)值型、間隔型(或者說是范圍型,如[0,1])、二值型、順序型、無序型、分類型、字符串型和集合型。后來Fenton 和Pfleeger[9]提出,屬性類型可以只分為5種類型:nominal、ordinal、interval、ratio和absolute。

      根據(jù)類比估算法在實際操作中對局部相似度量的要求,以及該論文歷史數(shù)據(jù)集的數(shù)據(jù)實際情況對相似度度量中涉及到的屬性進行了分類,如表1所示。

      該文中計算項目之間的相似性主要是基于局部-全局規(guī)則的復合相似度度量方法[10]。主要思想是:兩個項目之間的全局相似度是由各個屬性的局部相似度加權(quán)計算出來的,而各個屬性的局部相似度,則需要根據(jù)屬性的不同類型進行計算。根據(jù)表1中所列出各種屬性類型,分別給出計算方法如下。

      (1)二值型變量。對于此類屬性,我們只需關(guān)心其數(shù)據(jù)是否相同,若相同,取值1,否則,取值0。

      在選取相似度項目進行調(diào)整的過程中,并不是選擇的數(shù)量越多就越能得出最合理的結(jié)論。后增加的案例與目標案例之間的相似度會越來越小,誤差會伴隨著選取案例數(shù)量的增多而增大,所以必須選擇數(shù)量合理的類似項目[11]。針對相似項目數(shù)量選擇的問題,Jinzhou Li和Ruhe等人提出[6],以相似項目數(shù)量N作為參數(shù),通過調(diào)整N來選擇最合適的精度,從而確定最相似項目集合R。

      在選取相似度項目方面,此文采用選取歷史項目集中最小的Pi作為最相似項目,取Pi的工作量為目標項目工作量的估計值。即:

      其結(jié)果為一個百分比數(shù)值。其中,k為MRE小于或等于x的估算次數(shù),N為所有的估算次數(shù)。一般常用Pred (0.25)來判斷估算模型是否合理。與Pred相比,MMRE和MdMRE比較容易受極端值的影響,因此在實際應用中一般優(yōu)先考慮使用Pred評判,其次才是參考MMRE或MdMRE。

      3 應用驗證

      3.1 計算驗證

      在使用類比估算對項目進行規(guī)模估計過程中,歷史項目數(shù)據(jù)的數(shù)量、真實性、準確性對于目標項目工作量的估計有很大的影響。鑒于此,此文在數(shù)據(jù)收集過程中除利用前人在研究過程中使用過的成熟歷史數(shù)據(jù)之外,另從中培創(chuàng)成科技有限公司所從事過的歷史項目中按照給定屬性集對原有的歷史數(shù)據(jù)進行補充。在實際應用過程中,可對歷史數(shù)據(jù)進行不斷補充,增加估算的精確度。

      鑒于很多情況下數(shù)據(jù)收集成本很高,此文在估算與驗證過程中,使用的一部分歷史數(shù)據(jù)集是Maxwell博士在《軟件管理的應用統(tǒng)計學》附錄中提到的數(shù)據(jù)集[10],另外一部分是由中培創(chuàng)成科技有限公司在實施的歷史項目中按照Maxwell博士項目集中屬性表進行填充,此文基于驗證需要將無用參數(shù)從該數(shù)據(jù)集中剔除。

      根據(jù)Maxwell博士在書中表述,Project 13與Project 14因為均為“客戶應用程序”開發(fā)項目,沒有應用數(shù)據(jù)庫,數(shù)值為空,所以在計算驗證過程中將其剔除。另據(jù)書中所述,語言是以任意順序輸入,而不是按照重要順序排序,所以lan1空缺的由lan2遞補。

      鑒于區(qū)域不同會產(chǎn)生人工等成本的差異,在實際估算軟件成本時,該文采用工作量等同于軟件成本。另該文選取數(shù)據(jù)集中Project 2、Project 6、Project 45、Project 60、Project 43、Project 41、Project 56、Project 58、Project 10、Project 47作為目標項目進行估計,則該文參照項目數(shù)為90。

      按照類比估算計算步驟,經(jīng)過計算,得到目標項目與歷史項目集各項目之間類似項目集合,如表2所示。

      3.2 對比研究

      為驗證此文估算的精確度,此文應用中培創(chuàng)成科技有限公司在實踐中進行軟件項目規(guī)模估算方法對此文數(shù)據(jù)集中Project 2、Project 6、Project 45、Project 60、Project 43、Project 41、Project 56、Project 58、Project 10、Project 47進行工作量估算,將類比估算和專家估算兩種方法預測值進行對比,發(fā)現(xiàn)應用類比估算的工作量估計值相較專家估算工作量更趨近于實際工作量。

      此外,將類比估算和專家估算誤差對比可知,采用類比估算時目標項目規(guī)模估算值與實際工作量之間差別較小,估算結(jié)果可信度較高。

      上述研究將類比估算實際應用于軟件成本估算過程中,根據(jù)類比估算的4個步驟,利用現(xiàn)有歷史數(shù)據(jù)集進行實際操作。通過估算實踐證明,類比估算方法作為一種可行的軟件成本估算手段,能夠成功估算軟件規(guī)模,并將誤差控制在可接受范圍之內(nèi)。

      類比估算誤差較小,說明類比估算結(jié)果可以較好地應用在軟件項目規(guī)模估算實踐中,從而在基線合理定義的提前下,有效地控制軟件項目規(guī)?;蝽椖糠秶牟粩嗯蛎?,增加了軟件項目規(guī)模和范圍控制的科學性,從而在項目實踐中起到降本增效的作用。

      3.3 總體分析

      軟件項目規(guī)模估計問題必須充分考慮軟件項目進行過程中可能出現(xiàn)的各種約束,因為可能會面臨數(shù)據(jù)不充分、團隊成員經(jīng)驗缺乏或者估計出的數(shù)據(jù)不可信等問題。因此,在現(xiàn)實情況中,根據(jù)實際適用條件,選擇軟件規(guī)模估算方法是非常必要的。通過對大多數(shù)軟件規(guī)模估算場景的分析,在借鑒前人研究的基礎(chǔ)上,此文提出采用類比估算方法的軟件項目規(guī)模估算策略。首先,在估算過程中采用歷史項目數(shù)據(jù),作為現(xiàn)有評價體系的輸入,演化出利用屬性值進行類比估算的模型;其次,通過實證研究,驗證類比估算具體操作步驟,并以數(shù)據(jù)說明其在真實案例中的適用性,揭示其操作可行性;最后,通過對估計結(jié)果誤差進行分析,分析類比估算時目標項目規(guī)模估算值與實際工作量之間的差別,得出估算結(jié)果可信度較高的結(jié)論。因此,類比估算可作為一種在大多數(shù)場景下都比較適用的估算方法,能夠輔助我們的項目決策。

      4 結(jié)語

      針對目前軟件項目規(guī)模估算中出現(xiàn)的問題,本文探索了基于類比估算的軟件項目規(guī)模估計方法。針對歷史項目數(shù)據(jù)以及現(xiàn)有評價體系,給出利用屬性值進行類比估算的模型;給出類比估算操作步驟;在理論研究基礎(chǔ)上,通過實例驗證對目標項目規(guī)模進行估算。通過實證表明,類比方法能有效減少偏差,為項目的成本編制提供有效參考,該方法能夠為軟件項目規(guī)模估計和項目基線的定義提供一種有效實用的手段,輔助項目決策,提高項目管理質(zhì)量。

      此文嘗試在前人理論研究成果基礎(chǔ)上,將類比估算應用于軟件項目規(guī)模估計實踐中,利用歷史數(shù)據(jù)的估算,充分地預測了未來軟件項目成本及軟件規(guī)模。同時,由于基礎(chǔ)數(shù)據(jù)樣本具有代表性,能夠可靠地評估預測風險,從而對置信度進行有效評判,避免了結(jié)論的主觀性。

      雖然此文在估算結(jié)果方面取得比較滿意的結(jié)果,但是還存在一定的不足,文章文在前期對數(shù)據(jù)集進行一定的處理,剔除掉數(shù)據(jù)有缺失的項目,加拿大Calgary大學的Li Jinzhou和Ruhe等人在其研究成果中剔除可以利用Rough set analysis方法來解決數(shù)據(jù)缺失問題,在接下來的進一步研究中可以進一步加以應用。另外,關(guān)于參數(shù)的相似度貢獻系數(shù)的確定方面,此文并未找出一種更合理的確定方法,需要改進。

      參考文獻

      [1]The Standish Group.2004 the 3rd Quarter Research Report[EB/OL].http://www.standishgroup.com.

      [2]Delany SJ,Cunningham P,Wilke W.The limits of CBR in software project estimation. In: Gierl L,Lenz M, eds.Proc. of the 6th German Workshop on Case-Based-Reasoning[M].Berlin: Springer-Verlag,1998.

      [3]B.W.Boehm.“Software Engineering Economics”IEEE Trans[D].Software Eng.,1984.

      [4]Mukhopadhyay T,Vicinanza S S,Prietula M J.Examining the Feasibility of a Case Based Reasoning Model for Software Effort Estimation[J].MIS Quarterly,1992(6):155-171.

      [5]Shepperd M,Schofield C.Estimating Software Project Effort Using Analogies [J].IEEE Trans on Software Engineering,1997,23(12):736-743.

      [6]Li J,Ruhe G,Al2Emran A,etal.A Flexible Method for Effort Estimation by Analogy[J].Empirical Software Engineering,2006,12(1):65-106.

      Angelis L,Stamelos I.A Simulation Tool for Efficient Analogy Based Cost Estimation[J].Empirical Software Engineering,2000,5(1):35-68.

      [7]Richter M M.On the Notion of Similarity in Case-Based Reasoning[C]//Della Riccia Getal ed.Mathematical and Statistical Methods in Artificial Intelligence,1995:171-184.

      [8]Wangenheim C G,Alt hoff K,Barcia R M.Goal-Oriented and Similarity-Based Retrieval of Software Engineering Experience ware[C]//Proc of t he 11th Intl Conf on Software Engineering and Knowledge Engineering,Learning Software Organizations,Methology and Application, 1999:118-141.

      [9]Fenton N E,Pfleeger S L.Software Metrics: A Rigorous & Practical Approach [M].2nd Edition.Boston:PWS Publishing Company, 2000.

      [10]Briand L C,Emam K,Bomarius F.COBRA:A Hybrid Method for Software Cost Estimation, Benchmarking and Risk Assessment[C]//Proc of the 20th Intl Conf on Software Engineering,1998:390-399.

      [11]Angelis L,Stamelos I.A Simulation Tool for Efficient Analogy Based Cost Estimation[J].Empirical Software Engineering,2000,5(1):35-68.

      [12]Maxwell K D.軟件管理的應用統(tǒng)計學[M].張麗萍,梁金昆,譯.北京:清華大學出版社,2006.

      [13]Project Management Institute.項目管理知識體系指南[M].5版.許江林,譯.北京:電子工業(yè)出版社,2013:169.

      猜你喜歡
      估算
      既重“估”,也重“算”
      淺談小學數(shù)學低年級計算教學的幾點做法
      基于BIM技術(shù)的工程項目投資控制
      “商是兩位數(shù)的筆算除法”教學設(shè)計與反思
      小學數(shù)學估算教學策略
      談高中物理問題的速算
      談高中物理問題的速算
      微地形風速變化特征與微區(qū)域輸電線路設(shè)計的初步研究
      科技傳播(2016年1期)2016-03-22 00:42:32
      如何提高一年級學生的口算能力
      基于人工神經(jīng)網(wǎng)絡(luò)的車削加工成本快速估算
      科技視界(2015年30期)2015-10-22 12:23:01
      双流县| 岚皋县| 中牟县| 玛曲县| 右玉县| 星子县| 永济市| 莱州市| 游戏| 若尔盖县| 茂名市| 乌海市| 金堂县| 绥德县| 东光县| 苗栗市| 安新县| 麻阳| 安康市| 彩票| 左权县| 晋城| 大港区| 巴楚县| 双江| 临江市| 奎屯市| 左云县| 广宗县| 陆丰市| 汝城县| 石渠县| 广东省| 汪清县| 镶黄旗| 锡林郭勒盟| 崇左市| 宽甸| 祁阳县| 青神县| 灌南县|