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

基于蟻群神經網絡算法的軟件預警評估

2016-08-08 08:21:09
微型電腦應用 2016年7期

賈 瑛

?

基于蟻群神經網絡算法的軟件預警評估

賈瑛

摘 要:針對傳統軟件項目預警的分析的缺點,引入蟻群神經網絡算法來進行軟件預警評估,從進度、成本、質量3個角度建立預警評估指標。通過蟻群神經網絡算法對項目流程進行中的各個環節點進行分析,設定預警信號點輔助決策者對整個項目進行控制。以某公司2015年間所有開發項目為數據進行仿真,得出的預警評估數據要更貼近于軟件開發項目的實際風險情況。通過預警評估定量分析后得到的數據,項目經理可以分析誘發軟件項目危機的原因,對軟件項目進行改進。

關鍵詞:軟件過程;預警評估;項目經理;神經網絡

0 引言

國內外軟件公司對軟件項目預警的分析方法目前較為常用的有兩個,分別是經驗判斷法及風險評分法。經驗判斷法指的是項目經理、公司高層管理人員、技術專家等以個人知識、技能、經驗等來對軟件項目進行評估,這一方法具有較強的主觀性。經驗判斷法通常是依靠對項目進度表等的分析來進行。風險評分法指的是利用數學及統計學相關理論模型為依托來進行風險評估。相關理論模型是建立在大量歷史數據基礎上的,采取定量分析方法來綜合評判軟件項目所包含的風險等,從而為項目決策提供依據。經驗判斷法與風險評分法各有千秋,二者均有廣泛的應用[1]。上述兩個方法在使用過程中均需要利用影響軟件項目的因素的資料。不同的是,風險評分法是將影響軟件項目的因素通過統計資料進行深入分析,找出各因素與其它因素之間的聯系,得出不同因素的重要性,并賦予其權重,從而為決策提供依據[2]。對于經驗判斷法,其關注的重心更多的是在影響流程管理各項因素重要性等級變動方面。風險判斷法能夠很好的對影響軟件質量的一些傳統因素進行深入分析與論證,而經驗判斷法則可更進一步,甚至可以用來分析不符合質量組監管的因素。風險評分法充分考慮了各項因素并進行了升華提煉,而經驗判斷法則受人的影響較大,通常依次評價影響軟件項目的各項因素。

1 軟件預警評估

當一個軟件開發項目啟動時,會因為其涉及的規模、種類、時間等因素來修改、裁剪軟件開發流程,而一般是根據開發者項目經理或流程控制組的經驗而定,當然這種人為的確定并不符合科學性。因此新的系統需要有種輔助流程管理構建的功能,本系統采用了蟻群神經網絡算法,在選擇任務portlet的時候,通過對項目規模、種類、時間等因素的角度出發,對需要的portlet進行分析學習,并最終給出一個優化解反饋給用戶。

軟件服務評估的首要工作是建立軟件服務評估指標體系。結合目前國內外軟件行業成熟的評估指標,根據軟件行業的實際情況,可建立一級指標3個:進度、成本和質量 。針對傳統神經網絡算法容易陷入局部極小的不足,本文提出了蟻群訓練方法。蟻群神經網絡訓練過程可看作一個最優化問題,即找到一組最優的實數權值組合,使得在此權值下輸出結果與期望結果之間的誤差最小,蟻群算法成為尋找這一最優權值組合的較好選擇。

在蟻群神經網絡的結構已經確定的情況下,采用蟻群方法訓練神經網絡的具體步驟如下:

Step1:初始化

Step2:釋放m只螞蟻。螞蟻k依據如下概率公式從一點移動到下一點,如公式(1):

螞蟻記錄所經過點的標號,即為該權值選擇一個數值,并記錄在tabuk中。當螞蟻為所有權值參數選擇值后,螞蟻完成了一次遍歷,記錄的所有值構成了該神經網絡的所有參數。輸入訓練樣本,得到相應的輸出,計算誤差EO。

Step3:所有螞蟻構造解以后記錄誤差較小的σ權值,并比較最小的誤差與EO的大小。如果轉 step7,否則轉step4。

Step4:信息素更新。按照“精英”更新策略對信息素按下式進行更新,如公式(2):

其中公式(3):

Step5:重復step2—step3,直到滿足最大迭代次數。

Step6:采用驗證樣本對訓練好的神經網絡的泛化能力進行檢驗,如果驗證誤差滿足要求,退出程序;否則轉step1,重新開始訓練。

算法程序流程圖如圖1所示:

圖1 蟻群神經網絡訓練流程圖

根據蟻群神經網絡模型對所有的軟件服務進行評估,并得到一個適合相應軟件項目開發的軟件流程服務[4]。

輸入:項目預算,項目規模、項目種類選擇、項目計劃完成時間、是否已有文檔、原文檔影響因子、技術風險、人力風險。

輸出:項目軟件流程管理裁剪模型。

2 基于蟻群神經網絡算法的軟件預警評估應用

2.1 評估指標體系建立

分析軟件項目風險的影響因素是建立軟件預警評估指標體系的基礎,是構建評估體系的基礎。按照以上對于軟件過程管理模型的影響因素的分析,系統可以按照軟件開發流程的狀態是適當調整工程管理的順序及權重。軟件過程中程序基于對項目大致可分從以下三個方面考慮:即進度、成本和質量。

(1)進度:

這是項目開發過程中非常關鍵的一個流程控制,軟件項目組開發應該盡量避免開發時間超支、項目范圍發生不可控的重大改變,校正行動拙劣以及客戶的不滿不斷增加。不過節點性事件未能按時完成并不意味著項目已經失控。軟件項目很少會或從來不會嚴格地遵循其詳細的時間計劃;實際中,在項目過程中,節點性事件的滯后經常是時多時少,不應該用查看某個節點性事件是否滯后來判斷某個項目的可控性。換而取代的是滯后程度判定項目進度的好壞。如表1所示:

表1 公司進度報表

(2)預算:

高額的軟件開發項目經費可以換來更好的進度情況,但是,實際當中,項目成本很可能遠遠超過客戶所愿意支付的資金。可以通過項目收支平衡點來進行比較。收支平衡值是公司預期的投資回報率的函數。如2所示:

表2 公司預算報表

>7$180000$900000

(3)質量:

多數軟件開發機構將軟件質量定義為:在過去的時間階段,存在很多質量問題的數量;對軟件進行評估的客戶或者用戶對軟件的滿意度。如表3所示:

表3 公司質量報表

2.2 評估指數分析

根據三項數據顯現,該項目在進行中期時,出現嚴重問題,包括預算超支及質量問題。當項目狀態到達危機時候,項目經理或流程控制組應當及時向上級發出預警信號,提醒決策者應該放棄項目或者改變項目流程。而這些完全需要靠一個經驗豐富的高層領導做出及時的判斷。而在本系統設計中,系統將通過蟻群神經網絡算法對項目流程進行中的各個環節點進行分析,設定預警信號點輔助決策者對整個項目進行控制。

由于每個公司的軟件開發項目參數是保密的,因此本借鑒的數據來源于某公司2015年間所有項目的開發指數,僅作為模擬數據進行學習,并通過向資深人士求教及以往項目中相應的做法對本系統神經網絡進行訓練。項目匯總表如表4所示:

表4 匯總表

這個使用第三方軟件對數據進行模擬。軟件為java開源蟻群神經網絡包,如圖2所示:

圖2 神經網絡數據處理軟件截圖

每個任務點將被劃分為關鍵任務和可選任務兩類,再根據其分類給每個任務進行編碼。使用模擬數據進行學習,輸入參數為各個階段的質量指數、進度控制和超支比率。按照每個項目的學習迭代次數1000次,并規定得到值為[0,1],當輸出值靠近0時表示安全,反之,當輸出值靠近1的時候發出預警信號,并修正每個任務的權重[5]。

在模擬數據中,事先認定項目編號為 N003LIANGXIN 和NO32CAFE為問題項目,N003LIANGXIN項目是一個政府合作項目,由于當時企業正處于轉型階段,技術人員流動較大,并且由于是第一次和政府機關合作,未考慮到一些額外的影響因素,導致項目預算和進度受到嚴重影響,故而成為問題項目;而NO32CAFE由于與客戶溝通問題,使項目進度受到擱置,引起的成本上升。其項目輸出值近似1,即0.9

表5 蟻群神經網絡數據處理結果

N001waterfactory  20%  94%  99.6%  0.232 N003LIANGXIN  35%  85%  87.9%  0.933 NO05JUNLI  15%  99.8%  99.0%  0.137 NO09SH-BANK  10%  99.6%  99.8%  0.129 NO14JAP-SALE  18%  99.4%  99.4%  0.217 NO32CAFE  12%  85.9%  89.3%  0.865 NO42MAGZONG  14%  96%  99.9%  0.210 NO44CMM  12%  98%  99.2%  0.219 NO54GECompany  4%  99.8%  99.1%  0.089 NO58mock-prj  6%  99.3%  99.0%  0.100

由表 5得,事先認定的項目 N003LIANGXIN和NO32CAFE的輸出值分別為0.933和0.865,取最小值0.865,當項目某階段的輸出值大于0.865時,系統則給出預警信號,并即時更改各個任務的權重以做到對軟件項目開發的改進。

分析結果數據后發現,模型具有較高的準確率,達到94.5%,驗證樣本采集更高,幾乎達到100%。出現這種判斷準確率高的主要原因是神經網絡知識發現能力及特征抽取能力較強,對本論文的信用評估模式非常有效;另外一個原因是驗證樣本集數量較小,這對結果也會產生一定的影響,但總的來說,最終實驗的效果非常理想。如果計算能力進一步增強,數據集的數量進一步提高,相信實驗結果將更好。

通過該模型對神經網絡軟件項目預警模型進行研究與分析,首先減少了在給不同要素賦值時人為因素影響程度,評估結果準確性得到提高,并且結果也更讓人信服;其次,由于神經網絡具有非常強的非線性處理能力,可以更加準確地得出不同要素對評估結果產生影響的關系。最終的結果充分說明蟻群神經網絡模型能夠很好地解決軟件項目風險評估問題,具有廣闊的應用前景。

在軟件項目在進行中,通過預警模塊的提示,項目經理可以即時的對項目管理方法進行調整,比如,當軟件項目的出現了進度遲緩嚴重的時候,項目經理可以把軟件過程管理做適當調整,改為敏捷型開發,增加軟件項目的開發速度,而當軟件項目被增加投資,擴大范圍的時候,項目經理適時可以把軟件過程管理升級為標準的RUP管理模式,以適合軟件項目開發的穩定性。

2..3 基于蟻群神經網絡算法與其他方法比較

本文為驗證基于蟻群神經網絡算法作出的軟件預警評估所得到結果的可參考性,使用常用的權值法對原先的數據進行分析,如表6所示:

表6 權重法下預警評估結果表

本文假設質量權重為0.3,進度為0.3,成本為0.4,進行數據計算。按照先前對問題項目的截取,首先觀測N003LIANGXIN和NO32CAFE的值分別是0.7116和0.6509這個值處于比較低的位置,但是很明顯的可以發現NO54GE Company的權值法輸出值為0.7078,小于N003LIANGXIN 的 0.7116,但實際中 NO54GECompany項目并未出現和N003LIANGXIN類似的軟件風險問題,因此權值法失去了可參考性。另外數據分析得到的最小值為0.6509,最大值為0.7404,值域跨度不大,不易進行區分分級,并且N001waterfactory項目和NO05JUNLI項目的評估指數相等,不符合對實際軟件項目的風險描述。綜上所述,基于蟻群神經網絡的預警評估相比權重法下的預警評估要更貼近于軟件開發項目的實際風險情況。

當軟件項目在經過軟件預警評估定量分析后得到的數據,根據這個數據項目經理可以分析誘發軟件項目危機的原因,對軟件項目進行改進。如表7所示:

表7 軟件過程改進方案表

3 總結

軟件項目風險的誘因可以從質量、進度和成本3個方面來考慮,而軟件過程管理模型也正是從這3個因素來開展,不同的軟件過程管理模型對這個 3個因素的側重點大有不同,但總的來說,還沒有一個完整的包含所有因素在內的軟件過程管理模型。因此當軟件風險發生時,在確定軟件風險引起的主要原因后,對軟件過程管理進行裁減或者改進。比如,當軟件項目進度嚴重超時的時候,項目可以改用極限編程管理模型,暫時刪減去項目文檔的管理,加快軟件開發;又如,當軟件項目開發到中期的時候出現了嚴重的質量問題,項目經理可以采用RUP軟件過程管理模型增強測試計劃,保障軟件項目開發質量;即便是軟件項目后期陷入成本危機的時候,甚至達到無法立刻解決的時候,項目經理也可以通過軟件預警評估對軟件項目采取暫時停止的命令,以便防治軟件項目越陷越深。

參考文獻

[1] 王世安.軟構建的可復用行量化評價模型研究[J].計算機工程與設計,2008,29(10):2576-2580.

[2] 萬江平, 楊建梅. 軟件過程改進的復雜性工作程序研究[M]. 北京: 科學出版社, 2004.

[3] 張道宏,張玻,尹成果:基于BP神經網絡的個人信用評估模型[J],情報雜志,2006年(1):178-182.

[4] 龐素琳,王燕鳴,黎榮舟:基于BP算法的信用風險評價模型研究,數學的實踐與認識,2003年(-8):48-55.

[5] 潘梅森 顏君顏. 基于LVQ的軟件項目風險評估模型的研究[J].計算機工程與應用.2006-12:126-130.

中圖分類號:TP311

文獻標志碼:A

文章編號:1007-757X(2016)07-0074-04

收稿日期:(2016.01.21)

作者簡介:賈 瑛(1983-),女,哈密,寶雞職業技術學院,講師,研究方向:網絡和多媒體,寶雞,721013

Software Warning Evaluation Based on Ant Colony Neural Network Algorithm

Jia Ying
(Baoji Professional Technology Institute, Baoji 721000, China)

Abstract:In view of the shortcomings of traditional software project warning, this paper introduces the ant colony neural network algorithm to carry out software early warning evaluation, establishing early warning evaluation index from the schedule, cost, quality three angles. Analyzing the project process of each loop node through the ant colony neural network algorithm, it sets the early warning signal point to control the whole project. With a company for 2015 years of all development projects for the simulation of the data, this paper draws the early warning assessment data to be much closer to the actual risk of software development projects. Through the data obtained after the quantitative analysis of the early warning, the project manager can analyze the causes of the project of the software project, and improve the software project.

Key words:Software Process; Early Warning Evaluation; Project Manager; Neural Network

主站蜘蛛池模板: 国产麻豆永久视频| 国产小视频在线高清播放| 亚洲 欧美 中文 AⅤ在线视频| 九月婷婷亚洲综合在线| 亚洲毛片一级带毛片基地| 色综合日本| 亚洲精品国产精品乱码不卞| 精品一区二区三区水蜜桃| 日本高清视频在线www色| 亚洲福利片无码最新在线播放| 久久国产精品娇妻素人| 欧美日本激情| 国产亚洲欧美在线专区| 亚洲国产欧美国产综合久久 | 日韩欧美国产中文| 99视频在线免费| 国产成人一区| 亚洲成A人V欧美综合天堂| 日本成人在线不卡视频| 亚洲妓女综合网995久久| 欧美亚洲国产日韩电影在线| 亚洲中久无码永久在线观看软件| 福利国产微拍广场一区视频在线| 在线播放真实国产乱子伦| 啊嗯不日本网站| 国产97视频在线观看| 日本欧美视频在线观看| 日韩资源站| 精品自窥自偷在线看| 国产精品视频白浆免费视频| 就去吻亚洲精品国产欧美| 国产欧美日韩资源在线观看| 综合色区亚洲熟妇在线| 久久免费观看视频| 热99精品视频| 日韩精品无码免费一区二区三区| 91成人免费观看在线观看| 国产亚洲精品97AA片在线播放| 久久婷婷六月| 日本伊人色综合网| 最新亚洲人成无码网站欣赏网| 国产成人免费| 99久久99这里只有免费的精品| 亚洲精品动漫在线观看| 国产综合日韩另类一区二区| 久久亚洲国产最新网站| 国产精品第一区在线观看| 国产性爱网站| 亚洲视频色图| 日本亚洲成高清一区二区三区| 亚洲欧美另类色图| 嫩草在线视频| 国产精品丝袜在线| 国产呦精品一区二区三区下载| 免费一级毛片在线播放傲雪网| hezyo加勒比一区二区三区| 91久久天天躁狠狠躁夜夜| 欧美亚洲香蕉| 国产永久在线视频| 91精品国产无线乱码在线| jizz国产视频| 久久天天躁狠狠躁夜夜2020一| 国产成人成人一区二区| 国产免费久久精品99re不卡| 久久精品只有这里有| 99热这里只有精品免费| 她的性爱视频| 91美女视频在线| 无码内射在线| 国产精品99r8在线观看| 二级特黄绝大片免费视频大片| 99在线观看免费视频| 国产91在线|中文| 亚洲精品无码av中文字幕| 中文字幕欧美日韩| 一边摸一边做爽的视频17国产| 亚洲美女操| 国产专区综合另类日韩一区| 日韩精品一区二区三区免费| 亚洲成人精品| 一本大道香蕉高清久久| 青青青视频91在线 |