亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于控制流的軟件樹生成及其應用

        2021-01-28 03:35:46何斌
        微型電腦應用 2021年1期
        關鍵詞:控制流軟件測試煙霧

        何斌

        (91404部隊, 河北 秦皇島 066000)

        0 引言

        軟件故障樹分析(Software Fault Tree Analysis,SFTA)主要用于軟件的可靠性與安全性分析,也應用于軟件測試的測試設計。軟件故障樹分析利用原因關系查找所有軟件可能的失效點并畫出故障樹圖,再定性、定量、重要度分析尋找可靠性安全性的薄弱環(huán)節(jié),是指導設計改進、軟件測試、裝備維護的有效方法。故障樹分析的成敗取決于故障樹圖的完整性與準確性。然而在實施過程中軟件故障樹分析往往依賴于個人經(jīng)驗,沒有一種全面定量的軟件失效點分析方法,這導致了對軟件系統(tǒng)進行分析時,會有很大的工作難度與強度,而結果卻不近人意。當軟件測試人員使用SFTA來進行測試設計時這一問題更加突顯,原因是軟件測試人員很難在測試周期內(nèi)對被系統(tǒng)的失效點有全面的掌握。

        為解決SFTA這一問題,研究采用基于控制流分析結果的軟件故障樹自動化分析技術,實現(xiàn)SFTA基于客觀分析結果(控制流分析結果),并可達到分析過程短周期及計算機自動化的目的。

        1 軟件故障樹分析的基本理論

        故障樹分析(FTA)是產(chǎn)品(系統(tǒng))可靠性和安全性分析的工具之一,用來尋找導致不希望的系統(tǒng)故障或災難性危險事件(頂事件)發(fā)生的所在原因和原因組合,在具有基礎數(shù)據(jù)時求出頂事件發(fā)生的概率及其他定量指標。FTA也是分析已經(jīng)發(fā)生的事故的一種基本方法,在裝備研發(fā)、維護等領域有廣泛的應用。故障樹分析也用在軟件工程稱之這軟件故障樹分析(SFTA),在偵錯時使用,和消除錯誤原因的技術很有關系。

        故障樹分析法是把系統(tǒng)不希望發(fā)生的故障狀態(tài)定義為“頂事件”,通過分析尋找出導致頂事件故障發(fā)生的所有可能的直接原因,這些原因稱之為“中間事件”。接著分析尋找一個中間事件發(fā)生的所在可能原因,經(jīng)此類推,直到追蹤到最后一級的原因事件,稱之為“底事件”。

        故障樹分析就是從具體的故障出發(fā),由上往下逐層尋找失效原因,分析結果采用圖形化形式進行表示。故障樹圖是一種邏輯因果關系圖,構圖的元素是事件和邏輯門。事件用來描述系統(tǒng)和元、部件故障的狀態(tài),邏輯門把事件聯(lián)系起來,表示事件之間的邏輯關系。

        故障樹圖的具體構成,如圖1所示。

        對于一個稍微復雜的系統(tǒng),將有數(shù)量較多的底事件,這不利于對系統(tǒng)可靠性、安全性定性、定量地分析。所以在確定故障樹圖后必須尋找最小割集。割集是故障樹中一些底事件的集合,當這些同時發(fā)生時,頂事必然發(fā)生;最小割集就是若將割集中的含的底事件含意去掉一個就不再成為割集了,這樣的割集就是最小算法。

        圖1 串口通信故障樹圖

        求最小割集的方法有行列法、結構法、布爾代數(shù)法等,其中行列法最為常用。行列法是1972年福塞爾提出的方法,所以也稱其福塞爾法。其理論依據(jù)是:“與門”使割集容量增,而不增加割集的數(shù)量;“或門”使割集的數(shù)量增,而不增加割集的容量。這種方法是從頂上事件開,用下一層事件代替上一層事件,把“與門”連接事件,按行橫向排列;把“或門”連接的事件,按縱橫向擺開。這樣,逐層向下,直至各基本事件,出若干行,最后利用布爾代數(shù)化簡?;喗Y果,就出若干最小割集。

        2 基于控制流分析的軟件故障樹的實現(xiàn)原理

        2.1 軟件控制流分析

        軟件控制流分析是軟件靜態(tài)分析的主要內(nèi)容,分析結果以控制流圖表示。軟件控制流圖就是代碼邏輯的圖形化表示形式,圖形圓繪制的代碼,如圖2所示。

        圖2 圖形圓繪制的代碼

        圖形圓繪制控制流圖,如圖3所示。

        控制流圖能表示一個過程內(nèi)所有基本塊執(zhí)行的可能流向,也能反映一個過程的實時執(zhí)行過程??刂屏鞣治鲈谲浖y試中有助于測試人員尋找程序中的控制邏輯錯誤。有控制流圖以后,可定量地獲取程序的圈復雜度,而圈復雜度做一種為程序邏輯復雜性度量可有效指導進行編程質(zhì)量改進,進而降低軟件的故障風險。在軟件測試中控制流分析一般由軟件靜態(tài)測試工具自動完成,常用測試工具有McCabe、Klocwork、LDRA_Testbed等。由于控制流圖是由測試工具自動化完成,所以得到的控制圖可以完整、準確地反應程序的內(nèi)部邏輯結構。

        圖3 圖形圓繪制控制流圖

        2.2 軟件控制流到故障樹圖的實現(xiàn)原理

        軟件的故障樹分析可沿軟件控制流圖的執(zhí)行邏輯進行分析。軟件控制流圖中的執(zhí)行單元可認為是一個中間事件,而引起這一的執(zhí)行單元失效的所有可能就是底事件,所有底事件由“或門”連接而成。整個故障樹的邏輯依從更高一層的控制流圖邏輯結構。

        依據(jù)控制流圖的故障樹圖對應關系,如表1所示。

        表1 故障樹圖與軟件控制流圖主要對應關系

        3 “X型煙霧報警系統(tǒng)”從控制流圖到故障樹的分析過程

        為進一步詳述軟件控制流圖到故障樹的分析過程,同時也為證明這一方法的可行性,本文以“X型煙霧報警系統(tǒng)”為例演繹這一過程。

        “X型煙霧報警系統(tǒng)”主要用于封閉環(huán)境火災的自動報警。系統(tǒng)通過溫感與煙霧傳感器對環(huán)境的溫度和煙霧濃度進行實時監(jiān)測,以超過設置溫度、煙霧濃度判定是否發(fā)生火災。當系統(tǒng)監(jiān)測到超過預設溫度、煙霧濃度時發(fā)出聲光等形式的告警。開發(fā)方給出的系統(tǒng)流程圖,如圖4所示。

        圖4 “X型煙霧報警系統(tǒng)”流程圖

        很顯然僅憑這一流程圖進行故障分析將十分困難?;诳刂屏鞣治龅能浖收蠘浞治龇椒ㄊ紫葘ο到y(tǒng)源碼進行控制流分析,得控制流圖,如圖5所示。

        圖5 “X型煙霧報警系統(tǒng)”控制流圖

        依從控制流圖執(zhí)行邏輯進行故障樹分析,以控制流圖邏輯結構為故障樹圖的結構,并充分考慮控制流圖邏輯外的軟件失效可能作為故障樹的主要事件,具體步驟如下。

        (1) 按流程圖的基本塊確定中間事件或底事件,同時根據(jù)軟件實際功能補充可能的事件;

        (2) 根據(jù)流程圖的分支邏輯確定故障圖樹的邏輯門;

        (3) 重復上述兩個步驟直到整個流程圖解讀完成。

        通過以上步驟構建“X型煙霧報警系統(tǒng)”的故障樹圖結構,如圖6所示。

        4 總結

        通過演繹基于控制流分析的軟件故障樹分析是可行的??偨Y這一方法主要有以下幾個優(yōu)點。

        (1) 故障樹分析依賴于由工具軟件獲得的控制流圖,分析過程更加客觀、全面、高效。

        圖6 “X型煙霧報警系統(tǒng)”故障樹圖

        (2) 基于控制流圖的故障樹分析不完全依賴于個人經(jīng)驗,有固定規(guī)律可循,工作難度將大大降低。

        (3) 由于控制流圖由工具軟件自動生成且到故障樹圖的轉(zhuǎn)換有模式可利于故障樹分析計算機自動化的實現(xiàn)。

        當然這一方法也有不足之處,如方法適合較為簡小的嵌入式軟件,不適應控制流圖龐繁的系統(tǒng)軟件;方法依賴代碼的正確性,對設計、軟件模式等故障無法觸及。雖然這一方法有諸多局限性,但應用于周期要求短、覆蓋率要求高的嵌入式軟件測試的用例設計有較強的適用性。

        猜你喜歡
        控制流軟件測試煙霧
        抵御控制流分析的Python 程序混淆算法
        薄如蟬翼輕若煙霧
        工控系統(tǒng)中PLC安全漏洞及控制流完整性研究
        電子科技(2021年2期)2021-01-08 02:25:58
        抵御控制流分析的程序混淆算法
        基于OBE的軟件測試課程教學改革探索
        計算機教育(2020年5期)2020-07-24 08:53:20
        影視劇“煙霧繚繞”就該取消評優(yōu)
        華人時刊(2019年13期)2019-11-26 00:54:38
        EXCEL和VBA實現(xiàn)軟件測試記錄管理
        電子制作(2018年16期)2018-09-26 03:27:18
        咸陽鎖緊煙霧與塵土
        當代陜西(2017年12期)2018-01-19 01:42:05
        關于軟件測試技術應用與發(fā)展趨勢研究
        電子測試(2017年15期)2017-12-18 07:19:20
        軟件測試工程化模型及應用研究
        东京热加勒比无码少妇| 久久99精品国产麻豆| 亚洲av之男人的天堂| 麻豆精品网站国产乱子伦| 蜜桃在线观看免费高清完整版| 久久久熟女一区二区三区| 亚洲av永久无码天堂网小说区| 国产精品视频二区不卡| 加勒比在线一区二区三区| 国产成人高清视频在线观看免费| 操风骚人妻沉沦中文字幕| 久久久久人妻精品一区三寸| 人妻影音先锋啪啪av资源| 音影先锋色天堂av电影妓女久久| 美女视频在线观看一区二区三区 | 欧美顶级少妇作爱| 中国老妇女毛茸茸bbwbabes| 国产免费看网站v片不遮挡| 国产精品女同学| 国产成人自拍视频视频| 精品含羞草免费视频观看| a级特黄的片子| 国产成人8x视频网站入口| 日产一区一区三区区别| 99国产精品99久久久久久| 7777精品伊人久久久大香线蕉| 国产精品成人av电影不卡| 成人激情视频在线手机观看| 少妇性俱乐部纵欲狂欢电影| 无码丰满少妇2在线观看| 天堂av在线免费播放| 久久久大少妇免费高潮特黄| 美女露出自己的性感大胸一尤内衣 | 色天使综合婷婷国产日韩av| 搡老熟女老女人一区二区| 亚洲中文一本无码AV在线无码| 久久老熟女一区二区三区福利| а天堂中文最新一区二区三区| 日韩AV无码一区二区三区不卡毛片| 日本免费a一区二区三区| 狠狠色狠狠色综合网|