王洪坡,周紅建,王洪雷
(1.95899部隊(duì)軟件測評中心,北京 100076;2.93619部隊(duì)自動化站,天津 301716)
基于S曲線模型的航空裝備嵌入式軟件量化安全評估
王洪坡1,2,周紅建1,王洪雷2
(1.95899部隊(duì)軟件測評中心,北京 100076;2.93619部隊(duì)自動化站,天津 301716)
軟件測試是航空裝備嵌入式軟件生命周期中的重要環(huán)節(jié),如何評估軟件測試的效果是一個(gè)難題。以軟件測試為基礎(chǔ),討論了航空裝備嵌入式軟件的生命周期過程中安全缺陷出現(xiàn)的規(guī)律,認(rèn)為它的安全缺陷同樣滿足S曲線。引入了AML建模理論,基于軟件測試數(shù)據(jù),建立了某航空嵌入式軟件的S曲線模型,預(yù)測了軟件的總安全缺陷數(shù)。對AML理論進(jìn)行了拓展,討論了轉(zhuǎn)折點(diǎn)的選取原則。最后,通過卡方檢驗(yàn)和預(yù)測檢驗(yàn)的方法,驗(yàn)證了預(yù)測模型與測試數(shù)據(jù)的匹配性。檢驗(yàn)結(jié)果表明,AML模型能夠很好地模擬實(shí)際測試情況,一定程度上消除了數(shù)據(jù)隨機(jī)性的影響,其模型具有一定可信度,能夠用于航空裝備嵌入式軟件的安全性分析。
航空裝備嵌入式軟件;S曲線模型;安全缺陷發(fā)掘;量化
軟件安全性早在20世紀(jì)90年代就被計(jì)算機(jī)科學(xué)家們公認(rèn)為21世紀(jì)軟件研究與發(fā)展的重要戰(zhàn)略方向之一。軟件安全性可簡單概括為:軟件在任何情形下不能使其控制的系統(tǒng)對人們的生命、財(cái)產(chǎn)及其所處的自然環(huán)境造成危害[1]。
軟件已經(jīng)成為影響國民經(jīng)濟(jì)、軍事、政治乃至社會生活的重要因素。軟件缺陷是導(dǎo)致相關(guān)系統(tǒng)出錯(cuò)、失效、崩潰甚至機(jī)毀人亡的潛在根源。例如,2007年2月11日,12架F-22在穿越國際日期變更線時(shí),因軟件缺陷問題造成導(dǎo)航故障,戰(zhàn)機(jī)被迫在無導(dǎo)航和通信能力下危險(xiǎn)返航[2]。1996年6月,歐洲“阿麗亞娜”號火箭因?qū)Ш较到y(tǒng)的計(jì)算機(jī)軟件出現(xiàn)故障,致使火箭墜毀,造成數(shù)億美元的巨大損失;2005年3月31日,歐空局的SMART-1月球探測器和NASA的雨燕太空望遠(yuǎn)鏡的實(shí)驗(yàn)狀態(tài)均因軟件故障而受到了很大影響[3]。
軟件安全缺陷伴隨軟件的整個(gè)生命周期,如何在軟件發(fā)布前,根據(jù)已有的軟件實(shí)驗(yàn)與測試數(shù)據(jù)來預(yù)測軟件的安全性成為研究的一個(gè)重點(diǎn)。文獻(xiàn)[3]將軟件預(yù)測技術(shù)劃分為靜態(tài)和動態(tài)兩大類。靜態(tài)預(yù)測以軟件的固有參數(shù)為基礎(chǔ)進(jìn)行預(yù)測,如軟件規(guī)模、復(fù)雜度,動態(tài)技術(shù)引入了時(shí)間變量,研究軟件缺陷與發(fā)現(xiàn)時(shí)間的關(guān)系。Rescorla E[4]提出了Rescorla二項(xiàng)式模型和指數(shù)模型,試圖通過統(tǒng)計(jì)實(shí)驗(yàn)的方法來確定軟件安全缺陷發(fā)掘的趨勢。Joh H等人[5]于2008年提出了一種基于Weibull分布的軟件安全缺陷發(fā)掘模型,假設(shè)其發(fā)現(xiàn)率服從Weibull密度函數(shù)。Alhazmi O H等人[6~9]認(rèn)為軟件缺陷發(fā)掘滿足S曲線模型,針對操作系統(tǒng)軟件的弱點(diǎn)數(shù),提出了AML(Alhazmi-Malaiya Logistic)模型,通過曲線擬合的方式建立了操作系統(tǒng)的缺陷發(fā)掘模型,取得了很好的擬合效果。Wang Hong-po等人[10]在研究一類缺陷不可移除的軟件安全缺陷時(shí)引入了有限狀態(tài)機(jī)的方法,采用markov鏈技術(shù)來預(yù)測軟件的缺陷殘留。曾福萍等人[11]通過分析積累的軟件缺陷數(shù)據(jù)對缺陷模式的所屬分類進(jìn)行了劃分,給出了軟件需求分析、設(shè)計(jì)和編碼各階段的軟件缺陷模式。郭麗娜等人[12]在已有的基于模糊支持向量機(jī)的不平衡數(shù)據(jù)分類方法的基礎(chǔ)上,結(jié)合抽樣技術(shù),提出了基于模糊支持向量機(jī)的不平衡數(shù)據(jù)分類算法和基于模糊支持向量機(jī)的不平衡數(shù)據(jù)分類集成算法。趙亮等人[13]提出基于度量組合的方法來分析各種度量在缺陷預(yù)測中的作用, 并用試驗(yàn)的方法證明了在缺陷預(yù)測中使用有限的度量可以達(dá)到與使用所有度量相近的預(yù)測效果。
航空裝備嵌入式軟件因其特殊的應(yīng)用環(huán)境,對軟件安全性有更加苛刻的要求,在產(chǎn)品發(fā)布前需要對其進(jìn)行安全性測試,并驗(yàn)證測試效果。但是,現(xiàn)有的驗(yàn)證方法無法克服數(shù)據(jù)隨機(jī)性的影響。本文采用AML模型作為建模理論基礎(chǔ),基于軟件測試過程中的數(shù)據(jù)對系統(tǒng)進(jìn)行建模和分析。第2節(jié)介紹軟件安全缺陷發(fā)掘模型,在AML模型的基礎(chǔ)上討論了轉(zhuǎn)折點(diǎn)的選擇過程;第3節(jié)基于測試數(shù)據(jù)進(jìn)行系統(tǒng)建模;第4節(jié)檢驗(yàn)?zāi)P偷钠ヅ湫?;最后給出結(jié)論。
2.1 S曲線模型
在軟件可靠性工程中,使用可靠性增長模型成為分析軟件可靠性的有效方法[14]。軟件可靠性增長模型模擬測試過程中軟件缺陷發(fā)現(xiàn)和移除的過程,這個(gè)過程使軟件中的缺陷越來越少,缺陷發(fā)現(xiàn)率不斷降低,累計(jì)發(fā)現(xiàn)的缺陷數(shù)最終趨于飽和。在軟件即將發(fā)布并投入使用時(shí),使用增長模型來確定發(fā)布后軟件可能存在的軟件缺陷規(guī)律。
安全缺陷發(fā)掘模型與可靠性增長模型有直接的關(guān)系,是可靠性增長模型的發(fā)展。安全缺陷是軟件缺陷中的一種,它在制定軟件頂層規(guī)劃時(shí)被定義和分級,在開發(fā)、測試和使用過程中被發(fā)現(xiàn)和處理。目前已發(fā)表了多種安全缺陷發(fā)掘模型,這些模型大多以單位時(shí)間內(nèi)的累計(jì)缺陷數(shù)作為數(shù)據(jù)來源來進(jìn)行分析,是一種基于時(shí)間的模型。對操作系統(tǒng)軟件來說,隨著時(shí)間的增長,累計(jì)發(fā)現(xiàn)的安全缺陷數(shù)量曲線呈現(xiàn)出包括三個(gè)階段的S形狀,這就是著名的S曲線,如圖1所示。
Figure 1 S-curve of accumulating safety defects圖1 累計(jì)發(fā)現(xiàn)安全缺陷數(shù)量的S形曲線
這三個(gè)階段因使用環(huán)境的變化,導(dǎo)致安全缺陷的檢測情況受到影響。第一階段對應(yīng)著操作系統(tǒng)的早期生命周期,此時(shí)軟件專業(yè)測試人員以及用戶開始關(guān)注該操作系統(tǒng),并為尋找它的安全缺陷而收集數(shù)據(jù),準(zhǔn)備相關(guān)知識。第二階段稱為線性階段,經(jīng)過早期的學(xué)習(xí),軟件專業(yè)測試人員以及用戶對操作系統(tǒng)的熟悉度增加,軟件安全缺陷被不斷發(fā)現(xiàn),累計(jì)發(fā)現(xiàn)的安全缺陷數(shù)目呈線性增長的趨勢,這一過程一直持續(xù)到軟件被新的版本替代。第三階段中,操作系統(tǒng)被新版軟件替代,缺陷發(fā)掘工作轉(zhuǎn)移到新版本中,舊版本軟件累計(jì)發(fā)現(xiàn)的安全缺陷數(shù)量逐漸停止增長[6]。
S曲線雖然是針對操作系統(tǒng)提出的,但對航空裝備嵌入式軟件同樣適用。航空裝備嵌入式軟件因其特殊的應(yīng)用環(huán)境,要求在產(chǎn)品正式發(fā)布使用的階段,絕大部分軟件安全缺陷都已被發(fā)現(xiàn)和修復(fù),這就要求在軟件發(fā)布前對其進(jìn)行充分的實(shí)驗(yàn)和測試,盡量在發(fā)布前發(fā)現(xiàn)安全缺陷。對照圖1的S曲線,第一階段是在軟件開發(fā)的末期或已完成軟件開發(fā),此時(shí)軟件專業(yè)測試人員以及用戶開始關(guān)注該軟件,通過收集軟件資料、數(shù)據(jù),對軟件開始有所了解,并為尋找軟件安全缺陷做準(zhǔn)備。第二階段是軟件開發(fā)人員已發(fā)布了軟件的測試版本,測試人員對軟件系統(tǒng)已經(jīng)有了一定程度的了解,軟件安全缺陷被不斷發(fā)現(xiàn),累計(jì)發(fā)現(xiàn)的安全缺陷數(shù)目呈線性增長的趨勢,這一階段一直持續(xù)到軟件的回歸測試階段。第三階段經(jīng)過回歸測試,軟件中已發(fā)現(xiàn)的安全缺陷被全部修復(fù),在回歸測試版本基礎(chǔ)上形成發(fā)布版本,這一階段雖然受測試工作的局限性影響,軟件中依然潛伏著安全缺陷,但數(shù)量急劇減少。在用戶使用過程中潛藏的缺陷被不斷修復(fù),缺陷數(shù)逐漸趨于穩(wěn)定,直至該軟件被新版本取代。
如果軟件規(guī)模較小,學(xué)習(xí)階段可能很短暫,不太明顯。線性階段發(fā)現(xiàn)軟件的大部分安全缺陷,這一階段是最重要的。如果軟件的測試、驗(yàn)證不充分,在成熟階段仍然會陸續(xù)發(fā)現(xiàn)大量安全缺陷,成熟階段曲線可能不明顯。
這里我們假設(shè):(1)航空裝備嵌入式軟件的測試、驗(yàn)證、發(fā)布等生命周期過程嚴(yán)格按照有關(guān)規(guī)定、標(biāo)準(zhǔn)進(jìn)行;(2)軟件缺陷發(fā)現(xiàn)后就被修復(fù),且修復(fù)過程不會引入新的缺陷;(3)缺陷修復(fù)的時(shí)間可以忽略不計(jì)。這樣,軟件的安全缺陷發(fā)掘過程可近似認(rèn)為滿足S曲線。
這里,我們引入Alhazimi O H和Malaiya Y K于2005年提出的AML模型[6],該模型能夠很好地模擬S曲線,具有較高的匹配度。該模型雖然給出了轉(zhuǎn)折點(diǎn)的概念,但未指出如何選取,本文也對這個(gè)問題進(jìn)行討論。
2.2 AML模型
AML模型[6~8]假設(shè)安全缺陷累計(jì)和變化率y取決于以下兩個(gè)因素:(1)與軟件中剩余的未被檢測出的缺陷數(shù)目相關(guān),并隨著未被檢測出的缺陷數(shù)目的減少而變??;(2)由該軟件運(yùn)行的時(shí)間決定,且隨著此時(shí)間的增加而變大。
缺陷發(fā)現(xiàn)率可由如下微分方程得到:
(1)
其中,y為累計(jì)發(fā)現(xiàn)的缺陷數(shù),t為日歷時(shí)間,初值t=0。A和B是根據(jù)經(jīng)驗(yàn)方法由具體應(yīng)用中收集到的數(shù)據(jù)確定。
解式(1),我們得到累計(jì)發(fā)現(xiàn)的安全缺陷數(shù)量為:
(2)
其中,C為解式(2)時(shí)引入的常量。
從式(2)中可以看出,當(dāng)t趨向于無窮時(shí),y(t)=B。因此,軟件中累計(jì)發(fā)現(xiàn)的最大安全缺陷數(shù)為B。
在參數(shù)A、B、C已知的情況下繪制式(2)時(shí)間曲線,可以得到類似于圖1的曲線。分析式(2)可知[5]:對式(2)一階微分,可以得到缺陷發(fā)現(xiàn)率的變化情況。
(3)
根據(jù)式(3),最大缺陷發(fā)現(xiàn)率出現(xiàn)在中點(diǎn):
(4)
將式(4)代入式(3),得到缺陷發(fā)現(xiàn)率的最大值為AB2/4。
2.3 轉(zhuǎn)折點(diǎn)的選擇
轉(zhuǎn)折點(diǎn)是三個(gè)階段劃分的標(biāo)志,得到轉(zhuǎn)折點(diǎn),我們就可以據(jù)此判斷軟件測試是否已達(dá)到了測試要求,軟件產(chǎn)品是否可以發(fā)布。
GJB/Z102-97[15]將軟件缺陷的安全級別定義為四級,IEC 61508[16]對不同級別的缺陷給出了允許的出現(xiàn)概率,如表1所示。
Table 1 Safety level of software defects
令不同等級的缺陷出現(xiàn)概率為p,已知軟件的使用壽命為Tl(工作小時(shí)),則軟件運(yùn)行允許的剩余缺陷數(shù)為:
ys=pTl
(5)
則有:
ys≥B-Bs
(6)
即測試后剩余的缺陷數(shù)應(yīng)不大于標(biāo)準(zhǔn)允許的缺陷數(shù)。這里Bs為測試階段發(fā)現(xiàn)的缺陷總數(shù)。
顯然,若測試和預(yù)測結(jié)果滿足式(6),則測試終止時(shí)間即為二、三階段轉(zhuǎn)折點(diǎn)的下邊界。不失一般性,可以將其看做二、三階段的轉(zhuǎn)折點(diǎn),其時(shí)間T2,3=TBS,這里TBS為測試終止時(shí)間。
若式(6)不滿足,說明軟件測試還未達(dá)到規(guī)定的要求。
因式(3)對應(yīng)的曲線相對于Tm對稱,一、二階段的轉(zhuǎn)折點(diǎn)時(shí)刻T1,2與T2,3相對于Tm對稱,其時(shí)間T1,2=Tm-(TBS-Tm)=2Tm-TBS。若T1,2<0,說明學(xué)習(xí)階段不明顯,S曲線模型僅存在線性段和成熟段。
本節(jié)根據(jù)某航電系統(tǒng)的測試數(shù)據(jù),研究針對該軟件的AML模型。
已知某航電系統(tǒng)實(shí)現(xiàn)飛機(jī)對各子系統(tǒng)的控制和顯示,表2列出了軟件測試、實(shí)驗(yàn)階段各時(shí)段發(fā)現(xiàn)的軟件缺陷數(shù),各時(shí)段以周為單位。
Table 2 Software defects distribution of testing phase
表2中,根據(jù)對飛機(jī)安全性的影響將缺陷劃分為A、B兩類。A類缺陷對飛機(jī)飛行安全和任務(wù)實(shí)現(xiàn)有輕微影響,可能影響任務(wù)執(zhí)行,與表1中的III類缺陷對應(yīng)。B類缺陷影響軟件部分功能的實(shí)現(xiàn),對飛行安全和任務(wù)實(shí)現(xiàn)有影響輕微,對應(yīng)表1中的IV類缺陷,表1中規(guī)定的I、II類缺陷在測試過程中未發(fā)現(xiàn)。
圖2和圖3給出了兩類缺陷的擬合曲線圖。根據(jù)擬合曲線,我們確定了式(2)的兩組參數(shù),分別為A類缺陷參數(shù):AA=0.014,BA=64,CA=3.2,B類缺陷參數(shù)BB=390,AB=0.00148,CB=0.081。根據(jù)式(4),兩類缺陷的最大缺陷率分別出現(xiàn)在Tma=5.94和Tmb=5.98時(shí)刻,近似為第6周,與單周發(fā)現(xiàn)的缺陷最大值一致。由曲線不難發(fā)現(xiàn),S曲線缺陷發(fā)掘模型能夠很好地?cái)M合線性階段的缺陷發(fā)現(xiàn)過程。模型還預(yù)測出了A類缺陷和B類缺陷的總數(shù),A類缺陷還遺留0個(gè),占缺陷總數(shù)的0%,B類缺陷遺留10個(gè),占缺陷總數(shù)的2.56%。預(yù)測出軟件的缺陷總數(shù)對后續(xù)的軟件安全性的研究有重要意義。
Figure 2 Fitting curve of A class defects圖2 A類缺陷擬合曲線圖
Figure 3 Fitting curve of B class defects圖3 B類缺陷擬合曲線圖
根據(jù)2.3節(jié)的討論,A、B類缺陷的出現(xiàn)概率分別應(yīng)為[10-7,10-6)、[10-6,10-5)。可以估計(jì)出該航電軟件的使用壽命為Tl=105小時(shí),則在軟件的整個(gè)生命周期中出現(xiàn)A、B類缺陷的個(gè)數(shù)分別為[0.01,0.1)、[0.1,1)個(gè)。顯然,預(yù)測模型表明,軟件測試發(fā)現(xiàn)的A類缺陷達(dá)到了測試的要求,兩個(gè)轉(zhuǎn)折點(diǎn)分別為T1,2=0周和T2,3=12周,A類缺陷的學(xué)習(xí)階段不明顯。預(yù)測的剩余B類缺陷為10,大于期望的要求,經(jīng)過測試后,軟件仍未達(dá)到成熟階段。
表1給出的缺陷出現(xiàn)概率對III、IV級安全缺陷的要求是比較苛刻的,在一般的測試過程中還引入了千行代碼缺陷率的概念,若測試過程中千行代碼發(fā)現(xiàn)的缺陷數(shù)小于給定量級,則認(rèn)為軟件測試達(dá)到測試要求。
本節(jié)我們引入卡方分析,量化分析擬合曲線與采集數(shù)據(jù)的擬合情況。
4.1 基于卡方檢驗(yàn)的匹配性檢驗(yàn)
(7)
其中,oi和ei分別為觀測值和期望值??紤]重要度等級為5%,有如下假設(shè):
Table 3 χ2 testing result of AML model
S曲線模型滿足給定的缺陷數(shù)據(jù)集,因?yàn)檫@些數(shù)據(jù)與學(xué)習(xí)階段和成熟階段吻合,并能夠適應(yīng)線性階段數(shù)據(jù)的變化。
4.2 預(yù)測偏差檢驗(yàn)
這里引入預(yù)測偏差PE(Prediction Error)方法[17]來預(yù)測準(zhǔn)確度。PE法能夠檢驗(yàn)整個(gè)測試階段預(yù)測模型和實(shí)際參數(shù)的偏離情況,給出模型的一般偏差,暗示與實(shí)際情況相比,預(yù)測值是過大還是過小。計(jì)算公式如下所示:
(8)
其中,n為預(yù)測過程的實(shí)際數(shù)據(jù)點(diǎn)數(shù),Ω為實(shí)際安全缺陷數(shù),Ωt為t時(shí)刻的預(yù)測缺陷數(shù)。
Figure 4 Deviation curve of prediction defect圖4 缺陷預(yù)測偏差曲線曲線圖
曲線表明,預(yù)測偏差開始比較大,這主要是由于測試缺陷數(shù)據(jù)的隨機(jī)性引起的。隨著時(shí)間的推移,偏差接近于0,說明數(shù)據(jù)隨機(jī)性被不斷地弱化,AML的預(yù)測與實(shí)際情況基本吻合。計(jì)算得到兩類曲線的PE值分別為-0.035和0.093,暗示A類缺陷的估計(jì)值偏小,B類缺陷的估計(jì)值偏大。
AML模型最初用于操作系統(tǒng)的缺陷數(shù)據(jù)分析,并取得了較好的擬合效果。航空裝備嵌入式軟件的安全性要求更高,對軟件的安全性進(jìn)行分析的要求更為迫切,現(xiàn)有的研究方法還不能很好地解決軟件遺留缺陷的預(yù)測問題。
易知,實(shí)測缺陷數(shù)據(jù)具有很大的隨機(jī)性,圖4曲線的前段也說明了這一點(diǎn)。文中對AML模型的分析表明,該模型能夠弱化原始數(shù)據(jù)隨機(jī)性的影響,對轉(zhuǎn)折點(diǎn)的選取的討論和在模型中引入軟件缺陷等級的概念豐富了該理論應(yīng)用。本方法能夠在軟件測試數(shù)據(jù)比較充足的前提下對不同等級的軟件遺留缺陷進(jìn)行預(yù)測,對航空裝備軟件具有較好的適應(yīng)性。
當(dāng)然,本方法并不僅僅局限于航空裝備嵌入式軟件,對其他對安全性有較高要求的軟件的安全性分析,只要數(shù)據(jù)完備,都可以進(jìn)行類似的安全性建模和分析。
基于S曲線的軟件安全缺陷發(fā)掘模型為軟件開發(fā)人員、測試人員和用戶提供了一種定量評估軟件安全狀況的方法,利用該模型,人們能夠有效地預(yù)測航空裝備嵌入式軟件中不同嚴(yán)重等級的安全缺陷發(fā)現(xiàn)率、累計(jì)發(fā)現(xiàn)的安全缺陷數(shù)量、剩余安全缺陷的數(shù)量等與軟件安全性能評估密切相關(guān)的指標(biāo),以及這些指標(biāo)隨時(shí)間推移的變化趨勢,針對性更強(qiáng)。文章討論了曲線轉(zhuǎn)折點(diǎn)的選取,給轉(zhuǎn)折點(diǎn)賦予了物理意義。文中引入的AML模型較好地?cái)M合了測試過程的實(shí)際數(shù)據(jù),弱化了數(shù)據(jù)隨機(jī)性的影響,對擬合曲線和實(shí)際數(shù)據(jù)的對比分析也證明了這一點(diǎn)。通過對預(yù)測模型的分析,我們可以定量地判斷軟件測試是否達(dá)到要求,被測軟件是否處于成熟階段,是否可以發(fā)布。
參考文獻(xiàn):
[1] Zhu Hong. Discussion on improving the twenty-first century computer science and software industry development strategy of software quality assurance software security[EB/OL].[2010-09-01]. http://www2.ccw.com.cn/1995/37/135973.html.(in Chinese)
[2] Defense Industry Daily. F-22 squadron shot down by the International date line[EB/OL].[2007-03-01].http://defenseindustrydaily.com/ F-22-squadro-shot-down-by-the-International-Date-Line -03087/.
[3] Wang Qing, Wu Shu-jian, Li Ming-shu. Software defect prediction[J]. Journal of Software, 2008,19(7):1565-1580.(in Chinese)
[4] Rescorla E. Security holes…Who cares? [C]∥Proc of the 12th USENIX Security Symposium, 2003:75-90.
[5] Joh H C, Kim J, Malaiya Y K. Vulnerability discovery modeling using Weibull distribution[C]∥Proc of the 19th Symposium on Software Reliability Engineer, 2008:299-300.
[6] Alhazmi O H,Malaiya Y K. Quantitative vulnerability assessment of systems software[C]∥Proc of Annual Reliability and Maintainability Symposium,2005:615-620.
[7] Alhazmi O H, Malaiya Y K, Ray I. Measuring, analyzing and predicting security vulnerabilities in software systems[J]. Computers & Security, 2007,26(3):219-228.
[8] Alhazmi O H, Malaiya Y K. Application of vulnerability discovery models to major operating systems[J].IEEE Transactions on Reliability, 2008,57(1):1358-1364.
[9] Alhazmi O H, Malaiya Y K. Modeling the vulnerability discovery process[C]∥Proc of the 16th IEEE International Symposium on Software Reliability Engineering (ISSRE’05), 2005:129-138.
[10] Wang Hong-po,Zhou Hong-jian,Wang Hong-lei. Quantitative safety analysis of a kind of embedded software[C]∥Proc of IEEE International Conference on Computer Science and Automation Engineering,2011:391-397.
[11] Zeng Fu-ping, Jin Hui-liang, Lu Min-yan. Study on software detect patterns[J]. Computer Science, 2011,38(2):127-130.(in Chinese)
[12] Guo Li-na, Yang Yang. A classfication algorithm of detect prediction for software modules based on fuzzy support vector machine[J]. Journal of Nanjing University(Natural Sciences), 2012,48(2):221-227.(in Chinese)
[13] Zhao Liang, Hou Jin-bao. Software fault prediction on the file and package level[J]. Journal of Tsinghua University(Science and Technology),2011,51(S1):1472-1476.(in Chinese)
[14] Musa J. Software reliability engineering[M]. New York:McGraw-Hill, 1999.
[15] GJB/Z102—97,Software reliability and safety design criteria[S]. Beijing:the commission of Science, Technology and Industry for National Defense of the PRC,1997.(in Chinese)
[16] Draft Standard IEC 61508, Functional safety of electrical/electronic/programmable electronic safety-related systems[S]. Geneva:International Electrotechnical Commission, 1998.
[17] Madan B B, Goseva-Popstojanova K, Vaidyanathan K, et al. A method for modeling and quantifying the security attributes of intrusion tolerant systems[J]. Performance Evaluation, 2004,56(1-4):167-186.
附中文參考文獻(xiàn):
[1] 朱鴻. 提高軟件質(zhì)量保障軟件安全—探討21世紀(jì)計(jì)算機(jī)科學(xué)與軟件產(chǎn)業(yè)發(fā)展戰(zhàn)略[EB/OL].[2010-09-01].http://www2.ccw.com.cn/1995/37 /135973.html.
[3] 王青,伍書劍,李明樹. 軟件缺陷預(yù)測技術(shù)[J].軟件學(xué)報(bào),2008,19(7):1565-1580.
[11] 曾福萍, 靳慧亮,陸民燕. 軟件缺陷模式的研究[J].計(jì)算機(jī)科學(xué),2011,38(2):127-130.
[12] 郭麗娜,楊楊.一種基于模糊支持向量機(jī)軟件模塊缺陷檢測算法[J].南京大學(xué)學(xué)報(bào)(自然科學(xué)版),2012,48(2):221-227.
[13] 趙亮,侯金寶.文件和包層次的軟件缺陷預(yù)測[J]. 清華大學(xué)學(xué)報(bào)(自然科學(xué)版),2011, 51(S1):1472-1476.
[15] GJB/Z102—97,軟件可靠性和安全性設(shè)計(jì)準(zhǔn)則[S].北京:國防科學(xué)技術(shù)工業(yè)委員會,1997.
WANG Hong-po,born in 1977,PhD,engineer,his research interests include software testing, and software safety.
Quantitative safety evaluation of aviation equipment embedded software based on S-curve model
WANG Hong-po1,2,ZHOU Hong-jian1,WANG Hong-lei2
(1.Software Testing Center,Troop 95899,Beijing 100076;2.Automatic Station,Troop 93619,Tianjin 301716,China)
Software testing is an important phase during the lifetime of aviation equipment embedded software. It is difficult to evaluate the effect of software testing. Based on software testing,discusses the occurrence law of the safety defect existing in aviation equipment embedded software. It is believable that the occurrence law of the embedded software also satisfies the S-curve rule. AML model is introduced to build up the S-curve model of a kind of aviation equipment embedded software based on the defect data gathered during the software testing period. The total defect number of the software is predicted. Finally, Chi-Squire verification and prediction error metric are applied to verify the goodness of fit of the software defects. Results show that AML model can model the real safety defects finding process. It eliminates the effects of randomness of the data, so the model is reliable. The predicting data can be trusted to some extent. It can be used to model and analyze the safety of aviation equipment embedded software.
aviation equipment embedded software;S-curve model;safety defects explore;quantitative
2012-09-27;
2013-01-07
1007-130X(2014)03-0469-06
TP311.5
A
10.3969/j.issn.1007-130X.2014.03.016
王洪坡(1977-),男,天津人,博士,工程師,研究方向?yàn)檐浖y試和軟件安全性。E-mail:nudtwhp@126.com
通信地址:100076 北京市豐臺區(qū)警備東路6號7區(qū)軟件測評中心
Address:Software Testing Center,7 District,6 Jingbei East Rd,Fengtai District,Beijing 100076,P.R.China