軟件質(zhì)量和軟件質(zhì)量保證體系_第1頁
軟件質(zhì)量和軟件質(zhì)量保證體系_第2頁
軟件質(zhì)量和軟件質(zhì)量保證體系_第3頁
軟件質(zhì)量和軟件質(zhì)量保證體系_第4頁
免費預(yù)覽已結(jié)束,剩余1頁可下載查看

下載本文檔

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

文檔簡介

1、軟件質(zhì)量和軟件質(zhì)量保證體系9.1 軟件質(zhì)量9.1.1 軟件質(zhì)量特性 什么是軟件質(zhì)量?不同人或組織的看法各不相同。按照 ISO/IEC 9126-1991(我 國GB/T16260-1996)“信息技術(shù)軟件產(chǎn)品評價、質(zhì)量特性及其使用指南”國際 標(biāo)準(zhǔn),認(rèn)為軟件質(zhì)量 (Software Quality )是與軟件產(chǎn)品滿足明確或隱含需求 的能力有關(guān)的特征和特性的總和,例如,符合規(guī)格說明。簡而言之,軟件質(zhì)量是 軟件一些特性的組合,它僅依賴于軟件本身。9.1.2 軟件質(zhì)量評價評價軟件質(zhì)量可從三個方面進(jìn)行, 即產(chǎn)品或中間產(chǎn)品、 過程(即軟件生產(chǎn)所需的 資源和活動)和項目。評價可按如下三步進(jìn)行:1 、定義質(zhì)量

2、需求質(zhì)量需求包含兩個方面: 問題規(guī)定或隱含的需求; 軟件質(zhì)量標(biāo)準(zhǔn)和其它技術(shù) 信息。2、準(zhǔn)備評價首先選擇質(zhì)量度量;然后定義質(zhì)量等級;再定義評估準(zhǔn)則。由于一般情況下, 不可能對質(zhì)量特性進(jìn)行直接度量, 從而應(yīng)選擇與質(zhì)量特性相關(guān) 的且可定量的軟件特性加以度量。 定義質(zhì)量等級是依據(jù)應(yīng)用問題的需求將質(zhì)量度 量值分割成若干不同滿意程度的等級, 如優(yōu)秀、 合格與不合格等。 定義評估準(zhǔn)則 是為了綜合軟件不同質(zhì)量特性的評價結(jié)果, 可采用判定表或加權(quán)平均法; 同時還 可兼顧其它因素,如時間、成本等。3、評價過程評價過程實際上是對軟件產(chǎn)品就第 2步中準(zhǔn)備的評價內(nèi)容進(jìn)行實施,也分 3步: 測量把選定的質(zhì)量度量應(yīng)用到軟件

3、產(chǎn)品上; 評級確定某測量值的等級; 評估根據(jù)評估準(zhǔn)則確定產(chǎn)品質(zhì)量, 并依據(jù)管理準(zhǔn)則判定產(chǎn)品是否可通過驗 收或是否發(fā)行等等。9.1.3 軟件質(zhì)量保證軟件的質(zhì)量保證也和一般的質(zhì)量保證一樣, 是確保軟件產(chǎn)品從誕生到消亡為止的 所有階段的質(zhì)量的活動。 軟件質(zhì)量保證由各種任務(wù)構(gòu)成, 分別與兩種不同的參與 者相關(guān)負(fù)責(zé)技術(shù)工作的軟件工程師和負(fù)責(zé)質(zhì)量保證的計劃、 監(jiān)督、記錄、分 析及報告工作的軟件質(zhì)量保證(SQA小組。軟件工程師通過采用可靠的技術(shù)方 法和措施,進(jìn)行正式的技術(shù)復(fù)審、 執(zhí)行計劃周密的軟件測試來保證軟件質(zhì)量。 SQA 小組主要輔助軟件工程小組得到高質(zhì)量的最終產(chǎn)品,對項目準(zhǔn)備SQA計劃,如確定需要進(jìn)行

4、的評價、 需要進(jìn)行的審計和復(fù)審、 項目可采用的標(biāo)準(zhǔn)等; 參與開發(fā)項 目的軟件過程描述, 以保證該過程與組織政策、 內(nèi)部軟件標(biāo)準(zhǔn)、 外界所訂標(biāo)準(zhǔn)以 及軟件項目計劃的其它部分相符; 復(fù)審各項軟件工程活動, 對其是否符合定義好 的軟件過程進(jìn)行核實; 審計指定的軟件工作產(chǎn)品, 對其是否符合定義好的軟件過 程中的相應(yīng)部分進(jìn)行核實; 確保軟件工作及工作產(chǎn)品中的偏差已被記錄, 并根據(jù) 預(yù)定規(guī)程進(jìn)行處理;記錄所有不符合的部分,并報告給高級管理者;等等。 ?9.1.4 軟件質(zhì)量管理 所謂質(zhì)量管理是指確定質(zhì)量方針、 目標(biāo)和職責(zé), 并在質(zhì)量體系中通過諸如: 質(zhì)量 策劃、質(zhì)量控制、質(zhì)量保證和質(zhì)量改進(jìn),使其實施全部管理

5、職能的所有活動。質(zhì) 量策劃包括產(chǎn)品策劃、 管理和作業(yè)策劃以及質(zhì)量計劃的編制和質(zhì)量改進(jìn)的準(zhǔn)備工 作。質(zhì)量控制是指采取某些特定作業(yè)技術(shù)或開展某些活動, 以達(dá)到質(zhì)量要求。 質(zhì) 量改進(jìn)是指以追求更高的效益和效率為目標(biāo)的持續(xù)性活動。質(zhì)量管理和質(zhì)量保證相互依賴, 但他們的活動具有不同的范圍、 不同的目的、 不 同的動機(jī)和不同的結(jié)果。 ?9.2 軟件復(fù)雜性分析9.2.1 基于需求分析的復(fù)雜性分析軟件工程的技術(shù)性工作始于需求分析, 提供對分析模型質(zhì)量的度量是有意義的和 必要的。在需求分析階段完成以后, 項目的管理人員希望知道將要開發(fā)的軟件有 多大規(guī)模, 這與將要投入的工作量、 開發(fā)成本以及何時交付用戶或何時投

6、放市場 都有密切的聯(lián)系。 同時,如果是委托開發(fā)的項目軟件, 用戶也會關(guān)心開發(fā)機(jī)構(gòu)提 出的報價是否恰當(dāng)合理。 雙方都希望有一個科學(xué)、 公正的估價依據(jù)。 下面介紹一 種面向功能的軟件復(fù)雜性度量方法功能點方法。面向功能度量是由 Albrecht 首先提出來的。功能點方法以需求規(guī)格說明書中雙 方確認(rèn)的軟件功能為依據(jù),著重分析待開發(fā)系統(tǒng)的功能度( Functionality )。 顯然,軟件的大小與軟件的功能度相關(guān), 而與軟件功能的描述無關(guān), 也與功能需 求的如何實現(xiàn)無關(guān)。功能點(FP)度量可以用作從分析模型中獲得系統(tǒng)大小的預(yù) 測手段。9.2.2 基于軟件設(shè)計的復(fù)雜性分析 人們在設(shè)計硬件時, 常利用設(shè)計

7、測度來確定設(shè)計質(zhì)量, 指導(dǎo)設(shè)計演化。 然而對于 軟件而言,大部分軟件工程師卻忽視對軟件設(shè)計結(jié)果的測量以達(dá)到進(jìn)一步改進(jìn)軟 件設(shè)計的目的。 軟件設(shè)計由概要設(shè)計和詳細(xì)設(shè)計兩個階段組成, 我們分別就這兩 個階段討論軟件設(shè)計復(fù)雜性度量方法。概要設(shè)計復(fù)雜性度量主要集中在軟件結(jié)構(gòu)的特征上。Card和Glass定義了三種軟件設(shè)計復(fù)雜度測度: 結(jié)構(gòu)復(fù)雜度、 數(shù)據(jù)復(fù)雜度和系統(tǒng)復(fù)雜度。 美國空軍提出了 一種計算“設(shè)計結(jié)構(gòu)質(zhì)量指標(biāo)(DSQ)”的方法用來度量軟件結(jié)構(gòu)的復(fù)雜度。 該 方法使用了類似于在 IEEE Std.982.1 1988中提出的概念。詳細(xì)設(shè)計復(fù)雜性度量主要集中在模塊內(nèi)部結(jié)構(gòu)的復(fù)雜性上。麥凱伯(McCa

8、be提出了一種環(huán)形計數(shù)的方法來確定程序控制流的復(fù)雜度。使用McCabe方法可直接利用程序流程圖計算其“判定數(shù)” (即比較個數(shù), 對于復(fù)合條件判定要先轉(zhuǎn)化成 單一條件判定),也可根據(jù)程序流程圖導(dǎo)出的程序圖計算其“環(huán)形數(shù)”(即封閉環(huán)域數(shù) ) 來進(jìn)行,其計算公式為:程序環(huán)形復(fù)雜度V( G = 程序流程圖中的“判定數(shù)” +1 =程序圖中的“環(huán)形數(shù)”。=m-n+2 其中m對應(yīng)于程序圖中的弧數(shù),n對應(yīng)于程序圖中的節(jié)點數(shù)。9.2.3 基于源程序代碼的復(fù)雜性分析 軟件開發(fā)經(jīng)過編碼階段后,便得到源程序代碼。霍爾斯特德( Halstead )根據(jù)源 代碼中運算符和操作數(shù)的測量值來度量源程序代碼的復(fù)雜度。在 Hal

9、stead 方法 中,運算符是指用來處理程序中常量和變量的語法元素等, 如算術(shù)運算符、 邏輯 運算符、關(guān)系運算符、流程控制語句、函數(shù)調(diào)用等;操作數(shù)則是指源程序代碼中 的常量和變量等。但對非執(zhí)行語句,如注釋,則不進(jìn)行考慮。 Halstead 方法使 用了以下 4 個基本測量數(shù)據(jù): 程序中運算符總數(shù) N1 程序中操作數(shù)總數(shù) N2 程序中運算符種類數(shù) n1 程序中操作數(shù)種類數(shù) n2根據(jù)以上 4 個測量數(shù)據(jù),可以在以下幾個方面對源程序代碼的復(fù)雜性進(jìn)行度量: 實際程序長度 N=N1+N2編程語言層次 L=(2/n1 )*(n2/N2) 程序容量 V=(N1+N2)*log2(n1+n2)?預(yù)測程序長度

10、N'= n1*log2n1+n2*log2n2? (可在詳細(xì)設(shè)計后進(jìn)行預(yù)測) 估計程序工作量 E'=V/L=(n1*N2*(N1+N2)*log2(n1+n2)/(2*n2) 預(yù)測程序錯誤數(shù) E"=(N1+N2)*log2(n1+n2)/3000其中,V會隨編程語言的不同而不同(對同一功能的程序,用高級語言來寫要比 低級語言來寫得到的程序?qū)?yīng)的 V要小),它代表了寫一個程序所需的信息量(以 位為單位)。 L 反映的是程序最簡潔形式時的容量與程序?qū)嶋H容量之比。9.2.4 基于軟件維護(hù)的復(fù)雜性分析IEEE建議采用一種軟件成熟度指標(biāo)(SMI),以提供對軟件產(chǎn)品的穩(wěn)定性指示(

11、基 于為每一軟件產(chǎn)品發(fā)布而做的變化)。將SMI和維護(hù)工作量聯(lián)系起來,形成一個 經(jīng)驗?zāi)P停瑒t可用來度量軟件維護(hù)的復(fù)雜性。SMI方法涉及的基本測量數(shù)據(jù)如下: 當(dāng)前發(fā)布軟件中的模塊數(shù) MT; 當(dāng)前發(fā)布軟件中已經(jīng)改變的模塊數(shù) Fc; 當(dāng)前發(fā)布軟件中已經(jīng)添加的模塊數(shù) Fa; 當(dāng)前發(fā)布軟件中已經(jīng)刪除的前一次發(fā)布軟件中的模塊數(shù)Fd。則軟件成熟度指標(biāo)按下式進(jìn)行計算:SMI=MT-( Fa+Fc+Fd /MT 當(dāng)SMI接近1的時候,產(chǎn)品便開始穩(wěn)定。 實際上,軟件維護(hù)過程也是由分析、設(shè)計、編碼和測試的過程組成,從而基于分 析、設(shè)計、編碼以及測試的復(fù)雜性分析方法也可用于軟件維護(hù)的復(fù)雜性分析9.3 軟件可靠性分析9.

12、3.1 軟件可靠性三要素 在上面定義軟件可靠性中實際給出了三個有關(guān)的主要因素:失效、時間和環(huán)境。1 、失效在討論軟件質(zhì)量和軟件可靠性時, 軟件失效是指最后執(zhí)行結(jié)果與有關(guān)規(guī)格不相符 或用戶在軟件系統(tǒng)邊界覺察到不期望的軟件出錯行為。失效是錯誤引起的結(jié)果。2、時間在進(jìn)行軟件可靠性分析時, 時間可以有三種度量方式。 第一種是執(zhí)行時間, 是指 運行軟件時計算機(jī)實際花費的 CPU寸間;第二種是日期時間,指通常以年、月、 周、日等計算的時間; 第三種是時鐘時間, 是指運行軟件時計算機(jī)自始至終所花 去的累積時間,但計算機(jī)停機(jī)時間不計算在內(nèi)。3、環(huán)境 軟件的使用環(huán)境涉及軟件運行時所需要的支持系統(tǒng)及有關(guān)的因素。

13、一個規(guī)定的使 用環(huán)境是對這些因素的精確而詳細(xì)的限制描述。 嚴(yán)格地說,描述軟件可靠性“規(guī) 定的使用環(huán)境”包括硬件配置狀態(tài)和操作人員操作等的描述, 并假定其它因素對 軟件來說都是理想可靠的, 不會影響軟件的運行。 也就是說軟件可靠性不包含硬 件和操作的可靠性。 軟件可靠性、 硬件可靠性和操作可靠性三者綜合起來反映整 個計算機(jī)系統(tǒng)的可靠性。 規(guī)定軟件的使用環(huán)境可用來判定系統(tǒng)失效是否由于軟件 失效引起。9.3.2 軟件可靠性模型軟件可靠性同硬件可靠性一樣, 都可看成是隨機(jī)過程, 用概率分布來描述。 但軟 件可靠性與硬件可靠性的分析卻不完全相同。 一方面, 軟件不會老化, 其可靠性 不隨時間增加而減少;

14、 另一方面, 軟件失效常常是由于軟件分析或設(shè)計引起。 這 樣使軟件可靠性分析變得非常復(fù)雜。自第一個軟件可靠性模型由 Jelinski 和 Moranda提出以來,已經(jīng)有幾十個軟件可靠性模型公開發(fā)表。 實際應(yīng)用經(jīng)驗表明, 沒有一個普適的模型能對所有產(chǎn)品都能做出最好的可靠性分析。 軟件可靠性模型 的研究還有待進(jìn)一步深入。幾個較簡單的模型:1、Jelinski-Moranda 模型;2、Shoomar模型;3、Gilb植 錯模型;4、Hymar分別測試模型。9.3.3 軟件可靠性工程 軟件可靠性工程可定義為定量地按用戶對于可靠性的需求, 研究基于軟件系統(tǒng)的 操作行為。它包括:(1)軟件可靠性度量,是

15、以軟件可靠性模型為基礎(chǔ)進(jìn)行的評價和預(yù)測;( 2)產(chǎn)品設(shè)計、開發(fā)過程、系統(tǒng)結(jié)構(gòu)、軟件操作環(huán)境等要點與度量標(biāo)準(zhǔn)及它們 對可靠性的影響;(3)應(yīng)用可靠性知識指導(dǎo)軟件定義、開發(fā)和維護(hù)。圍繞軟件生命周期所進(jìn)行的軟件可靠性工程活動如下:(1)可行性和需求分析階段(2)設(shè)計與實現(xiàn)階段(3)測試及試運行階段(4)運行維護(hù)階段9.4 ISO 9000 軟件質(zhì)量體系9.4.1 ISO9000 族國際標(biāo)準(zhǔn)ISO 9000 族國際標(biāo)準(zhǔn)是指國際標(biāo)準(zhǔn)化組織中質(zhì)量管理和質(zhì)量保證技術(shù)委員會 (ISO/TC 176)制訂的所有標(biāo)準(zhǔn)。 ISO 9000 以一般術(shù)語描述了能夠適用于任何 行業(yè)的質(zhì)量保證系統(tǒng)的要素, 這些要素包括用于

16、實現(xiàn)質(zhì)量計劃、 質(zhì)量控制、 質(zhì)量 保證和質(zhì)量改進(jìn)所需的組織結(jié)構(gòu)、程序、過程和資源?,F(xiàn)有 5類共 20個標(biāo)準(zhǔn), 如圖 9-7 ,分別是:1、質(zhì)量術(shù)語標(biāo)準(zhǔn)它是 ISO 9000 族標(biāo)準(zhǔn)中最早發(fā)布的一個標(biāo)準(zhǔn),為質(zhì)量管理領(lǐng)域中常用的質(zhì)量術(shù) 語作了明確的定義,成為質(zhì)量管理和理解、貫徹實施 ISO 9000 其他標(biāo)準(zhǔn)的基礎(chǔ)。2、質(zhì)量保證標(biāo)準(zhǔn) 這類標(biāo)準(zhǔn)體現(xiàn)了對供方質(zhì)量體系的不同要求,供方對這些要求的滿足應(yīng)得到證 實。3、質(zhì)量管理標(biāo)準(zhǔn) 這類標(biāo)準(zhǔn)可用以指導(dǎo)質(zhì)量管理和建立質(zhì)量體系。4、質(zhì)量管理和質(zhì)量保證標(biāo)準(zhǔn)的選用和實施指南5、支持性技術(shù)標(biāo)準(zhǔn)9.4.2 企業(yè)軟件質(zhì)量體系的建立和實施ISO 9000 族標(biāo)準(zhǔn)中并沒有專

17、門提供軟件企業(yè)如何建立和實施質(zhì)量體系,因此, 可以認(rèn)為軟件企業(yè)建立和實施質(zhì)量體系的過程和其他企業(yè)并無多大差別, 僅對某 些質(zhì)量體系要素有其特殊的要求。 下面簡要說明軟件企業(yè)建立和實施質(zhì)量體系的 主要工作。1、準(zhǔn)備階段2、質(zhì)量體系策劃3、編寫質(zhì)量體系文件4、培訓(xùn)內(nèi)部審核員5、質(zhì)量體系試運行6、內(nèi)部質(zhì)量體系審核7、管理評審8、質(zhì)量體系認(rèn)證前的準(zhǔn)備9、質(zhì)量體系認(rèn)證過程10、質(zhì)量體系的進(jìn)一步改進(jìn)與完善9.5 軟件配置管理9.5.1? 軟件配置項軟件配置項(Software Con figuration Items ,簡稱SCI)是軟件配置管理的對 象,它包括軟件生存周期內(nèi)產(chǎn)生的所有信息項。按 ISO 9000-3 的說明,

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論