資料介紹
傳統(tǒng)的軟件可靠性模型大多假設(shè)排除錯誤的時間忽略不計(jì),基于假設(shè)過于苛刻,影響了模型應(yīng)用的范圍和精度。因此在JM模型的基礎(chǔ)上,提出了排錯時間為負(fù)指數(shù)分布的軟件可靠性模型及本模型的極大似然參數(shù)估計(jì)方法。通過用馬爾可夫過程描述系統(tǒng)的狀態(tài),分析了模型的數(shù)值求解方法,并討論了使用在本模型中的失效預(yù)測、剩余錯誤預(yù)測和等待排出的錯誤數(shù)預(yù)測公式。同時利用實(shí)際的工程數(shù)據(jù)對本模型的應(yīng)用過程進(jìn)行了驗(yàn)證。
關(guān) 鍵 詞 軟件可靠性模型; 軟件可靠性; 排錯時間; JM模型
在現(xiàn)有的軟件可靠性模型中,絕大多數(shù)都假設(shè)排除錯誤的時間忽略不計(jì),這些模型的可靠性預(yù)測都依賴于這條假設(shè)。顯然,忽略排錯時間的假設(shè)過于苛刻,尤其在軟件工程的實(shí)踐中,排錯過程已經(jīng)成為影響軟件可靠性的重要環(huán)節(jié)。在得不到排錯過程數(shù)據(jù)的情況下,忽略排錯時間使得可靠性模型變得簡單,同時也降低了模型精度和結(jié)果的可信度。隨著軟件開發(fā)過程管理水平的提高, 在有條件獲得排錯過程的有關(guān)數(shù)據(jù)條件下,則應(yīng)將考慮排錯過程對可靠性的影響,本文提出了考慮排錯時間的可靠性模型。
1 JM模型
JM模型(Jelinski and Moranda Model,JM)由文獻(xiàn)[1]提出,是最早的軟件可靠性模型之一,該模型對軟件可靠性定量分析技術(shù)的建立和發(fā)展做出了重要的貢獻(xiàn)[2, 3]。
模型基本假設(shè)如下:1) 軟件測試的方式與使用方式相同;2) 軟件每個錯誤導(dǎo)致系統(tǒng)失效的可能性相同;3) 軟件中的錯誤相互獨(dú)立,各次失效的間隔時間也相互獨(dú)立;4) 當(dāng)失效發(fā)生后,導(dǎo)致失效的軟件錯誤立刻被排除,排錯時間忽略不計(jì),且不引入新的錯誤;5) 在測試開始時,軟件中有N0個錯誤。N0是一個未知常數(shù);6)軟件的失效率Z在每個失效間隔內(nèi)是常數(shù),其數(shù)值與軟件中殘留的錯誤數(shù)成正比,比例系數(shù)為Φ。假
設(shè)1)保證了使用測試數(shù)據(jù)對可靠性進(jìn)行了模型評估的正確性。假設(shè)2)使得不同的失效率具有相同的分布特性。假設(shè)3)排除了錯誤之間的相互影響。假設(shè)4)則將測試階段中的查錯、排錯兩種活動簡化為只有查錯一種活動,忽略了排錯過程和排錯結(jié)果對可靠性的影響。假設(shè)1)~4)廣泛應(yīng)用在多種軟件可靠性模型之中[2,3]。根據(jù)JM模型的假設(shè)5)、6)可以得知,在第i個測試區(qū)間內(nèi),失效率函數(shù)為:
Z(Δt | ti?1)=Φ(N0?i+1)
假設(shè)失效發(fā)生時刻的隨機(jī)變量為ξ, 用F(t)表示ξ的分布函數(shù).根據(jù)狀態(tài)轉(zhuǎn)移概率的定義可以得到: 000{|}{}()()(|)limlimlim{}(1())1()tttPttttPtttFttFtFtZttttPthFtξξξξΔ→Δ→Δ→′+Δ>>+Δ>+Δ?Δ====ΔΔ>?≥≥ (1)
求解這個一階常系數(shù)微分方程,在初始條件F(0)=0的情況下,可得分布函數(shù):
01() = 1exp{(|)} = 1exp{(+1)}iFtZtttNitΦ??Δ??? (2)
可見,系統(tǒng)在經(jīng)歷了i?1次失效后,第i次失效發(fā)生的時間服從參數(shù)Φ(N0?i+1)的負(fù)指數(shù)分布。其密度函數(shù) f(t) = F′ (t) =Φ(N0?i+1)exp{?Φ(N0?i+1)t},可靠性函數(shù)R(t) = exp{?Φ(N0?i+1)t},第i次失效與第i?1次失效的間隔時間 =01(1iMTBFNiΦ=?+,則第k次失效發(fā)生的時間 。失效次數(shù)的均值公式為: 1kkitMTB==Σ
(3) 0()=[1exp()]mtNtΦ??
剩余錯誤數(shù)的均值為:
0()=exp()etNt?Φ (4)
2 負(fù)指數(shù)分布排錯時間的軟件可靠性模型
2.1 基本假設(shè)
本模型的假設(shè)包括JM模型的假設(shè)1)~3)和假設(shè)5),對假設(shè)4)和假設(shè)6)進(jìn)行如下修改。
2.1.1 對假設(shè)4)的修改:負(fù)指數(shù)時間的排錯過程
假設(shè)4.1),每次的軟件失效是由一個錯誤引起的;假設(shè)4.2),當(dāng)失效發(fā)生后,排錯活動立刻進(jìn)行;假設(shè)4.3),每次排除一個錯誤,排錯順序按照失效的順序進(jìn)行,如果新的排錯任務(wù)到達(dá)時上一個錯誤仍未被排除,則新的排錯任務(wù)進(jìn)入排隊(duì);假設(shè)4.4),排錯是完美的,引起失效的錯誤一定能夠排除,且不引入新的錯誤;假設(shè)4.5),錯誤的排除時間服從負(fù)指數(shù)分布。在上述排錯過程假設(shè)的5個方面中,假設(shè)4.1)可以從原JM模型的假設(shè)2)和假設(shè)3)推導(dǎo)得到;假設(shè)4.2)和假設(shè)4.3)反映了大多數(shù)軟件排錯活動的特點(diǎn);假設(shè)4.4)對實(shí)際的排錯活動進(jìn)行了簡化,本模型暫不考慮不完美排錯的情況。
負(fù)指數(shù)分布能夠較好地描述許多人工活動的服務(wù)時間[4];文獻(xiàn)[5]對178個排錯時間樣本進(jìn)行了分析,認(rèn)為排錯時間服從負(fù)指數(shù)分布;在文獻(xiàn)[4]中,通過Shuttle項(xiàng)目中包含85個數(shù)據(jù)項(xiàng)的排錯時間樣本分析,認(rèn)為其排錯時間也服從參數(shù)為平均排錯時間的負(fù)指數(shù)分布。由于負(fù)指數(shù)分布的排錯時間具有較為廣泛的代表性,因此,本模型假設(shè)排錯時間服從參數(shù)為μ0的負(fù)指數(shù)分布,其分布函數(shù)為:0()1exp()Fttμ=??。
2.1.2 對假設(shè)6的修改:失效過程假設(shè)
假設(shè)6.1),軟件的瞬時失效率Z在每個失效間隔內(nèi)是常數(shù),其數(shù)值與軟件中殘留的錯誤數(shù)成正比,比例系數(shù)為Φ,假設(shè)6.2)一旦錯誤被排除,立刻以新的軟件版本為對象進(jìn)行測試。本模型假設(shè)6.1)具有與原JM模型相同的實(shí)質(zhì),但瞬時失效率具有不同的表達(dá)式。假設(shè)當(dāng)前已經(jīng)發(fā)生了i次失效,且已修復(fù)了j個錯誤(j≤i),則稱系統(tǒng)當(dāng)前處于狀態(tài)(i,j)。根據(jù)假設(shè)6),處于狀態(tài)(i, j)的系統(tǒng)的瞬時失效率為( | )=Ztti0(NjΦ?。從上式可以看出,在初始錯誤一定的情況下,瞬時失效率只與已經(jīng)排除的錯誤數(shù)有關(guān),而與失效次數(shù)無關(guān)。這是本模型與JM模型失效過程的最大區(qū)別。假設(shè)6.2)符合一般的測試過程,該假設(shè)將影響到從失效時刻得到失效間隔時間的處理。
2.2 模型的馬爾可夫過程
如果用二元組(i,j)表示系統(tǒng)的當(dāng)前狀態(tài),其中i為失效次數(shù),j為已經(jīng)修復(fù)的錯誤數(shù),N0為初始錯誤數(shù),則系統(tǒng)狀態(tài)的變化構(gòu)成一個連續(xù)時間的馬爾可夫過程,如圖1所示,其中瞬時狀態(tài)轉(zhuǎn)移概率為:
- 動態(tài)可靠性約束的資源分配模型DRC-MSMOTRA 14次下載
- 產(chǎn)品性能可靠性評估的時序分析方法說明 17次下載
- 主動容錯技術(shù)如何提高存儲系統(tǒng)的可靠性詳細(xì)算法模型資料說明 9次下載
- 基于軟件可靠性增長模型研究 0次下載
- 基于GSPN的機(jī)載構(gòu)件化軟件可靠性評估 7次下載
- 軟件可靠性多模型綜合預(yù)測研究 10次下載
- 提高軟件可靠性模型精度的新方法 0次下載
- 軟件缺陷及其對軟件可靠性的影響分析 25次下載
- 基于灰色神經(jīng)網(wǎng)絡(luò)對軟件可靠性模型的研究 32次下載
- 考慮軟件補(bǔ)丁的軟件可靠性模型 0次下載
- 基于軟件過程的軟件可靠性預(yù)測運(yùn)作模型 0次下載
- 軟件可靠性數(shù)據(jù)預(yù)處理研究
- 軟件可靠性建模研究
- 修理延遲的n部件串聯(lián)系統(tǒng)的可靠性分析
- 兩不同部件冷貯備系統(tǒng)的可靠性分析
- 保證負(fù)壓密封檢漏儀的精度和可靠性的方法 451次閱讀
- 電子元器件使用可靠性怎么判斷 1894次閱讀
- 可靠性與安全性 6245次閱讀
- 詳細(xì)的理解可靠性分配 2093次閱讀
- 如何提高電子元器件可靠性? 908次閱讀
- 嵌入式軟件的可靠性設(shè)計(jì) 840次閱讀
- 如何提高硬件可靠性 1082次閱讀
- 醫(yī)療設(shè)備研制中的可靠性設(shè)計(jì)方法與分析 4445次閱讀
- 如何實(shí)現(xiàn)電源的可靠性設(shè)計(jì) 3555次閱讀
- 可靠性的歷史!可靠性的相關(guān)定義和概念 8935次閱讀
- 機(jī)器學(xué)習(xí):泊松分布與指數(shù)分布 4590次閱讀
- 基于軟件的空間輻照下FPGA可靠性設(shè)計(jì)方法 2556次閱讀
- 軟件可靠性設(shè)計(jì)研究及應(yīng)用 2316次閱讀
- 單片機(jī)應(yīng)用系統(tǒng)的可靠性設(shè)計(jì) 3673次閱讀
- 不花錢的可靠性設(shè)計(jì)經(jīng)驗(yàn) 871次閱讀
下載排行
本周
- 1電子電路原理第七版PDF電子教材免費(fèi)下載
- 0.00 MB | 1490次下載 | 免費(fèi)
- 2單片機(jī)典型實(shí)例介紹
- 18.19 MB | 93次下載 | 1 積分
- 3S7-200PLC編程實(shí)例詳細(xì)資料
- 1.17 MB | 27次下載 | 1 積分
- 4筆記本電腦主板的元件識別和講解說明
- 4.28 MB | 18次下載 | 4 積分
- 5開關(guān)電源原理及各功能電路詳解
- 0.38 MB | 11次下載 | 免費(fèi)
- 6100W短波放大電路圖
- 0.05 MB | 4次下載 | 3 積分
- 7基于AT89C2051/4051單片機(jī)編程器的實(shí)驗(yàn)
- 0.11 MB | 4次下載 | 免費(fèi)
- 8基于單片機(jī)的紅外風(fēng)扇遙控
- 0.23 MB | 3次下載 | 免費(fèi)
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234313次下載 | 免費(fèi)
- 2PADS 9.0 2009最新版 -下載
- 0.00 MB | 66304次下載 | 免費(fèi)
- 3protel99下載protel99軟件下載(中文版)
- 0.00 MB | 51209次下載 | 免費(fèi)
- 4LabView 8.0 專業(yè)版下載 (3CD完整版)
- 0.00 MB | 51043次下載 | 免費(fèi)
- 5555集成電路應(yīng)用800例(新編版)
- 0.00 MB | 33562次下載 | 免費(fèi)
- 6接口電路圖大全
- 未知 | 30320次下載 | 免費(fèi)
- 7Multisim 10下載Multisim 10 中文版
- 0.00 MB | 28588次下載 | 免費(fèi)
- 8開關(guān)電源設(shè)計(jì)實(shí)例指南
- 未知 | 21539次下載 | 免費(fèi)
總榜
- 1matlab軟件下載入口
- 未知 | 935053次下載 | 免費(fèi)
- 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
- 78.1 MB | 537791次下載 | 免費(fèi)
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420026次下載 | 免費(fèi)
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234313次下載 | 免費(fèi)
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費(fèi)
- 6電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191183次下載 | 免費(fèi)
- 7十天學(xué)會AVR單片機(jī)與C語言視頻教程 下載
- 158M | 183277次下載 | 免費(fèi)
- 8proe5.0野火版下載(中文版免費(fèi)下載)
- 未知 | 138039次下載 | 免費(fèi)
評論