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

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

軟件質(zhì)量與質(zhì)量保證第1頁(yè),課件共39頁(yè),創(chuàng)作于2023年2月110.1軟件質(zhì)量的概念第2頁(yè),課件共39頁(yè),創(chuàng)作于2023年2月2軟件質(zhì)量的定義(1)與所確定的功能和性能需求的一致性。(2)與所成文的開(kāi)發(fā)標(biāo)準(zhǔn)的一致性。(3)與所有專(zhuān)業(yè)開(kāi)發(fā)的軟件所期望的隱含特性的一致性。第3頁(yè),課件共39頁(yè),創(chuàng)作于2023年2月3影響軟件質(zhì)量的因素(1)可以直接度量的因素,如單位時(shí)間內(nèi)千行代碼(KLOC)中產(chǎn)生的錯(cuò)誤數(shù)。(2)只能間接度量的因素,如可用性或可維護(hù)性。在軟件開(kāi)發(fā)和維護(hù)的過(guò)程中,為了定量地評(píng)價(jià)軟件質(zhì)量,必須對(duì)軟件質(zhì)量特性進(jìn)行度量,以測(cè)定軟件具有要求質(zhì)量特性的程度。第4頁(yè),課件共39頁(yè),創(chuàng)作于2023年2月4什么是軟件質(zhì)量保證軟件的質(zhì)量保證就是向用戶(hù)及社會(huì)提供滿(mǎn)意的高質(zhì)量的產(chǎn)品,確保軟件產(chǎn)品從誕生到消亡為止的所有階段的質(zhì)量的活動(dòng),即確定、達(dá)到和維護(hù)需要的軟件質(zhì)量而進(jìn)行的所有有計(jì)劃、有系統(tǒng)的管理活動(dòng)。第5頁(yè),課件共39頁(yè),創(chuàng)作于2023年2月5質(zhì)量保證的策略(1)以檢測(cè)為重。產(chǎn)品制成后才進(jìn)行檢測(cè),這種檢測(cè)只能判斷產(chǎn)品的質(zhì)量,不能提高產(chǎn)品質(zhì)量。(2)以過(guò)程管理為重。把質(zhì)量保證工作重點(diǎn)放在過(guò)程管理上,對(duì)制造過(guò)程的每一道工序都進(jìn)行質(zhì)量控制。(3)以新產(chǎn)品開(kāi)發(fā)為重。第6頁(yè),課件共39頁(yè),創(chuàng)作于2023年2月6質(zhì)量保證的主要任務(wù)(1)正確定義用戶(hù)要求。(2)技術(shù)方法的應(yīng)用。(3)提高軟件開(kāi)發(fā)的工程能力。(4)軟件的復(fù)用。(5)發(fā)揮每個(gè)開(kāi)發(fā)者的能力。(6)組織外部力量協(xié)作。(7)排除無(wú)效勞動(dòng)。最大的無(wú)效勞動(dòng)是因需求規(guī)格說(shuō)明有誤、設(shè)計(jì)有誤而造成的返工。(8)提高計(jì)劃和管理質(zhì)量。第7頁(yè),課件共39頁(yè),創(chuàng)作于2023年2月7質(zhì)量保證與檢驗(yàn)軟件質(zhì)量必須在設(shè)計(jì)和實(shí)現(xiàn)過(guò)程中加以保證。第8頁(yè),課件共39頁(yè),創(chuàng)作于2023年2月810.2質(zhì)量度量模型第9頁(yè),課件共39頁(yè),創(chuàng)作于2023年2月9McCall質(zhì)量度量模型第10頁(yè),課件共39頁(yè),創(chuàng)作于2023年2月10ISO的軟件質(zhì)量評(píng)價(jià)模型第11頁(yè),課件共39頁(yè),創(chuàng)作于2023年2月1110.3軟件復(fù)雜性

第12頁(yè),課件共39頁(yè),創(chuàng)作于2023年2月12軟件復(fù)雜性的基本概念(1)規(guī)模,即總共的指令數(shù),或源程序行數(shù)。(2)難度,通常由程序中出現(xiàn)的操作數(shù)的數(shù)目所決定的量來(lái)表示。(3)結(jié)構(gòu),通常用于程序結(jié)構(gòu)有關(guān)的度量來(lái)表示。(4)智能度,即算法的難易程度。軟件復(fù)雜性主要表現(xiàn)在程序的復(fù)雜性。程序的復(fù)雜性主要指模塊內(nèi)程序的復(fù)雜性。它直接關(guān)聯(lián)到軟件開(kāi)發(fā)費(fèi)用的多少、開(kāi)發(fā)周期長(zhǎng)短和軟件內(nèi)部潛伏錯(cuò)誤的多少。同時(shí)它也是軟件可理解性的另一種度量。第13頁(yè),課件共39頁(yè),創(chuàng)作于2023年2月13軟件復(fù)雜性的度量方法--代碼行度量法度量程序的復(fù)雜性,最簡(jiǎn)單的方法就是統(tǒng)計(jì)程序的源代碼行數(shù)。此方法的基本考慮是統(tǒng)計(jì)一個(gè)程序的源代碼行數(shù),并以源代碼行數(shù)作為程序復(fù)雜性的質(zhì)量。第14頁(yè),課件共39頁(yè),創(chuàng)作于2023年2月14軟件復(fù)雜性的度量方法--McCabe度量法McCabe度量法是由ThomasMcCabe提出的一種基于程序控制流的復(fù)雜性度量方法。McCabe復(fù)雜性度量又稱(chēng)環(huán)路度量。它認(rèn)為程序的復(fù)雜性很大程度上取決于程序的復(fù)雜性。單一的順序結(jié)構(gòu)最為簡(jiǎn)單,循環(huán)和選擇所構(gòu)成的環(huán)路越多,程序就越復(fù)雜。這種方法以圖論為工具,先畫(huà)出程序圖,然后用該圖的環(huán)路數(shù)作為程序復(fù)雜性的度量值。程序圖是退化的程序流程圖。也就是說(shuō),把程序流程圖的每一個(gè)處理符號(hào)都退化成一個(gè)結(jié)點(diǎn),原來(lái)連接不同處理符號(hào)的流線(xiàn)變成連接不同結(jié)點(diǎn)的有向弧,這樣得到的有向圖就叫做程序圖。第15頁(yè),課件共39頁(yè),創(chuàng)作于2023年2月15軟件復(fù)雜性的度量方法--McCabe度量法第16頁(yè),課件共39頁(yè),創(chuàng)作于2023年2月16軟件復(fù)雜性的度量方法--McCabe度量法根據(jù)圖論,在一個(gè)強(qiáng)連通的有向圖G中,環(huán)的個(gè)數(shù)V(G)由以下公式給出:

V(G)=m-n+2p其中,V(G)是有向圖G中環(huán)路數(shù),m是圖G中弧數(shù),n是圖G中結(jié)點(diǎn)數(shù),p是圖G中強(qiáng)連通分量個(gè)數(shù)。在一個(gè)程序中,從程序圖的入口點(diǎn)總能到達(dá)圖中任何一個(gè)結(jié)點(diǎn),因此,程序總是連通的,但不是強(qiáng)連通的。為了使圖成為強(qiáng)連通圖,從圖的入口點(diǎn)到出口點(diǎn)加一條用虛線(xiàn)表示的有向邊,使圖成為強(qiáng)連通圖。這樣就可以使用上式計(jì)算環(huán)路復(fù)雜性了。以圖4-11所給出的例子示范,其中,結(jié)點(diǎn)數(shù)n=6,弧數(shù)m=9,p=1,則有

V(G=m-n+2p=9-6+2=5即McCabe環(huán)復(fù)雜度度量值為5。這里選擇的5個(gè)線(xiàn)形無(wú)關(guān)環(huán)路為(abefa),(beb),(abea),(acfa),(abcfa),其他任何環(huán)路都是這5個(gè)環(huán)路的線(xiàn)性組合。第17頁(yè),課件共39頁(yè),創(chuàng)作于2023年2月17McCabe度量法的缺點(diǎn)①對(duì)于不同種類(lèi)的控制流的復(fù)雜度不能區(qū)分。②簡(jiǎn)單IF語(yǔ)句與循環(huán)語(yǔ)句的復(fù)雜性同等看待。③嵌套IF語(yǔ)句與簡(jiǎn)單CASE的復(fù)雜性是一樣的。④模塊間接口當(dāng)成一個(gè)簡(jiǎn)單分支一樣處理。⑤一個(gè)具有1000行的順序程序與一行語(yǔ)句的復(fù)雜性相同。盡管McCabe復(fù)雜度度量法有許多缺點(diǎn),但它容易使用,而且在選擇方案和估計(jì)排錯(cuò)費(fèi)用等方面都是很有效的。第18頁(yè),課件共39頁(yè),創(chuàng)作于2023年2月1810.4軟件可靠性

第19頁(yè),課件共39頁(yè),創(chuàng)作于2023年2月19軟件可靠性定義軟件可靠性定義表明了一個(gè)程序按照用戶(hù)的要求和設(shè)計(jì)的目標(biāo),執(zhí)行其功能的正確程度。一個(gè)可靠的程序應(yīng)要求是正確的、完整的、一致的和健壯的。即:在給定的時(shí)間內(nèi),程序按照規(guī)定的條件成功地運(yùn)行的概率。第20頁(yè),課件共39頁(yè),創(chuàng)作于2023年2月20軟件可靠性定義的數(shù)學(xué)表達(dá)設(shè)R(t)代表在時(shí)間(0,t)之間的軟件可靠性,P{E}代表事件E的概率,則軟件可靠性可表示為:

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

R(t)=第21頁(yè),課件共39頁(yè),創(chuàng)作于2023年2月21軟件可靠性指標(biāo)軟件可靠性與可用性的定量指標(biāo),是指能夠以數(shù)字概念來(lái)描述可靠性的數(shù)學(xué)表達(dá)式中所使用的量。下面主要討論常用指標(biāo)平均失效等待時(shí)間MTTF與平均失效間隔時(shí)間MTBF。1.MTTF(MeanTimeToFailure)平均失效等待時(shí)間MTTF定義為:2.MTBF(MeanTimeBetmeenFailure)

MTBF是平均失效間隔時(shí)間,它是指兩次相繼失效之間的平均時(shí)間。第22頁(yè),課件共39頁(yè),創(chuàng)作于2023年2月22軟件可靠性模型--正比于遺留故障數(shù)的宏觀模型程序的故障率與遺留錯(cuò)誤的數(shù)量成正比,根據(jù)程序中遺留錯(cuò)誤的多少,就可以預(yù)測(cè)程序的可靠性。設(shè)t=程序的調(diào)試時(shí)間

ET=調(diào)試前的錯(cuò)誤總數(shù)

Ec(t)=在時(shí)間(0,t)期間糾正的錯(cuò)誤

Er(t)=在時(shí)間t時(shí)的遺留錯(cuò)誤量

IT=程序的長(zhǎng)度或指令的總數(shù)則Er(t)=ET-Ec(t)用除以上述等式兩邊,得到錯(cuò)誤的規(guī)格化值第23頁(yè),課件共39頁(yè),創(chuàng)作于2023年2月23軟件可靠性模型--正比于遺留故障數(shù)的宏觀模型其中因此有根據(jù)經(jīng)典理論,得到:第24頁(yè),課件共39頁(yè),創(chuàng)作于2023年2月24軟件可靠性模型--平均失效等待時(shí)間已知當(dāng)故障率為獨(dú)立于時(shí)間的常數(shù)時(shí),

MTTF=1/λ

為簡(jiǎn)化討論,又在時(shí)間0至t期間的糾錯(cuò)率為常數(shù),且等于ρ,則

所以,平均故障間隔時(shí)間的模型可簡(jiǎn)寫(xiě)為:

第25頁(yè),課件共39頁(yè),創(chuàng)作于2023年2月25軟件可靠性模型--錯(cuò)誤植入模型這類(lèi)模型的中心思想,是通過(guò)估計(jì)殘留錯(cuò)誤的數(shù)量,來(lái)確定程序的可靠性。具體的作法是:測(cè)試之前先在程序中植入一批人為的錯(cuò)誤,在測(cè)試過(guò)程中分別統(tǒng)計(jì)出測(cè)試小組的原有錯(cuò)誤和植入錯(cuò)誤,然后由下列計(jì)算式計(jì)算原有錯(cuò)誤。假設(shè)

N=程序中原來(lái)殘留的錯(cuò)誤數(shù);

S=新植入程序的錯(cuò)誤數(shù);

n=測(cè)試中發(fā)現(xiàn)的原有錯(cuò)誤數(shù);

s=測(cè)試中發(fā)現(xiàn)的植入錯(cuò)誤數(shù)如果調(diào)試中對(duì)這兩類(lèi)錯(cuò)誤具有同樣的發(fā)現(xiàn)能力,則有或第26頁(yè),課件共39頁(yè),創(chuàng)作于2023年2月2610.5軟件評(píng)審

第27頁(yè),課件共39頁(yè),創(chuàng)作于2023年2月27軟件評(píng)審對(duì)軟件工程來(lái)說(shuō),軟件評(píng)審是一個(gè)“過(guò)濾器”,在軟件開(kāi)發(fā)的各個(gè)階段都要采用評(píng)審的方法,以發(fā)現(xiàn)軟件中的缺陷,然后加以改正。把“質(zhì)量”理解為“用戶(hù)滿(mǎn)意程度”。為使用戶(hù)滿(mǎn)意,有兩個(gè)必要條件:

(1)設(shè)計(jì)的規(guī)格說(shuō)明書(shū)要符合用戶(hù)的要求。

(2)程序要按照設(shè)計(jì)規(guī)格說(shuō)明書(shū)所規(guī)定的情況正確執(zhí)行。第28頁(yè),課件共39頁(yè),創(chuàng)作于2023年2月28設(shè)計(jì)質(zhì)量的評(píng)審內(nèi)容(1)評(píng)價(jià)軟件的規(guī)格說(shuō)明是否合乎用戶(hù)的要求,即總體設(shè)計(jì)思想和設(shè)計(jì)方針是否明確;需求規(guī)格說(shuō)明是否得到了用戶(hù)或單位上級(jí)機(jī)關(guān)的批準(zhǔn);需求規(guī)格說(shuō)明與軟件的概要設(shè)計(jì)計(jì)規(guī)格說(shuō)明是否一致等?

(2)評(píng)審可靠性,即是否能避免輸入異常(錯(cuò)誤或超載等)、硬件失效及軟件失效所產(chǎn)生的失效,一旦發(fā)生應(yīng)能及時(shí)采取代替或恢復(fù)手段。(3)評(píng)審保密措施實(shí)現(xiàn)情況,即是否提供對(duì)使用系統(tǒng)資格進(jìn)行檢查;對(duì)特定數(shù)據(jù)的使用資格、特殊功能的使用資格進(jìn)行檢查,在查出有違反使用資格情況后,能否向系統(tǒng)管理人員報(bào)告有關(guān)信息;是否提供對(duì)系統(tǒng)內(nèi)重要數(shù)據(jù)加密的功能等。第29頁(yè),課件共39頁(yè),創(chuàng)作于2023年2月29設(shè)計(jì)質(zhì)量的評(píng)審內(nèi)容(4)評(píng)審操作特性實(shí)施情況,即操作命令和操作信息的恰當(dāng)性,輸入數(shù)據(jù)與輸入控制語(yǔ)句的恰當(dāng)性;輸出數(shù)據(jù)的恰當(dāng)性;應(yīng)答時(shí)間的恰當(dāng)性等。(5)評(píng)審性能實(shí)現(xiàn)情況,即是否達(dá)到所規(guī)定性能的的目標(biāo)值。(6)評(píng)審軟件是否具有可修改性、可擴(kuò)充性、可互換性和可移植性。(7)評(píng)審軟件是否具有可測(cè)試性。(8)評(píng)審軟件是否具有復(fù)用性。第30頁(yè),課件共39頁(yè),創(chuàng)作于2023年2月30程序質(zhì)量的評(píng)審內(nèi)容--軟件的結(jié)構(gòu)(1)功能結(jié)構(gòu)。在軟件的各種結(jié)構(gòu)中,功能結(jié)構(gòu)是用戶(hù)唯一能見(jiàn)到的結(jié)構(gòu)。需要檢查的項(xiàng)目有:①數(shù)據(jù)結(jié)構(gòu):包括數(shù)據(jù)名和定義;構(gòu)成該數(shù)據(jù)的數(shù)據(jù)項(xiàng);數(shù)據(jù)與數(shù)據(jù)間的關(guān)系。②功能結(jié)構(gòu):包括功能名和定義;構(gòu)成該功能的子功能;功能與子功能之間的關(guān)系。③數(shù)據(jù)結(jié)構(gòu)和功能結(jié)構(gòu)之間的對(duì)應(yīng)關(guān)系:包括數(shù)據(jù)元素與功能元素之間的對(duì)應(yīng)關(guān)系;數(shù)據(jù)結(jié)構(gòu)與功能結(jié)構(gòu)的一致性。(2)功能的通用性。(3)模塊的層次。第31頁(yè),課件共39頁(yè),創(chuàng)作于2023年2月31程序質(zhì)量的評(píng)審內(nèi)容--軟件的結(jié)構(gòu)(4)模塊結(jié)構(gòu)。①控制流結(jié)構(gòu):規(guī)定了處理模塊與處理模塊之間的流程關(guān)系。檢查處理模塊之間的控制轉(zhuǎn)移關(guān)系與控制轉(zhuǎn)移形式(調(diào)用方式)。②數(shù)據(jù)流結(jié)構(gòu):規(guī)定了數(shù)據(jù)模塊是如何被處理模塊進(jìn)行加工的流程關(guān)系。檢查處理模塊與數(shù)據(jù)模塊之間的對(duì)應(yīng)關(guān)系;處理模塊與數(shù)據(jù)模塊之間的存取關(guān)系,如建立、刪除、查詢(xún)、修改等。③模塊結(jié)構(gòu)與功能結(jié)構(gòu)之間的對(duì)應(yīng)關(guān)系:包括功能結(jié)構(gòu)與控制流結(jié)構(gòu)的對(duì)應(yīng)關(guān)系;功能結(jié)構(gòu)與數(shù)據(jù)流結(jié)構(gòu)的對(duì)應(yīng)關(guān)系;每個(gè)模塊的定義(包括功能、輸入與輸出數(shù)據(jù))。(5)處理過(guò)程的結(jié)構(gòu)。處理過(guò)程是最基本的加工邏輯過(guò)程。第32頁(yè),課件共39頁(yè),創(chuàng)作于2023年2月32程序質(zhì)量的評(píng)審內(nèi)容--與運(yùn)行環(huán)境的接口(1)與硬件的接口。(2)與用戶(hù)的接口。隨著軟件運(yùn)行環(huán)境的變更,軟件的規(guī)格也在跟著不斷地變更。運(yùn)行環(huán)境變更時(shí)的影響范圍,需要從以下三個(gè)方面來(lái)分析:(1)與運(yùn)行環(huán)境的接口。(2)在每項(xiàng)設(shè)計(jì)工程規(guī)格內(nèi)的影響。(3)在設(shè)計(jì)工程相互間的影響。第33頁(yè),課件共39頁(yè),創(chuàng)作于2023年2月3311.6軟件容錯(cuò)技術(shù)

第34頁(yè),課件共39頁(yè),創(chuàng)作于2023年2月34軟件容錯(cuò)技術(shù)提高軟件質(zhì)量和可靠性的技術(shù)大致分為兩類(lèi),一類(lèi)是避開(kāi)錯(cuò)誤(fault-avoidance)技術(shù),即在開(kāi)發(fā)的過(guò)程中不讓差錯(cuò)潛入軟件的技術(shù);另一類(lèi)是容錯(cuò)(fault-tolerance)技術(shù),即對(duì)某些無(wú)法避開(kāi)的差錯(cuò),使其影響減少至最小的技術(shù)。第35頁(yè),課件共39頁(yè),創(chuàng)作于2023年2月35容錯(cuò)軟件定義(1)規(guī)定功能的軟件,在一定程度上對(duì)自身錯(cuò)誤的作用(軟件錯(cuò)誤)具有屏蔽能力,則稱(chēng)此軟件為具有容錯(cuò)功能的軟件,即容錯(cuò)軟件。(2)規(guī)定功能的軟件,在一定程度上能從錯(cuò)誤狀態(tài)自動(dòng)恢復(fù)到正常狀態(tài),則稱(chēng)之為容錯(cuò)軟件。(3)規(guī)定功能的軟件,在因錯(cuò)誤而發(fā)生錯(cuò)誤時(shí),仍然能在一定程度上完成預(yù)期的功能,則把該軟件稱(chēng)為容錯(cuò)軟件。(4)規(guī)定功能的軟件,在一定程度上具有容錯(cuò)能力,則稱(chēng)之為容錯(cuò)軟件。第36頁(yè),課件共39頁(yè),創(chuàng)作于2023年2月36容錯(cuò)的一般方法1、結(jié)構(gòu)冗余(1)靜態(tài)冗余。常用的有:三模冗余TMR(TripleModulerRedundancy)和多模冗余。(2)動(dòng)態(tài)冗余。動(dòng)態(tài)冗余的主要方式是多重模塊待機(jī)儲(chǔ)備,當(dāng)系統(tǒng)檢測(cè)到某工作模塊出現(xiàn)錯(cuò)誤時(shí),就用一個(gè)備用的

溫馨提示

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

評(píng)論

0/150

提交評(píng)論