• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于故障樹的軟件分析技術(shù)(SFTA)淺析

      2009-04-12 00:00:00雋吉昌馮振東
      中國新技術(shù)新產(chǎn)品 2009年21期

      摘要:故障樹分析法FTA(Fault Tree Analysis)是硬件可靠性、安全性分析的傳統(tǒng)技術(shù)工具。20世紀(jì)80年代,軟件的可靠性和安全性開始成為科技界關(guān)注的課題,為了適應(yīng)軟件可靠性和安全性分析的需要,故障樹分析法被移植到軟件這個新領(lǐng)域。故障樹分析是很重要的軟件分析方法。本文主要介紹了軟件故障樹分析(SFTA)的概念、分析步驟、用途和局限性,并結(jié)合軟件實(shí)例加以說明。

      關(guān)鍵詞:軟件;故障樹分析

      1引言

      經(jīng)過20年不斷的應(yīng)用和創(chuàng)新,現(xiàn)在軟件故障樹分析已經(jīng)成為軟件分析的重要手段并稱為SFTA(Software Fault Tree Analysis)。軟件故障樹分析是要證明軟件系統(tǒng)將不完成任何不希望的或意外的功能。軟件故障樹分析極具應(yīng)用潛力,在軟件開發(fā)的早期,可以用故障樹分析來確定軟件的安全要求,進(jìn)入概要設(shè)計、詳細(xì)設(shè)計設(shè)計和實(shí)現(xiàn)階段,可以對故障樹加以擴(kuò)充,繼續(xù)進(jìn)行更深入的分析。

      2 軟件故障樹分析的基本概念

      軟件故障樹分析可以簡單地被看作是這樣一種分析方法,在這個分析方法中,先確定軟件中一個不希望發(fā)生的事件,然后在一定的環(huán)境與工作條件下,對軟件進(jìn)行分析,找出不希望發(fā)生事件發(fā)生的確切方式,即找出不希望事件發(fā)生的各種原因。這個不希望發(fā)生的事件,我們稱之為“頂事件”,也就是故障樹的“樹根”。接著,我們要繼續(xù)找出不希望發(fā)生事件發(fā)生的各種下層的直接原因,并分析它們之間的邏輯關(guān)系,一直做到基層是不能再分析的事件,或者是被認(rèn)為不需要再分析的事件時為止。

      軟件的故障樹就是將風(fēng)險事件通過各種邏輯關(guān)系(“與”或“或”門)順序組合的圖示模型。故障樹主要有下列三種事件項(xiàng)目。

      基本事件:不能再進(jìn)一步展開的或無需再進(jìn)一步展開的基本初始故障事件。

      中間事件:一個邏輯門的一個或多個輸入事件發(fā)生的故障事件。

      頂事件:在一次故障樹分析中,想要分析的最高層的不希望發(fā)生的事件。

      故障樹中事件之間的邏輯關(guān)系是由邏輯門表示的。故障樹中常用的邏輯門是邏輯“與門”和邏輯“或門”。軟件故障樹分析的只是人們最為關(guān)心的特定故障模式的頂事件。所以故障樹并不包含全部的故障,只包括分析者認(rèn)為最可能發(fā)生的或風(fēng)險最大的故障。

      3 軟件故障樹分析的步驟

      完成軟件故障樹分析需要以下幾個步驟:

      找出用戶不能容忍的系統(tǒng)故障。軟件系統(tǒng)中的故障如:信息的丟失、錯報、錯投、泄露等,指的是系統(tǒng)層次的主要故障。系統(tǒng)要完成的每個功能都有一些與該功能相關(guān)的潛在故障。

      建造故障樹。對確定的故障按系統(tǒng)層次逐級展開,找出可能導(dǎo)致故障發(fā)生的基本事件。在軟件系統(tǒng)中,基本事件指可能產(chǎn)生不正確的結(jié)果或接受不正確的輸入的軟件模塊,或者是不正確的參數(shù)初始化,或者內(nèi)存溢出等。

      故障樹定性分析和定量分析。定性分析可以識別導(dǎo)致頂事件發(fā)生的所有故障模式集合;幫助分析人員找出非??赡軐?dǎo)致系統(tǒng)故障的關(guān)鍵模塊,發(fā)現(xiàn)薄弱環(huán)節(jié);可以幫助確定在哪些基本事件或環(huán)節(jié)進(jìn)行徹底測試或提供檢測恢復(fù)模塊。

      故障樹分析最好在軟件設(shè)計期間、編碼完成之前進(jìn)行,這是為了使所設(shè)計的軟件能避免或容忍已確定的故障。

      4 軟件故障樹分析舉例

      該實(shí)例是某培訓(xùn)單位的學(xué)員選課信息修改系統(tǒng)。學(xué)員的個人選課信息都保存在“course”數(shù)據(jù)庫。學(xué)員可以通過安全驗(yàn)證登錄數(shù)據(jù)庫,并修改個人的選課信息。當(dāng)學(xué)員的個人選課資料被修改,系統(tǒng)會批準(zhǔn)相應(yīng)的修改,并更新數(shù)據(jù)庫中的數(shù)據(jù)。系統(tǒng)流程圖如圖1所示。

      確定頂事件為在學(xué)員執(zhí)行所有需要的操作后,系統(tǒng)不能完成更新學(xué)員個人選課信息的任務(wù)。在這個事件中,系統(tǒng)不能更新學(xué)員信息的直接原因或者是由于數(shù)據(jù)庫的修改程序破壞,或者是用戶無法正常登錄系統(tǒng),或者是登錄后無法輸入信息。對于無法正常登錄這一事件,其直接原因或者是登錄頁面無法正常顯示,或者是系統(tǒng)驗(yàn)證程序失效。根據(jù)以上分析,故障樹建造如圖2所示。

      軟件故障樹分析最重要的意義在于,根據(jù)分析的結(jié)果可以找出關(guān)鍵性的安全事故發(fā)生的原因,可以用于指導(dǎo)軟件的安全性設(shè)計和測試、確定軟件測試的重點(diǎn)和內(nèi)容,使系統(tǒng)的安全得到更充分的保證。軟件故障樹分析中揭示的系統(tǒng)失效的條件,可以用來識別系統(tǒng)的不安全狀態(tài),決定在什么情況下應(yīng)該必須采取失效-安全措施。

      軟件故障樹分析可以用于軟件壽命周期的各種階段:在軟件設(shè)計階,軟件故障樹分析對安全性保障和發(fā)現(xiàn)、消除潛在的風(fēng)險方面有很有益的影響。軟件故障樹分析用于開發(fā)測試用例,可以驗(yàn)證潛在的風(fēng)險會不會發(fā)生。軟件故障樹分析用于設(shè)計和編碼階段,可以有意的進(jìn)行特殊的設(shè)計和編碼,以便將那些已經(jīng)識別的風(fēng)險相對于要保持故障容錯的軟件區(qū)域隔離起來。軟件故障樹分析用于測試階段,可以有助于有針對性地設(shè)計測試輸入,以便驗(yàn)證以識別的風(fēng)險是否存在。

      5 軟件故障樹的局限性

      軟件故障樹分析法存在固有的局限性。SFTA的分析工作相當(dāng)繁瑣費(fèi)時,實(shí)際上不可能在編碼的層次對整個系統(tǒng)進(jìn)行徹底的分析,所以軟件故障樹分析法一般只限于在程序的安全關(guān)鍵部位使用。不顧這種客觀存在的約束,企圖將軟件故障樹分析方法拓展為一般的可靠性分析工具的作法是不明智的。此外不能因?yàn)閼?yīng)用了軟件故障樹分析,就在設(shè)計中放棄避錯、查錯措施,軟件故障樹分析法很難考慮系統(tǒng)的時間效應(yīng)及環(huán)境條件導(dǎo)致的失效,系統(tǒng)的各種接口中的問題,也不能僅僅靠軟件故障樹分析來解決。在對實(shí)時系統(tǒng)進(jìn)行分析時,軟件故障樹分析的這些特點(diǎn),應(yīng)該予以充分的考慮。

      結(jié)束語

      故障樹分析方法作為一種重要的可靠性分析方法,在硬件的應(yīng)用已經(jīng)很成熟,而在軟件的可靠性分析中的應(yīng)用還很少。而對于軟件系統(tǒng),特別對于安全性要求嚴(yán)格的軟件系統(tǒng),這種分析方法具有很大的潛在研究價值,需要研究很多問題,做很多開發(fā)工作。

      參考文獻(xiàn)

      [1]《軟件的可靠性與安全性》[M],黃錫滋編著,科學(xué)出版社,1993

      [2]《軟件質(zhì)量工程》[M] 洪倫耀 董云衛(wèi)編著,西安電子科技大學(xué)出版社,2004

      [3]《系統(tǒng)可靠性設(shè)計分析》[M],曾聲奎等編著,北京航空航天大學(xué)出版社,2001

      [4]《軟件可靠性》[M],何國偉等編著,國防工業(yè)出版社,1998

      [5]《故障樹分析技術(shù)在軟件測試中的應(yīng)用》[J] 劉文紅等,《系統(tǒng)工程與電子技術(shù)》,2004.07月,第26卷,第7期

      萨迦县| 寿阳县| 永和县| 贺州市| 泸西县| 左权县| 卓资县| 宁安市| 滨州市| 伊金霍洛旗| 扎赉特旗| 司法| 石屏县| 浦江县| 雷州市| 社会| 济阳县| 连平县| 大宁县| 乌什县| 林芝县| 宕昌县| 霍邱县| 贵定县| 白水县| 谷城县| 长治市| 三明市| 凤冈县| 新疆| 清水河县| 苏州市| 崇义县| 乌兰浩特市| 平顺县| 基隆市| 克东县| 永安市| 镇雄县| 永善县| 濉溪县|