[發明專利]基于組件結構網絡的軟件可靠性評估方法有效
| 申請號: | 202010548099.4 | 申請日: | 2020-06-16 |
| 公開(公告)號: | CN111782510B | 公開(公告)日: | 2022-10-18 |
| 發明(設計)人: | 宋明秋;李旭 | 申請(專利權)人: | 大連理工大學 |
| 主分類號: | G06F11/36 | 分類號: | G06F11/36 |
| 代理公司: | 大連理工大學專利中心 21200 | 代理人: | 溫福雪;侯明遠 |
| 地址: | 116024 遼*** | 國省代碼: | 遼寧;21 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 基于 組件 結構 網絡 軟件 可靠性 評估 方法 | ||
1.一種基于組件結構網絡的軟件可靠性評估方法,采用軟件可靠性評估模型包括網絡節點、網絡邊和網絡圖案;所述的網絡節點包含組件發生錯誤的風險強度,錯誤輸出的概率和組件的容錯能力三種屬性;所述的網絡邊包含兩個組件之間的調用方向和調用概率兩種屬性;所述的網絡圖案包含順序結構、分支結構和并列結構;其特征在于,
(1)定義軟件結構網絡
在一個包含N個組件的軟件中,組件的連接結構網絡被定義為:
G={V,E} (1)
公式(1)中V表示軟件中的組件集合,E表示由兩個組件之間的調用關系形成的邊的集合;為了進一步描述組件的特點,V被定義為:
V={R,P,T} (2)
公式(2)中R表示組件發生錯誤的風險強度,P表示組件發生錯誤輸出的概率,T表示組件的容錯能力;
另外,公式(1)中,E表示兩個組件之間的調用關系,被定義為:
E={eij=(vi,vj,ρij)|vi,vj∈V,i≠j,0≤ρij≤1} (3)
公式(3)中(vi,vj)是網絡G中一個有向節點對,表示組件i調用組件j,方向由vi指向vj;ρij表示組件i執行的時候調用組件j的概率;因為組件雙向依賴會帶來編譯錯誤,因此所有組件調用關系都是單向的、不存在雙向調用,即不同時存在eij和eji兩條邊;
(2)網絡基本圖案
將基本網絡結構中的循環結構轉化為順序結構,最終提取出三種基本網絡圖案;
順序結構:在順序結構中,組件單元被依次執行;下一個單元的執行必須以上一個單元執行成功為前提,當上一個單元成功被執行,則下一個單元一定被執行;
分支結構:在分支結構中,依據組件單元的輸出結果決定下一個執行單元;分支結果必須覆蓋所有可能的情況,否則程序不合法;
并列結構:在并列結構中,當前組件單元的執行需要同時依賴多個組件共同完成,每個并列分支共享當前組件的輸出并同步進行;只有當所有的并列分支都執行完畢時,并列執行過程才能結束,并進入下一個執行單元;
(3)組件錯誤傳播
定義1:錯誤量Er:表示能導致組件發生故障的消息的能力大小;
順序結構的錯誤傳播:在順序結構中,組件消息傳遞順序被唯一確定,所以負責接收消息的組件被唯一確定;此時,消息傳播概率ρ=1;若組件i將錯誤量為Er的錯誤消息直接傳遞給組件j,則組件j接收到的錯誤量Erin表示為等式(4);
Erin=Er×ρ,ρ=1 (4)
分支結構的錯誤傳播:在分支結構中,組件消息向下游傳遞的路徑不確定,所以負責接收消息的組件不能被唯一確定;此時,每個分支的消息傳播概率記為ρ1,ρ2,ρ3,…,ρn并且滿足ρ1+ρ2+ρ3+…+ρn=1;若組件i將錯誤量為Er的錯誤消息傳遞給組件j,則組件j接收到的錯誤量Erin表示為等式(5);
并列結構的錯誤傳播:并列結構中,組件消息同時傳遞給所有直接調用組件,所以接收消息的組件集合被唯一確定;此時,每個并列消息傳播概率記為ρ1,ρ2,ρ3,…,ρn,并且滿足ρ1=ρ2=ρ3=…=ρn=1;若組件i將錯誤量為Er的錯誤消息傳遞給組件j,則組件j接收到的錯誤量Erin表示為等式(6);
Erin=Er (6)
循環結構轉化為順序結構情況下的錯誤傳播:循環結構中,組件消息傳遞可劃分為兩個順序傳遞過程;假設組件i循環調用n次組件j,此時消息傳遞過程可劃分為1)組件i將初始消息傳遞給組件j;2)組件j將消息依次傳遞給n-1個組件j;因此,將循環結構轉變為順序結構后,其消息傳播規律仍能得到表達;
綜上,組件i將錯誤量為Er的錯誤消息直接傳遞給組件j,則組件j接收到的錯誤量Erin表示為等式(7);
Erin=Er×ρij (7)
假設每個組件都具有容錯能力,因此,當組件接收到錯誤消息,錯誤消息能被其屏蔽、恢復、或者緩解;錯誤消息經組件i傳遞給組件j后,組件j輸出消息的錯誤量由等式(8)給出;
Erout=φ(max{0,Erin-Tj})×Rj+(1-φ(max(0,Erin-Tj)))×Rj×Pj (8)
其中是錯誤量傳遞指示函數,
Erin表示組件收到的錯誤量,Tj表示組件j的容錯能力,Rj表示組件j發生錯誤的風險強度,Pj表示組件j發生錯誤輸出的概率;
(4)軟件結構可靠性評價方法
根據所述的基于組件結構網絡的軟件可靠性評估模型中,定義軟件結構可靠性評價指標,其內容如下:
定義2:入口節點(startNode):節點只有出度沒有入度;
定義3:出口節點(endNode):節點只有入度沒有出度;
定義4:入口節點vi可達集合KSet:
其中endNodes表示網絡中的出口節點集合,pathvi…vj表示一條從節點vi到vj的執行路徑;
多個組件共同協作完成一項功能,因此在組件結構中存在一個入口節點可達多個出口節點;假設,當軟件功能受阻時,組件網絡結構中入口節點到出口節點的可達性受阻;本發明用入口節點的可達集合的剩余量評估功能可靠性FR;
其中KSet表示功能完備的狀態下入口節點的可達出口節點集合,KSet·表示網絡受到攻擊后入口節點的可達出口節點集合;
軟件對外提供多種功能服務,因此本發明用平均功能可靠性刻畫軟件結構的整體可靠性Re;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于大連理工大學,未經大連理工大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202010548099.4/1.html,轉載請聲明來源鉆瓜專利網。





