




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、第10章 軟件質(zhì)量與質(zhì)量保證軟件工程課件講稿-肖浩.10.1 軟件質(zhì)量的概念.軟件質(zhì)量的定義(1) 與所確定的功能和性能需求的一致性。(2) 與所成文的開發(fā)規(guī)范的一致性。(3) 與一切專業(yè)開發(fā)的軟件所期望的隱含特性的一致性。.影響軟件質(zhì)量的要素(1) 可以直接度量的要素,如單位時間內(nèi)千行代碼KLOC中產(chǎn)生的錯誤數(shù)。(2) 只能間接度量的要素,如可用性或可維護性。在軟件開發(fā)和維護的過程中,為了定量地評價軟件質(zhì)量,必需對軟件質(zhì)量特性進展度量,以測定軟件具有要求質(zhì)量特性的程度。 .什么是軟件質(zhì)量保證軟件的質(zhì)量保證就是向用戶及社會提供稱心的高質(zhì)量的產(chǎn)品,確保軟件產(chǎn)品從誕生到消亡為止的一切階段的質(zhì)量的活
2、動,即確定、到達和維護需求的軟件質(zhì)量而進展的一切有方案、有系統(tǒng)的管理活動。.質(zhì)量保證的戰(zhàn)略(1) 以檢測為重。產(chǎn)品制成后才進展檢測,這種檢測只能判別產(chǎn)品的質(zhì)量,不能提高產(chǎn)質(zhì)量量。(2) 以過程管理為重。把質(zhì)量保證任務(wù)重點放在過程管理上,對制造過程的每一道工序都進展質(zhì)量控制。(3) 以新產(chǎn)品開發(fā)為重。.質(zhì)量保證的主要義務(wù)(1) 正確定義用戶要求。(2) 技術(shù)方法的運用。(3) 提高軟件開發(fā)的工程才干。(4) 軟件的復(fù)用。(5) 發(fā)揚每個開發(fā)者的才干。(6) 組織外部力量協(xié)作。(7) 排除無效力動。最大的無效力動是因需求規(guī)格闡明有誤、設(shè)計有誤而呵斥的返工。(8) 提高方案和管理質(zhì)量。.質(zhì)量保證與檢
3、驗軟件質(zhì)量必需在設(shè)計和實現(xiàn)過程中加以保證。 .10.2 質(zhì)量度量模型.McCall質(zhì)量度量模型. ISO的軟件質(zhì)量評價模型.10.3 軟件復(fù)雜性 .軟件復(fù)雜性的根本概念(1) 規(guī)模,即總共的指令數(shù),或源程序行數(shù)。(2) 難度,通常由程序中出現(xiàn)的操作數(shù)的數(shù)目所決議的量來表示。(3) 構(gòu)造,通常用于程序構(gòu)造有關(guān)的度量來表示。(4) 智能度,即算法的難易程度。軟件復(fù)雜性主要表如今程序的復(fù)雜性。程序的復(fù)雜性主要指模塊內(nèi)程序的復(fù)雜性。它直接關(guān)聯(lián)到軟件開發(fā)費用的多少、開發(fā)周期長短和軟件內(nèi)部埋伏錯誤的多少。同時它也是軟件可了解性的另一種度量。 .軟件復(fù)雜性的度量方法-代碼行度量法度量程序的復(fù)雜性,最簡單的方
4、法就是統(tǒng)計程序的源代碼行數(shù)。此方法的根本思索是統(tǒng)計一個程序的源代碼行數(shù),并以源代碼行數(shù)作為程序復(fù)雜性的質(zhì)量。 .軟件復(fù)雜性的度量方法-McCabe度量法McCabe度量法是由Thomas McCabe提出的一種基于程序控制流的復(fù)雜性度量方法。McCabe復(fù)雜性度量又稱環(huán)路度量。它以為程序的復(fù)雜性很大程度上取決于程序的復(fù)雜性。單一的順序構(gòu)造最為簡單,循環(huán)和選擇所構(gòu)成的環(huán)路越多,程序就越復(fù)雜。這種方法以圖論為工具,先畫出程序圖,然后用該圖的環(huán)路數(shù)作為程序復(fù)雜性的度量值。程序圖是退化的程序流程圖。也就是說,把程序流程圖的每一個處置符號都退化成一個結(jié)點,原來銜接不同處置符號的流線變成銜接不同結(jié)點的有向
5、弧,這樣得到的有向圖就叫做程序圖。 .軟件復(fù)雜性的度量方法-McCabe度量法.軟件復(fù)雜性的度量方法-McCabe度量法 根據(jù)圖論,在一個強連通的有向圖G中,環(huán)的個數(shù)V(G)由以下公式給出: V(G)=m-n+2p其中,V(G)是有向圖G中環(huán)路數(shù),m是圖G中弧數(shù),n是圖G中結(jié)點數(shù),p是圖G中強連通分量個數(shù)。在一個程序中,從程序圖的入口點總能到達圖中任何一個結(jié)點,因此,程序總是連通的,但不是強連通的。為了使圖成為強連通圖,從圖的入口點到出口點加一條用虛線表示的有向邊,使圖成為強連通圖。這樣就可以運用上式計算環(huán)路復(fù)雜性了。以圖4-11所給出的例子示范,其中,結(jié)點數(shù)n=6,弧數(shù)m=9,p=1,那么有
6、 V(G=m-n+2p=9-6+2=5即McCabe環(huán)復(fù)雜度度量值為5。這里選擇的5個線形無關(guān)環(huán)路為(abefa),(beb),(abea),(acfa),(abcfa),其他任何環(huán)路都是這5個環(huán)路的線性組合。.McCabe度量法的缺陷對于不同種類的控制流的復(fù)雜度不能區(qū)分。簡單IF語句與循環(huán)語句的復(fù)雜性同等對待。嵌套IF語句與簡單CASE的復(fù)雜性是一樣的。模塊間接口當(dāng)成一個簡單分支一樣處置。一個具有1000行的順序程序與一行語句的復(fù)雜性一樣。雖然McCabe復(fù)雜度度量法有許多缺陷,但它容易運用,而且在選擇方案和估計排錯費用等方面都是很有效的。.10.4 軟件可靠性 .軟件可靠性定義軟件可靠性定
7、義闡明了一個程序按照用戶的要求和設(shè)計的目的,執(zhí)行其功能的正確程度。一個可靠的程序應(yīng)要求是正確的、完好的、一致的和強壯的。即:在給定的時間內(nèi),程序按照規(guī)定的條件勝利地運轉(zhuǎn)的概率。 .軟件可靠性定義的數(shù)學(xué)表達設(shè)R(t)代表在時間(0,t)之間的軟件可靠性,PE代表事件E的概率,那么軟件可靠性可表示為: R(t)=P在時間(0,t)內(nèi)按規(guī)定條件運轉(zhuǎn)勝利可靠性與軟件內(nèi)部的缺點親密相關(guān),假設(shè)軟件在交付運用時有遺留錯誤,那么當(dāng)出現(xiàn)某種組合時,就會使程序在運轉(zhuǎn)中失敗。當(dāng)殘留錯誤的數(shù)量一定時,程序的運轉(zhuǎn)時間越長,那么發(fā)生失效的時機就越多,可靠性也隨之下降。設(shè)軟件的缺點率不隨時間而變化,那么根據(jù)經(jīng)典的可靠性實際
8、。R(t)可以表示為時間與缺點率的指數(shù)函數(shù) R(t)=.軟件可靠性目的軟件可靠性與可用性的定量目的,是指可以以數(shù)字概念來描畫可靠性的數(shù)學(xué)表達式中所運用的量。下面主要討論常用目的平均失效等待時間MTTF與平均失效間隔時間MTBF。1. MTTFMean Time To Failure 平均失效等待時間MTTF定義為:2. MTBFMean Time Betmeen Failure MTBF是平均失效間隔時間,它是指兩次相繼失效之間的平均時間。.軟件可靠性模型-正比于遺留缺點數(shù)的宏觀模型程序的缺點率與遺留錯誤的數(shù)量成正比,根據(jù)程序中遺留錯誤的多少,就可以預(yù)測程序的可靠性。設(shè) t=程序的調(diào)試時間 E
9、T=調(diào)試前的錯誤總數(shù) Ec(t)=在時間(0,t)期間糾正的錯誤 Er(t)=在時間t時的遺留錯誤量 IT=程序的長度或指令的總數(shù) 那么 Er(t)= ET - Ec(t) 用 除以上述等式兩邊,得到錯誤的規(guī)格化值.軟件可靠性模型-平均失效等待時間知當(dāng)缺點率為獨立于時間的常數(shù)時, MTTF=1/ 即 為簡化討論,又在時間0至t期間的糾錯率為常數(shù),且等于,那么 所以,平均缺點間隔時間的模型可簡寫為: .軟件可靠性模型-錯誤植入模型這類模型的中心思想,是經(jīng)過估計殘留錯誤的數(shù)量,來確定程序的可靠性。詳細的作法是:測試之前先在程序中植入一批人為的錯誤,在測試過程中分別統(tǒng)計出測試小組的原有錯誤和植入錯誤
10、,然后由以下計算式計算原有錯誤。 假設(shè) N=程序中原來殘留的錯誤數(shù); S=新植入程序的錯誤數(shù); n=測試中發(fā)現(xiàn)的原有錯誤數(shù); s=測試中發(fā)現(xiàn)的植入錯誤數(shù) 假設(shè)調(diào)試中對這兩類錯誤具有同樣的發(fā)現(xiàn)才干,那么有 或 .10.5 軟件評審 .軟件評審對軟件工程來說,軟件評審是一個“過濾器,在軟件開發(fā)的各個階段都要采用評審的方法,以發(fā)現(xiàn)軟件中的缺陷,然后加以矯正。把“質(zhì)量了解為“用戶稱心程度。為運用戶稱心,有兩個必要條件: (1) 設(shè)計的規(guī)格闡明書要符合用戶的要求。 (2) 程序要按照設(shè)計規(guī)格闡明書所規(guī)定的情況正確執(zhí)行。.設(shè)計質(zhì)量的評審內(nèi)容(1) 評價軟件的規(guī)格闡明能否符合用戶的要求,即總體設(shè)計思想和設(shè)計
11、方針能否明確;需求規(guī)格闡明能否得到了用戶或單位上級機關(guān)的同意;需求規(guī)格闡明與軟件的概要設(shè)計計規(guī)格闡明能否一致等? (2) 評審可靠性,即能否能防止輸入異常錯誤或超載等、硬件失效及軟件失效所產(chǎn)生的失效,一旦發(fā)生應(yīng)能及時采取替代或恢復(fù)手段 。(3) 評審嚴密措施實現(xiàn)情況,即能否提供對運用系統(tǒng)資歷進展檢查;對特定數(shù)據(jù)的運用資歷、特殊功能的運用資歷進展檢查,在查出有違反運用資歷情況后,能否向系統(tǒng)管理人員報告有關(guān)信息;能否提供對系統(tǒng)內(nèi)重要數(shù)據(jù)加密的功能等。.設(shè)計質(zhì)量的評審內(nèi)容(4) 評審操作特性實施情況,即操作命令和操作信息的恰當(dāng)性,輸入數(shù)據(jù)與輸入控制語句的恰當(dāng)性;輸出數(shù)據(jù)的恰當(dāng)性;應(yīng)對時間的恰當(dāng)性等。
12、(5) 評審性能實現(xiàn)情況,即能否到達所規(guī)定性能的的目的值。(6) 評審軟件能否具有可修正性、可擴展性、可互換性和可移植性。(7) 評審軟件能否具有可測試性。(8) 評審軟件能否具有復(fù)用性。 .程序質(zhì)量的評審內(nèi)容-軟件的構(gòu)造 (1) 功能構(gòu)造。在軟件的各種構(gòu)造中,功能構(gòu)造是用戶獨一能見到的構(gòu)造。需求檢查的工程有:數(shù)據(jù)構(gòu)造:包括數(shù)據(jù)名和定義;構(gòu)成該數(shù)據(jù)的數(shù)據(jù)項;數(shù)據(jù)與數(shù)據(jù)間的關(guān)系。功能構(gòu)造:包括功能名和定義;構(gòu)成該功能的子功能;功能與子功能之間的關(guān)系。數(shù)據(jù)構(gòu)造和功能構(gòu)造之間的對應(yīng)關(guān)系:包括數(shù)據(jù)元素與功能元素之間的對應(yīng)關(guān)系;數(shù)據(jù)構(gòu)造與功能構(gòu)造的一致性。(2) 功能的通用性。(3) 模塊的層次。.程序
13、質(zhì)量的評審內(nèi)容-軟件的構(gòu)造 (4) 模塊構(gòu)造。控制流構(gòu)造:規(guī)定了處置模塊與處置模塊之間的流程關(guān)系。檢查處置模塊之間的控制轉(zhuǎn)移關(guān)系與控制轉(zhuǎn)移方式調(diào)用方式。數(shù)據(jù)流構(gòu)造:規(guī)定了數(shù)據(jù)模塊是如何被處置模塊進展加工的流程關(guān)系。檢查處置模塊與數(shù)據(jù)模塊之間的對應(yīng)關(guān)系;處置模塊與數(shù)據(jù)模 塊之間的存取關(guān)系,如建立、刪除、查詢、修正等。模塊構(gòu)造與功能構(gòu)造之間的對應(yīng)關(guān)系:包括功能構(gòu)造與控制流構(gòu)造的對應(yīng)關(guān)系;功能構(gòu)造與數(shù)據(jù)流構(gòu)造的對應(yīng)關(guān)系;每個模塊的定義 包括功能、輸入與輸出數(shù)據(jù)。(5) 處置過程的構(gòu)造。處置過程是最根本的加工邏輯過程。.程序質(zhì)量的評審內(nèi)容-與運轉(zhuǎn)環(huán)境的接口 (1) 與硬件的接口。(2) 與用戶的接口。
14、隨著軟件運轉(zhuǎn)環(huán)境的變卦,軟件的規(guī)格也在跟著不斷地變卦。運轉(zhuǎn)環(huán)境變卦時的影響范圍,需求從以下三個方面來分析:(1) 與運轉(zhuǎn)環(huán)境的接口。(2) 在每項設(shè)計工程規(guī)格內(nèi)的影響。(3) 在設(shè)計工程相互間的影響。.11.6 軟件容錯技術(shù) .軟件容錯技術(shù)提高軟件質(zhì)量和可靠性的技術(shù)大致分為兩類,一類是避開錯誤fault-avoidance技術(shù),即在開發(fā)的過程中不讓過失潛入軟件的技術(shù);另一類是容錯fault-tolerance技術(shù),即對某些無法避開的過失,使其影響減少至最小的技術(shù)。.容錯軟件定義1規(guī)定功能的軟件,在一定程度上對本身錯誤的作用軟件錯誤具有屏蔽才干,那么稱此軟件為具有容錯功能的軟件,即容錯軟件。2規(guī)
15、定功能的軟件,在一定程度上能從錯誤形狀自動恢復(fù)到正常形狀,那么稱之為容錯軟件。3規(guī)定功能的軟件,在因錯誤而發(fā)生錯誤時,依然能在一定程度上完成預(yù)期的功能,那么把該軟件稱為容錯軟件。4規(guī)定功能的軟件,在一定程度上具有容錯才干,那么稱之為容錯軟件。.容錯的普通方法1、構(gòu)造冗余(1)靜態(tài)冗余。常用的有:三模冗余TMRTriple Moduler Redundancy和多模冗余。(2)動態(tài)冗余。動態(tài)冗余的主要方式是多重模塊待機貯藏,當(dāng)系統(tǒng)檢測到某任務(wù)模塊出現(xiàn)錯誤時,就用一個備用的模塊來頂替它并重新運轉(zhuǎn)。(3)混合冗余。它兼有靜態(tài)冗余和動態(tài)冗余的優(yōu)點。.容錯的普通方法2、信息冗余為檢測或糾正信息在運算或傳輸中的錯誤須外加一部分信息,這種景象稱為信息冗余。3、時間冗余時間冗余是指以反復(fù)執(zhí)行指令指令復(fù)執(zhí)或程序程序復(fù)算來消除瞬時錯誤帶來的影響。4、冗余附加技術(shù)冗余附加技術(shù)是指實現(xiàn)上述冗余技術(shù)所需的資源和技術(shù)。.容錯軟件的設(shè)計過程容錯系統(tǒng)的設(shè)計過程包括以下設(shè)計步驟:1按設(shè)計義務(wù)要求進展常規(guī)設(shè)計,盡量保證設(shè)計的正確。 按常規(guī)設(shè)計得到非容錯構(gòu)造,它是容錯系統(tǒng)構(gòu)成的根底。在構(gòu)造冗余中,不論是主模塊還是備用模塊的設(shè)計和實現(xiàn),都要在費用答應(yīng)的 條件下,用調(diào)試的方法盡能夠提高
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 城鎮(zhèn)污水管網(wǎng)建設(shè)項目安全管理方案(參考模板)
- xx河流排水防澇設(shè)施建設(shè)項目數(shù)字化方案(范文)
- 城鎮(zhèn)污水管網(wǎng)建設(shè)項目申請報告(模板范文)
- 鄉(xiāng)村振興戰(zhàn)略下能源電力行業(yè)面臨的挑戰(zhàn)及對策
- 物流與供應(yīng)鏈管理教案
- 五年級學(xué)期學(xué)習(xí)計劃(34篇)
- 2025年光學(xué)纖維面板系列項目發(fā)展計劃
- 五年級科學(xué)上冊教案 - 5《身體的“聯(lián)絡(luò)員”》 教科版
- 中暑現(xiàn)場應(yīng)急處置方案
- 2025年大流量羅茨鼓風(fēng)機項目發(fā)展計劃
- 韶光新豐縣豐城街道辦事處招聘執(zhí)法輔助人員筆試真題2024
- 檢查檢驗結(jié)果互認工作管理制度
- 硬膜外血腫的護理常規(guī)
- 光伏電站安全生產(chǎn)管理制度匯編
- 農(nóng)村小學(xué)生科技活動方案
- 電腦設(shè)備報廢管理制度
- 2025年北京高考物理試卷真題(含答案解析)
- 英語教學(xué)課件Unit 6 Useful numbers課件6
- GB/T 45823-2025光伏單晶硅生長用石英坩堝高純內(nèi)層砂
- 2025至2030中國建設(shè)工程質(zhì)量檢測產(chǎn)業(yè)市場深度調(diào)研及發(fā)展趨勢與投資報告
- 胸痛醫(yī)療質(zhì)控中心2025年工作計劃
評論
0/150
提交評論