軟件質(zhì)量與質(zhì)量保證_第1頁
軟件質(zhì)量與質(zhì)量保證_第2頁
軟件質(zhì)量與質(zhì)量保證_第3頁
軟件質(zhì)量與質(zhì)量保證_第4頁
軟件質(zhì)量與質(zhì)量保證_第5頁
已閱讀5頁,還剩33頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領

文檔簡介

1、1第第10章章 軟件質(zhì)量與質(zhì)量保證軟件質(zhì)量與質(zhì)量保證軟件工程課件講稿軟件工程課件講稿-肖浩肖浩第10章 軟件質(zhì)量與質(zhì)量保證210.1 軟件質(zhì)量的概念軟件質(zhì)量的概念第10章 軟件質(zhì)量與質(zhì)量保證3軟件質(zhì)量的定義軟件質(zhì)量的定義(1) 與所確定的功能和性能需求的一致性。與所確定的功能和性能需求的一致性。(2) 與所成文的開發(fā)標準的一致性。與所成文的開發(fā)標準的一致性。(3) 與所有專業(yè)開發(fā)的軟件所期望的隱含特與所有專業(yè)開發(fā)的軟件所期望的隱含特性的一致性。性的一致性。第10章 軟件質(zhì)量與質(zhì)量保證4影響軟件質(zhì)量的因素影響軟件質(zhì)量的因素(1) 可以直接度量的因素,如單位時間內(nèi)千可以直接度量的因素,如單位時間內(nèi)

2、千行代碼(行代碼(KLOC)中產(chǎn)生的錯誤數(shù)。)中產(chǎn)生的錯誤數(shù)。(2) 只能間接度量的因素,如可用性或可維只能間接度量的因素,如可用性或可維護性。護性。l在軟件開發(fā)和維護的過程中,為了定量在軟件開發(fā)和維護的過程中,為了定量地評價軟件質(zhì)量,必須對軟件質(zhì)量特性地評價軟件質(zhì)量,必須對軟件質(zhì)量特性進行度量,以測定軟件具有要求質(zhì)量特進行度量,以測定軟件具有要求質(zhì)量特性的程度。性的程度。 第10章 軟件質(zhì)量與質(zhì)量保證5什么是軟件質(zhì)量保證什么是軟件質(zhì)量保證l軟件的質(zhì)量保證就是向用戶及社會提供軟件的質(zhì)量保證就是向用戶及社會提供滿意的高質(zhì)量的產(chǎn)品,確保軟件產(chǎn)品從滿意的高質(zhì)量的產(chǎn)品,確保軟件產(chǎn)品從誕生到消亡為止的所

3、有階段的質(zhì)量的活誕生到消亡為止的所有階段的質(zhì)量的活動,即確定、達到和維護需要的軟件質(zhì)動,即確定、達到和維護需要的軟件質(zhì)量而進行的所有有計劃、有系統(tǒng)的管理量而進行的所有有計劃、有系統(tǒng)的管理活動。活動。第10章 軟件質(zhì)量與質(zhì)量保證6質(zhì)量保證的策略質(zhì)量保證的策略(1) 以檢測為重。產(chǎn)品制成后才進行檢測,以檢測為重。產(chǎn)品制成后才進行檢測,這種檢測只能判斷產(chǎn)品的質(zhì)量,不能提這種檢測只能判斷產(chǎn)品的質(zhì)量,不能提高產(chǎn)品質(zhì)量。高產(chǎn)品質(zhì)量。(2) 以過程管理為重。把質(zhì)量保證工作重點以過程管理為重。把質(zhì)量保證工作重點放在過程管理上,對制造過程的每一道放在過程管理上,對制造過程的每一道工序都進行質(zhì)量控制。工序都進行質(zhì)

4、量控制。(3) 以新產(chǎn)品開發(fā)為重。以新產(chǎn)品開發(fā)為重。第10章 軟件質(zhì)量與質(zhì)量保證7質(zhì)量保證的主要任務質(zhì)量保證的主要任務(1) 正確定義用戶要求。正確定義用戶要求。(2) 技術(shù)方法的應用。技術(shù)方法的應用。(3) 提高軟件開發(fā)的工程能力。提高軟件開發(fā)的工程能力。(4) 軟件的復用。軟件的復用。(5) 發(fā)揮每個開發(fā)者的能力。發(fā)揮每個開發(fā)者的能力。(6) 組織外部力量協(xié)作。組織外部力量協(xié)作。(7) 排除無效勞動。最大的無效勞動是因需求規(guī)排除無效勞動。最大的無效勞動是因需求規(guī)格說明有誤、設計有誤而造成的返工。格說明有誤、設計有誤而造成的返工。(8) 提高計劃和管理質(zhì)量。提高計劃和管理質(zhì)量。第10章 軟件

5、質(zhì)量與質(zhì)量保證8質(zhì)量保證與檢驗質(zhì)量保證與檢驗l軟件質(zhì)量必須在設計和實現(xiàn)過程中加以軟件質(zhì)量必須在設計和實現(xiàn)過程中加以保證。保證。 第10章 軟件質(zhì)量與質(zhì)量保證910.2 質(zhì)量度量模型質(zhì)量度量模型第10章 軟件質(zhì)量與質(zhì)量保證10McCall質(zhì)量度量模型質(zhì)量度量模型第10章 軟件質(zhì)量與質(zhì)量保證11 ISO的軟件質(zhì)量評價模型的軟件質(zhì)量評價模型第10章 軟件質(zhì)量與質(zhì)量保證1210.3 軟件復雜性軟件復雜性 第10章 軟件質(zhì)量與質(zhì)量保證13軟件復雜性的基本概念軟件復雜性的基本概念(1) 規(guī)模,即總共的指令數(shù),或源程序行數(shù)。規(guī)模,即總共的指令數(shù),或源程序行數(shù)。(2) 難度,通常由程序中出現(xiàn)的操作數(shù)的數(shù)目所難

6、度,通常由程序中出現(xiàn)的操作數(shù)的數(shù)目所決定的量來表示。決定的量來表示。(3) 結(jié)構(gòu),通常用于程序結(jié)構(gòu)有關的度量來表示。結(jié)構(gòu),通常用于程序結(jié)構(gòu)有關的度量來表示。(4) 智能度,即算法的難易程度。智能度,即算法的難易程度。l軟件復雜性主要表現(xiàn)在程序的復雜性。程序的軟件復雜性主要表現(xiàn)在程序的復雜性。程序的復雜性主要指模塊內(nèi)程序的復雜性。它直接關復雜性主要指模塊內(nèi)程序的復雜性。它直接關聯(lián)到軟件開發(fā)費用的多少、開發(fā)周期長短和軟聯(lián)到軟件開發(fā)費用的多少、開發(fā)周期長短和軟件內(nèi)部潛伏錯誤的多少。同時它也是軟件可理件內(nèi)部潛伏錯誤的多少。同時它也是軟件可理解性的另一種度量。解性的另一種度量。 第10章 軟件質(zhì)量與質(zhì)量

7、保證14軟件復雜性的度量方法軟件復雜性的度量方法-代碼行度量法代碼行度量法l度量程序的復雜性,最簡單的方法就是度量程序的復雜性,最簡單的方法就是統(tǒng)計程序的源代碼行數(shù)。此方法的基本統(tǒng)計程序的源代碼行數(shù)。此方法的基本考慮是統(tǒng)計一個程序的源代碼行數(shù),并考慮是統(tǒng)計一個程序的源代碼行數(shù),并以源代碼行數(shù)作為程序復雜性的質(zhì)量。以源代碼行數(shù)作為程序復雜性的質(zhì)量。 第10章 軟件質(zhì)量與質(zhì)量保證15軟件復雜性的度量方法軟件復雜性的度量方法-McCabe度量法度量法lMcCabe度量法是由度量法是由Thomas McCabe提出的一提出的一種基于程序控制流的復雜性度量方法。種基于程序控制流的復雜性度量方法。McCa

8、be復雜性度量又稱環(huán)路度量。它認為程復雜性度量又稱環(huán)路度量。它認為程序的復雜性很大程度上取決于程序的復雜性。序的復雜性很大程度上取決于程序的復雜性。單一的順序結(jié)構(gòu)最為簡單,循環(huán)和選擇所構(gòu)成單一的順序結(jié)構(gòu)最為簡單,循環(huán)和選擇所構(gòu)成的環(huán)路越多,程序就越復雜。這種方法以圖論的環(huán)路越多,程序就越復雜。這種方法以圖論為工具,先畫出程序圖,然后用該圖的環(huán)路數(shù)為工具,先畫出程序圖,然后用該圖的環(huán)路數(shù)作為程序復雜性的度量值。程序圖是退化的程作為程序復雜性的度量值。程序圖是退化的程序流程圖。也就是說,把程序流程圖的每一個序流程圖。也就是說,把程序流程圖的每一個處理符號都退化成一個結(jié)點,原來連接不同處處理符號都退

9、化成一個結(jié)點,原來連接不同處理符號的流線變成連接不同結(jié)點的有向弧,這理符號的流線變成連接不同結(jié)點的有向弧,這樣得到的有向圖就叫做程序圖。樣得到的有向圖就叫做程序圖。 第10章 軟件質(zhì)量與質(zhì)量保證16軟件復雜性的度量方法軟件復雜性的度量方法-McCabe度量法度量法第10章 軟件質(zhì)量與質(zhì)量保證17軟件復雜性的度量方法軟件復雜性的度量方法-McCabe度量法度量法 根據(jù)圖論,在一個強連通的有向圖根據(jù)圖論,在一個強連通的有向圖G中,環(huán)的個數(shù)中,環(huán)的個數(shù)V(G)由以下公由以下公式給出:式給出: V(G)=m-n+2pl其中,其中,V(G)是有向圖是有向圖G中環(huán)路數(shù),中環(huán)路數(shù),m是圖是圖G中弧數(shù),中弧數(shù)

10、,n是圖是圖G中結(jié)中結(jié)點數(shù),點數(shù),p是圖是圖G中強連通分量個數(shù)。在一個程序中,從程序圖的入中強連通分量個數(shù)。在一個程序中,從程序圖的入口點總能到達圖中任何一個結(jié)點,因此,程序總是連通的,但不口點總能到達圖中任何一個結(jié)點,因此,程序總是連通的,但不是強連通的。為了使圖成為強連通圖,從圖的入口點到出口點加是強連通的。為了使圖成為強連通圖,從圖的入口點到出口點加一條用虛線表示的有向邊,使圖成為強連通圖。這樣就可以使用一條用虛線表示的有向邊,使圖成為強連通圖。這樣就可以使用上式計算環(huán)路復雜性了。上式計算環(huán)路復雜性了。l以圖以圖4-11所給出的例子示范,其中,結(jié)點數(shù)所給出的例子示范,其中,結(jié)點數(shù)n=6,

11、弧數(shù)弧數(shù)m=9,p=1,則有則有 V(G=m-n+2p=9-6+2=5l即即McCabe環(huán)復雜度度量值為環(huán)復雜度度量值為5。這里選擇的。這里選擇的5個線形無關環(huán)路為個線形無關環(huán)路為(abefa),(beb),(abea),(acfa),(abcfa),其他任何環(huán)路都是這其他任何環(huán)路都是這5個環(huán)路的個環(huán)路的線性組合。線性組合。第10章 軟件質(zhì)量與質(zhì)量保證18McCabe度量法的缺點度量法的缺點對于不同種類的控制流的復雜度不能區(qū)分。對于不同種類的控制流的復雜度不能區(qū)分。簡單簡單IF語句與循環(huán)語句的復雜性同等看待。語句與循環(huán)語句的復雜性同等看待。嵌套嵌套IF語句與簡單語句與簡單CASE的復雜性是一樣

12、的。的復雜性是一樣的。模塊間接口當成一個簡單分支一樣處理。模塊間接口當成一個簡單分支一樣處理。一個具有一個具有1000行的順序程序與一行語句的復雜行的順序程序與一行語句的復雜性相同。性相同。l盡管盡管McCabe復雜度度量法有許多缺點,但它復雜度度量法有許多缺點,但它容易使用,而且在選擇方案和估計排錯費用等容易使用,而且在選擇方案和估計排錯費用等方面都是很有效的。方面都是很有效的。第10章 軟件質(zhì)量與質(zhì)量保證1910.4 軟件可靠性軟件可靠性 第10章 軟件質(zhì)量與質(zhì)量保證20軟件可靠性定義軟件可靠性定義l軟件可靠性定義表明了一個程序按照用軟件可靠性定義表明了一個程序按照用戶的要求和設計的目標,

13、執(zhí)行其功能的戶的要求和設計的目標,執(zhí)行其功能的正確程度。一個可靠的程序應要求是正正確程度。一個可靠的程序應要求是正確的、完整的、一致的和健壯的。確的、完整的、一致的和健壯的。l即:在給定的時間內(nèi),程序按照規(guī)定的即:在給定的時間內(nèi),程序按照規(guī)定的條件成功地運行的概率。條件成功地運行的概率。 第10章 軟件質(zhì)量與質(zhì)量保證21軟件可靠性定義的數(shù)學表達軟件可靠性定義的數(shù)學表達l設設R(t)代表在時間代表在時間(0,t)之間的軟件可靠性,之間的軟件可靠性,PE代表事件代表事件E的概率,則軟件可靠性可表示為:的概率,則軟件可靠性可表示為: R(t)=P在時間在時間(0,t)內(nèi)按規(guī)定條件運行成功內(nèi)按規(guī)定條件

14、運行成功l可靠性與軟件內(nèi)部的故障密切相關,如果軟件可靠性與軟件內(nèi)部的故障密切相關,如果軟件在交付使用時有遺留錯誤,則當出現(xiàn)某種組合在交付使用時有遺留錯誤,則當出現(xiàn)某種組合時,就會使程序在運行中失敗。當殘留錯誤的時,就會使程序在運行中失敗。當殘留錯誤的數(shù)量一定時,程序的運行時間越長,則發(fā)生失數(shù)量一定時,程序的運行時間越長,則發(fā)生失效的機會就越多,可靠性也隨之下降。設軟件效的機會就越多,可靠性也隨之下降。設軟件的故障率不隨時間而變化,則根據(jù)經(jīng)典的可靠的故障率不隨時間而變化,則根據(jù)經(jīng)典的可靠性理論。性理論。R(t)可以表示為時間與故障率的指數(shù)可以表示為時間與故障率的指數(shù)函數(shù)函數(shù) R(t)=tete第

15、10章 軟件質(zhì)量與質(zhì)量保證22軟件可靠性指標軟件可靠性指標l軟件可靠性與可用性的定量指標,是指能夠以軟件可靠性與可用性的定量指標,是指能夠以數(shù)字概念來描述可靠性的數(shù)學表達式中所使用數(shù)字概念來描述可靠性的數(shù)學表達式中所使用的量。下面主要討論常用指標平均失效等待時的量。下面主要討論常用指標平均失效等待時間間MTTF與平均失效間隔時間與平均失效間隔時間MTBF。1. MTTF(Mean Time To Failure) 平均失效等待時間平均失效等待時間MTTF定義為:定義為:2. MTBF(Mean Time Betmeen Failure) MTBF是平均失效間隔時間,它是指兩次相繼是平均失效間隔

16、時間,它是指兩次相繼失效之間的平均時間。失效之間的平均時間。111niitnMTTF第10章 軟件質(zhì)量與質(zhì)量保證23軟件可靠性模型軟件可靠性模型-正比于遺留故障數(shù)的宏觀模型正比于遺留故障數(shù)的宏觀模型l程序的故障率與遺留錯誤的數(shù)量成正比,根據(jù)程序的故障率與遺留錯誤的數(shù)量成正比,根據(jù)程序中遺留錯誤的多少,就可以預測程序的可程序中遺留錯誤的多少,就可以預測程序的可靠性。靠性。l設設 t=程序的調(diào)試時間程序的調(diào)試時間 ET=調(diào)試前的錯誤總數(shù)調(diào)試前的錯誤總數(shù) Ec(t)=在時間在時間(0,t)期間糾正的錯誤期間糾正的錯誤 Er(t)=在時間在時間t時的遺留錯誤量時的遺留錯誤量 IT=程序的長度或指令的總

17、數(shù)程序的長度或指令的總數(shù) 則則 Er(t)= ET - Ec(t) 用用 除以上述等式兩邊,得除以上述等式兩邊,得到錯誤的規(guī)格化值到錯誤的規(guī)格化值第10章 軟件質(zhì)量與質(zhì)量保證24軟件可靠性模型軟件可靠性模型-平均失效等待時間平均失效等待時間l已知當故障率為獨立于時間的常數(shù)時,已知當故障率為獨立于時間的常數(shù)時,l MTTF=1/l 即即l l為簡化討論,又在時間為簡化討論,又在時間0至至t期間的糾錯率為常期間的糾錯率為常數(shù),且等于數(shù),且等于,則,則l l 所以,平均故障間隔時間的模型可簡寫為:所以,平均故障間隔時間的模型可簡寫為:l )(/(1tIEkcTTMTTF)(c)/(1TTIEkMTT

18、F第10章 軟件質(zhì)量與質(zhì)量保證25軟件可靠性模型軟件可靠性模型-錯誤植入模型錯誤植入模型l這類模型的中心思想,是通過估計殘留錯誤的數(shù)量,這類模型的中心思想,是通過估計殘留錯誤的數(shù)量,來確定程序的可靠性。具體的作法是:測試之前先在來確定程序的可靠性。具體的作法是:測試之前先在程序中植入一批人為的錯誤,在測試過程中分別統(tǒng)計程序中植入一批人為的錯誤,在測試過程中分別統(tǒng)計出測試小組的原有錯誤和植入錯誤,然后由下列計算出測試小組的原有錯誤和植入錯誤,然后由下列計算式計算原有錯誤。式計算原有錯誤。 假設假設 N=程序中原來殘留的錯誤數(shù);程序中原來殘留的錯誤數(shù); S=新植入程序的錯誤數(shù);新植入程序的錯誤數(shù);

19、 n=測試中發(fā)現(xiàn)的原有錯誤數(shù);測試中發(fā)現(xiàn)的原有錯誤數(shù); s=測試中發(fā)現(xiàn)的植入錯誤數(shù)測試中發(fā)現(xiàn)的植入錯誤數(shù) 如果調(diào)試中對這兩類錯誤具有同樣的發(fā)現(xiàn)能力,則有如果調(diào)試中對這兩類錯誤具有同樣的發(fā)現(xiàn)能力,則有 或或 nNsSnsSN 第10章 軟件質(zhì)量與質(zhì)量保證2610.5 軟件評審軟件評審 第10章 軟件質(zhì)量與質(zhì)量保證27軟件評審軟件評審l對軟件工程來說,軟件評審是一個對軟件工程來說,軟件評審是一個“過濾器過濾器”,在軟件開發(fā)的各個階段都要采用評審的方法,在軟件開發(fā)的各個階段都要采用評審的方法,以發(fā)現(xiàn)軟件中的缺陷,然后加以改正。以發(fā)現(xiàn)軟件中的缺陷,然后加以改正。l把把“質(zhì)量質(zhì)量”理解為理解為“用戶滿意

20、程度用戶滿意程度”。為使用。為使用戶滿意,有兩個必要條件:戶滿意,有兩個必要條件: (1) 設計的規(guī)格說明書要符合用戶的要求。設計的規(guī)格說明書要符合用戶的要求。 (2) 程序要按照設計規(guī)格說明書所規(guī)定的情況正程序要按照設計規(guī)格說明書所規(guī)定的情況正確執(zhí)行。確執(zhí)行。第10章 軟件質(zhì)量與質(zhì)量保證28設計質(zhì)量的評審內(nèi)容設計質(zhì)量的評審內(nèi)容(1) 評價軟件的規(guī)格說明是否合乎用戶的要求評價軟件的規(guī)格說明是否合乎用戶的要求,即總體設計即總體設計思想和設計方針是否明確思想和設計方針是否明確;需求規(guī)格說明是否得到了用需求規(guī)格說明是否得到了用戶或單位上級機關的批準戶或單位上級機關的批準;需求規(guī)格說明與軟件的概要需求

21、規(guī)格說明與軟件的概要設計計規(guī)格說明是否一致等?設計計規(guī)格說明是否一致等? (2) 評審可靠性評審可靠性,即是否能避免輸入異常(錯誤或超載等)、即是否能避免輸入異常(錯誤或超載等)、硬件失效及軟件失效所產(chǎn)生的失效,一旦發(fā)生應能及硬件失效及軟件失效所產(chǎn)生的失效,一旦發(fā)生應能及時采取代替或恢復手段時采取代替或恢復手段 。(3) 評審保密措施實現(xiàn)情況評審保密措施實現(xiàn)情況,即是否提供對使用系統(tǒng)資格進即是否提供對使用系統(tǒng)資格進行檢查行檢查;對特定數(shù)據(jù)的使用資格、特殊功能的使用資格對特定數(shù)據(jù)的使用資格、特殊功能的使用資格進行檢查,在查出有違反使用資格情況后,能否向系進行檢查,在查出有違反使用資格情況后,能否

22、向系統(tǒng)管理人員報告有關信息;是否提供對系統(tǒng)內(nèi)重要數(shù)統(tǒng)管理人員報告有關信息;是否提供對系統(tǒng)內(nèi)重要數(shù)據(jù)加密的功能等。據(jù)加密的功能等。第10章 軟件質(zhì)量與質(zhì)量保證29設計質(zhì)量的評審內(nèi)容設計質(zhì)量的評審內(nèi)容(4) 評審操作特性實施情況,即操作命令和操作評審操作特性實施情況,即操作命令和操作信息的恰當性,輸入數(shù)據(jù)與輸入控制語句的恰信息的恰當性,輸入數(shù)據(jù)與輸入控制語句的恰當性;輸出數(shù)據(jù)的恰當性;應答時間的恰當性當性;輸出數(shù)據(jù)的恰當性;應答時間的恰當性等。等。(5) 評審性能實現(xiàn)情況,即是否達到所規(guī)定性能評審性能實現(xiàn)情況,即是否達到所規(guī)定性能的的目標值。的的目標值。(6) 評審軟件是否具有可修改性、可擴充性、

23、可評審軟件是否具有可修改性、可擴充性、可互換性和可移植性。互換性和可移植性。(7) 評審軟件是否具有可測試性。評審軟件是否具有可測試性。(8) 評審軟件是否具有復用性。評審軟件是否具有復用性。 第10章 軟件質(zhì)量與質(zhì)量保證30程序質(zhì)量的評審內(nèi)容程序質(zhì)量的評審內(nèi)容-軟件的結(jié)構(gòu)軟件的結(jié)構(gòu) (1) 功能結(jié)構(gòu)。在軟件的各種結(jié)構(gòu)中,功能結(jié)構(gòu)是用戶唯功能結(jié)構(gòu)。在軟件的各種結(jié)構(gòu)中,功能結(jié)構(gòu)是用戶唯一能見到的結(jié)構(gòu)。一能見到的結(jié)構(gòu)。l需要檢查的項目有:需要檢查的項目有:l數(shù)據(jù)結(jié)構(gòu):包括數(shù)據(jù)名和定義;構(gòu)成該數(shù)據(jù)的數(shù)據(jù)數(shù)據(jù)結(jié)構(gòu):包括數(shù)據(jù)名和定義;構(gòu)成該數(shù)據(jù)的數(shù)據(jù)項;數(shù)據(jù)與數(shù)據(jù)間的關系。項;數(shù)據(jù)與數(shù)據(jù)間的關系。l功能

24、結(jié)構(gòu):包括功能名和定義;構(gòu)成該功能的子功功能結(jié)構(gòu):包括功能名和定義;構(gòu)成該功能的子功能;功能與子功能之間的關系。能;功能與子功能之間的關系。l數(shù)據(jù)結(jié)構(gòu)和功能結(jié)構(gòu)之間的對應關系:包括數(shù)據(jù)元數(shù)據(jù)結(jié)構(gòu)和功能結(jié)構(gòu)之間的對應關系:包括數(shù)據(jù)元素與功能元素之間的對應關系;數(shù)據(jù)結(jié)構(gòu)與功能結(jié)構(gòu)素與功能元素之間的對應關系;數(shù)據(jù)結(jié)構(gòu)與功能結(jié)構(gòu)的一致性。的一致性。(2) 功能的通用性。功能的通用性。(3) 模塊的層次。模塊的層次。第10章 軟件質(zhì)量與質(zhì)量保證31程序質(zhì)量的評審內(nèi)容程序質(zhì)量的評審內(nèi)容-軟件的結(jié)構(gòu)軟件的結(jié)構(gòu) (4) 模塊結(jié)構(gòu)。模塊結(jié)構(gòu)。l控制流結(jié)構(gòu):規(guī)定了處理模塊與處理模塊之間的流控制流結(jié)構(gòu):規(guī)定了處理模

25、塊與處理模塊之間的流程關系。檢查處理模塊之間的控制轉(zhuǎn)移關系與控制轉(zhuǎn)程關系。檢查處理模塊之間的控制轉(zhuǎn)移關系與控制轉(zhuǎn)移形式(調(diào)用方式)。移形式(調(diào)用方式)。l數(shù)據(jù)流結(jié)構(gòu):規(guī)定了數(shù)據(jù)模塊是如何被處理模塊進數(shù)據(jù)流結(jié)構(gòu):規(guī)定了數(shù)據(jù)模塊是如何被處理模塊進行加工的流程關系。檢查處理模塊與數(shù)據(jù)模塊之間的行加工的流程關系。檢查處理模塊與數(shù)據(jù)模塊之間的對應關系;處理模塊與數(shù)據(jù)模對應關系;處理模塊與數(shù)據(jù)模 塊之間的存取關系,如塊之間的存取關系,如建立、刪除、查詢、修改等。建立、刪除、查詢、修改等。l模塊結(jié)構(gòu)與功能結(jié)構(gòu)之間的對應關系:包括功能結(jié)模塊結(jié)構(gòu)與功能結(jié)構(gòu)之間的對應關系:包括功能結(jié)構(gòu)與控制流結(jié)構(gòu)的對應關系;功能

26、結(jié)構(gòu)與數(shù)據(jù)流結(jié)構(gòu)構(gòu)與控制流結(jié)構(gòu)的對應關系;功能結(jié)構(gòu)與數(shù)據(jù)流結(jié)構(gòu)的對應關系;每個模塊的定義的對應關系;每個模塊的定義 (包括功能、輸入與輸(包括功能、輸入與輸出數(shù)據(jù))。出數(shù)據(jù))。(5) 處理過程的結(jié)構(gòu)。處理過程是最基本的加工邏輯過程。處理過程的結(jié)構(gòu)。處理過程是最基本的加工邏輯過程。第10章 軟件質(zhì)量與質(zhì)量保證32程序質(zhì)量的評審內(nèi)容程序質(zhì)量的評審內(nèi)容-與運行環(huán)境的接口與運行環(huán)境的接口 (1) 與硬件的接口。與硬件的接口。(2) 與用戶的接口。與用戶的接口。l隨著軟件運行環(huán)境的變更,軟件的規(guī)格隨著軟件運行環(huán)境的變更,軟件的規(guī)格也在跟著不斷地變更。運行環(huán)境變更時也在跟著不斷地變更。運行環(huán)境變更時的影響

27、范圍,需要從以下三個方面來分的影響范圍,需要從以下三個方面來分析:析:(1) 與運行環(huán)境的接口。與運行環(huán)境的接口。(2) 在每項設計工程規(guī)格內(nèi)的影響。在每項設計工程規(guī)格內(nèi)的影響。(3) 在設計工程相互間的影響。在設計工程相互間的影響。第10章 軟件質(zhì)量與質(zhì)量保證3311.6 軟件容錯技術(shù)軟件容錯技術(shù) 第10章 軟件質(zhì)量與質(zhì)量保證34軟件容錯技術(shù)軟件容錯技術(shù)l提高軟件質(zhì)量和可靠性的技術(shù)大致分為提高軟件質(zhì)量和可靠性的技術(shù)大致分為兩類,一類是避開錯誤(兩類,一類是避開錯誤(fault-avoidance)技術(shù),即在開發(fā)的過程中不讓差錯潛入技術(shù),即在開發(fā)的過程中不讓差錯潛入軟件的技術(shù);另一類是容錯(軟

28、件的技術(shù);另一類是容錯(fault-tolerance)技術(shù),即對某些無法避開的)技術(shù),即對某些無法避開的差錯,使其影響減少至最小的技術(shù)。差錯,使其影響減少至最小的技術(shù)。第10章 軟件質(zhì)量與質(zhì)量保證35容錯軟件定義容錯軟件定義(1)規(guī)定功能的軟件,在一定程度上對自身錯)規(guī)定功能的軟件,在一定程度上對自身錯誤的作用(軟件錯誤)具有屏蔽能力,則稱此誤的作用(軟件錯誤)具有屏蔽能力,則稱此軟件為具有容錯功能的軟件,即容錯軟件。軟件為具有容錯功能的軟件,即容錯軟件。(2)規(guī)定功能的軟件,在一定程度上能從錯誤)規(guī)定功能的軟件,在一定程度上能從錯誤狀態(tài)自動恢復到正常狀態(tài),則稱之為容錯軟件。狀態(tài)自動恢復到正

29、常狀態(tài),則稱之為容錯軟件。(3)規(guī)定功能的軟件,在因錯誤而發(fā)生錯誤時,)規(guī)定功能的軟件,在因錯誤而發(fā)生錯誤時,仍然能在一定程度上完成預期的功能,則把該仍然能在一定程度上完成預期的功能,則把該軟件稱為容錯軟件。軟件稱為容錯軟件。(4)規(guī)定功能的軟件,在一定程度上具有容錯)規(guī)定功能的軟件,在一定程度上具有容錯能力,則稱之為容錯軟件。能力,則稱之為容錯軟件。第10章 軟件質(zhì)量與質(zhì)量保證36容錯的一般方法容錯的一般方法1、結(jié)構(gòu)冗余、結(jié)構(gòu)冗余(1)靜態(tài)冗余。常用的有:三模冗余靜態(tài)冗余。常用的有:三模冗余TMR(Triple Moduler Redundancy)和多模冗余。)和多模冗余。(2)動態(tài)冗余。動態(tài)冗余的主要方式是多重模塊待動態(tài)冗余。動態(tài)冗余的主要方式是多重模塊待機儲備,當系統(tǒng)檢測到某工作模塊出現(xiàn)錯誤時,機儲備,當系統(tǒng)檢測到某工作模塊出現(xiàn)錯誤時,就用一個備用的模塊來頂替它并重新運行。就用一個備用的模塊來頂替它并重新運行。(3)混合冗余。它兼有靜態(tài)冗余和動態(tài)冗余的長處。混合冗余。它兼有靜態(tài)冗余和動態(tài)冗余的長處。第10章 軟件質(zhì)量與質(zhì)量保證37容錯的一般方法容錯的一般方法2、信息冗余、信息冗余l(xiāng)為檢測或糾正信息在運算或傳輸中

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論