[發(fā)明專利]一種基于基本塊的軟件可靠性評(píng)估方法有效
| 申請(qǐng)?zhí)枺?/td> | 201710502732.4 | 申請(qǐng)日: | 2017-06-27 |
| 公開(公告)號(hào): | CN107315684B | 公開(公告)日: | 2020-10-27 |
| 發(fā)明(設(shè)計(jì))人: | 程勝;邱化強(qiáng);朱海濤;王楠;穆海榮 | 申請(qǐng)(專利權(quán))人: | 北京神舟航天軟件技術(shù)有限公司 |
| 主分類號(hào): | G06F11/36 | 分類號(hào): | G06F11/36 |
| 代理公司: | 北京世譽(yù)鑫誠專利代理有限公司 11368 | 代理人: | 孫國棟 |
| 地址: | 100094*** | 國省代碼: | 北京;11 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 基于 基本 軟件 可靠性 評(píng)估 方法 | ||
1.一種基于基本塊的軟件可靠性評(píng)估方法,其特征在于,包括以下步驟:
(1)構(gòu)建控制流圖
利用二進(jìn)制代碼分析軟件構(gòu)建被測(cè)軟件的控制流圖,控制流圖表示方式為一個(gè)控制流矩陣CFG=N×N=[tij],控制流矩陣CFG的行和列都是基本塊,如果從第i個(gè)基本塊bi到第j個(gè)基本塊bj有一條控制轉(zhuǎn)移,那么tij=1;否則tij=0;在控制流矩陣CFG中N表示被測(cè)軟件的基本塊的數(shù)量;
(2)利用被測(cè)軟件的基本塊指令數(shù)建立基本塊的缺陷系數(shù)矩陣FN=[fi],且1≤i≤N,其中fi表示基本塊bi包含缺陷的指數(shù),其表達(dá)式為:
其中:
Li表示基本塊bi包含的指令條數(shù),且1≤i≤N;
(3)評(píng)估基本塊潛在的缺陷數(shù)
評(píng)估每個(gè)基本塊的潛在缺陷數(shù),構(gòu)成缺陷分布矩陣FC=[fci],潛在缺陷數(shù)fci的計(jì)算公式如下:
其中:
E表示軟件的潛在缺陷總數(shù);
fk表示基本塊bk的缺陷指數(shù);
i為基本塊編號(hào),1≤i≤N;
k為基本塊編號(hào);1≤k≤N;
(4)評(píng)估基本塊的缺陷暴露系數(shù)
利用一組測(cè)試用例集對(duì)被測(cè)軟件進(jìn)行測(cè)試,捕捉各個(gè)基本塊的運(yùn)行次數(shù)bci,然后評(píng)估每個(gè)基本塊的缺陷隱藏概率pffi為:
(a)如果測(cè)試過程中基本塊bi沒有發(fā)生失效,那么
(b)如果測(cè)試過程中基本塊bi發(fā)生失效的次數(shù)為eci,那么
(c)如果基本塊bi沒被執(zhí)行過,即bci=0,那么設(shè)置bci=1;
(5)評(píng)估基本塊的可靠性
利用缺陷暴露系數(shù)計(jì)算基本塊bi的可靠性pi,其計(jì)算公式如下:
pi=1-pffi
(6)評(píng)估基本塊對(duì)運(yùn)行剖面的貢獻(xiàn)度
給定運(yùn)行剖面,生成與運(yùn)行剖面匹配的測(cè)試用例,然后采集運(yùn)行剖面的基本塊bi的執(zhí)行次數(shù)為然后評(píng)估出每個(gè)基本塊的貢獻(xiàn)度cdi
(7)評(píng)估運(yùn)行剖面下基本塊間遷移概率
以控制流矩陣CFG為指導(dǎo),利用如下約束條件構(gòu)成的線性方程組,以為參數(shù),求解得出基本塊之間的遷移概率;
控制流圖的矩陣第i行之和表示基本塊bi的執(zhí)行次數(shù);
控制流圖的矩陣第j列之和表示基本塊bj的執(zhí)行次數(shù);
對(duì)于基本塊bi和基本塊bj之間的遷移概率pij為:
其中:
nij表示從基本塊bi到基本塊bj跳轉(zhuǎn)的次數(shù);
N(i)表示基本塊bi的執(zhí)行次數(shù);
(8)消減控制流圖為等價(jià)控制流樹
從入口基本塊開始,遍歷各個(gè)基本塊,消除控制流圖中存在的循環(huán),得到一個(gè)約解的控制流樹,該控制流樹是一棵二叉樹,樹的節(jié)點(diǎn)為基本塊的可靠性;樹的邊表示從一個(gè)節(jié)點(diǎn)到子節(jié)點(diǎn)的遷移概率;
(9)計(jì)算被測(cè)軟件在給定運(yùn)行剖面的可靠性
從控制流樹的葉子節(jié)點(diǎn)開始回溯,直到回溯到根節(jié)點(diǎn),回溯方法如下:
(91)對(duì)于節(jié)點(diǎn)a和節(jié)點(diǎn)b,它們的可靠性分別為ra和rb,它們的父節(jié)點(diǎn)為c,可靠性為rc,從節(jié)點(diǎn)c到節(jié)點(diǎn)a、節(jié)點(diǎn)b的概率分別為pca和pcb,那么創(chuàng)建一個(gè)新的節(jié)點(diǎn)c1,節(jié)點(diǎn)c1的可靠性為:
rc1=(ra*pca+rb*pcb)*rc
然后進(jìn)入步驟(92);
(92)刪除節(jié)點(diǎn)a、節(jié)點(diǎn)b和節(jié)點(diǎn)c,將節(jié)點(diǎn)c1作為c父節(jié)點(diǎn)的一個(gè)葉子節(jié)點(diǎn);
(93)重復(fù)步驟(91)和(92),直到計(jì)算出根節(jié)點(diǎn)替代節(jié)點(diǎn)的可靠性,然后進(jìn)入步驟(10);
(10)根節(jié)點(diǎn)替代節(jié)點(diǎn)的可靠性即為被測(cè)軟件在運(yùn)行剖面上的可靠性,結(jié)束此次運(yùn)行。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于北京神舟航天軟件技術(shù)有限公司,未經(jīng)北京神舟航天軟件技術(shù)有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201710502732.4/1.html,轉(zhuǎn)載請(qǐng)聲明來源鉆瓜專利網(wǎng)。
- 同類專利
- 專利分類
G06F 電數(shù)字?jǐn)?shù)據(jù)處理
G06F11-00 錯(cuò)誤檢測(cè);錯(cuò)誤校正;監(jiān)控
G06F11-07 .響應(yīng)錯(cuò)誤的產(chǎn)生,例如,容錯(cuò)
G06F11-22 .在準(zhǔn)備運(yùn)算或者在空閑時(shí)間期間內(nèi),通過測(cè)試作故障硬件的檢測(cè)或定位
G06F11-28 .借助于檢驗(yàn)標(biāo)準(zhǔn)程序或通過處理作錯(cuò)誤檢測(cè)、錯(cuò)誤校正或監(jiān)控
G06F11-30 .監(jiān)控
G06F11-36 .通過軟件的測(cè)試或調(diào)試防止錯(cuò)誤
- 一種基于應(yīng)用軟件散布的軟件授權(quán)與保護(hù)方法及系統(tǒng)
- 一種用于航空機(jī)載設(shè)備的軟件在線加載系統(tǒng)及方法
- 軟件構(gòu)建方法、軟件構(gòu)建裝置和軟件構(gòu)建系統(tǒng)
- 惡意軟件檢測(cè)方法及裝置
- 一種基于軟件基因的軟件同源性分析方法和裝置
- 軟件引入系統(tǒng)、軟件引入方法及存儲(chǔ)介質(zhì)
- 軟件驗(yàn)證裝置、軟件驗(yàn)證方法以及軟件驗(yàn)證程序
- 使用靜態(tài)和動(dòng)態(tài)惡意軟件分析來擴(kuò)展惡意軟件的動(dòng)態(tài)檢測(cè)
- 一種工業(yè)控制軟件構(gòu)建方法和軟件構(gòu)建系統(tǒng)
- 可替換游戲軟件與測(cè)驗(yàn)軟件的裝置與方法





