3、軟件質(zhì)量因素
正確性:系統(tǒng)滿足規(guī)格說明和用戶目標(biāo)的程度,即,在預(yù)定環(huán)境下能正確地完成預(yù)期功能的程度。
健壯性:在硬件發(fā)生故障、輸入的數(shù)據(jù)無效或操作錯誤等意外環(huán)境下,系統(tǒng)能做出適當(dāng)響應(yīng)的程度。
效率:為了完成預(yù)定的功能,系統(tǒng)需要的計(jì)算資源的多少。
完整性(安全性):對未經(jīng)授權(quán)的人使用軟件或數(shù)據(jù)的企圖,系統(tǒng)能過控制(禁止)的程度。
可用性:系統(tǒng)在完成預(yù)定應(yīng)該完成的功能時另人滿意的程度。
風(fēng)險:按預(yù)定的成本和進(jìn)度把系統(tǒng)開發(fā)出來,并且為用戶所滿意的概率。
可理解性:理解和使用該系統(tǒng)的容易程度。
可維修性:診斷和改正在運(yùn)行現(xiàn)場發(fā)現(xiàn)的錯誤所需要的工作量的大小。
靈活性(適應(yīng)性):修改或改進(jìn)正在運(yùn)行的系統(tǒng)需要的工作量的多少。
可測試性:軟件容易測試的程度。
可移植性:把程序從一種硬件配置和(或)軟件系統(tǒng)環(huán)境轉(zhuǎn)移到另一種配置和環(huán)境時,需要的工作量多少。有一種定量度量的方法是:用原來程序設(shè)計(jì)和調(diào)試的成本除移植時需用的費(fèi)用。
可再用性:再其他應(yīng)用中該程序可以被再次使用的程度(或范圍)。
互運(yùn)行性:把該系統(tǒng)和另一個系統(tǒng)結(jié)合起來需要的工作量的多少。
4、軟件評審
軟件評審并不是在軟件開發(fā)完畢后進(jìn)行評審,而是在軟件開發(fā)的各個階段都要進(jìn)行評審。因?yàn)樵谲浖_發(fā)的各個階段都可能產(chǎn)生錯誤,如果這些錯誤不及時發(fā)現(xiàn)并糾正,會不斷地?cái)U(kuò)大,后可能導(dǎo)致開 發(fā)的失敗。下面這組數(shù)據(jù)可以清楚的看出前期的錯誤對后期的影響。
軟件評審是相當(dāng)重要的工作,也是目前國內(nèi)開發(fā)不重視的工作。
。1)評審目標(biāo)
。發(fā)現(xiàn)任何形式表現(xiàn)的軟件功能、邏輯或?qū)崿F(xiàn)方面的錯誤;
。通過評審驗(yàn)證軟件的需求;
。保證軟件按預(yù)先定義的標(biāo)準(zhǔn)表示;
。已獲得的軟件是以統(tǒng)一的方式開發(fā)的;
。使項(xiàng)目更容易管理。
(2)評審過程
A、召開評審會議:一般應(yīng)有3至5人參加,會前每個參加者做好準(zhǔn)備,評審會每次一般不超過2小時。
B、會議結(jié)束使必須做出以下決策之一:接受該產(chǎn)品,不需做修改;由于錯誤嚴(yán)重,拒絕接受;暫時接受該產(chǎn)品。
C、評審報告與記錄;所提出的問題都要進(jìn)行記錄,在評審會結(jié)束前產(chǎn)生一個評審問題表,另外必須完成評審簡要報告。
。3)評審準(zhǔn)則
。評審產(chǎn)品,而不是評審設(shè)計(jì)者(不能使設(shè)計(jì)者有任何壓力);
。會場要有良好的氣氛;
。建立議事日程并維持它(會議不能脫離主題);
。限制爭論與反駁(評審會不是為了解決問題,而是為了發(fā)現(xiàn)問題;
。指明問題范圍,而不是解決提到的問題;
。展示記錄(好有黑板,將問題隨時寫在黑板上);
。限制會議人數(shù)和堅(jiān)持會前準(zhǔn)備工作;
。對每個被評審的產(chǎn)品要盡力評審清單(幫助評審人員思考);
。對每個正式技術(shù)評審分配資源和時間進(jìn)度表;
。對全部評審人員進(jìn)行必要的培訓(xùn);
。及早地對自己地評審做評審(對評審準(zhǔn)則的評審)。
5、ISO9000.3軟件質(zhì)量認(rèn)證體系
ISO9000.3是ISO9000質(zhì)量體系認(rèn)證中關(guān)于計(jì)算機(jī)軟件質(zhì)量管理和質(zhì)量保證標(biāo)準(zhǔn)部分。它從管理職責(zé)、質(zhì)量體系、合同評審、設(shè)計(jì)控制、文件和資料控制、采購、顧客提供產(chǎn)品的控制、產(chǎn)品標(biāo)識和可追溯性、過程控制、檢驗(yàn)和試驗(yàn)、檢驗(yàn)/測量和試驗(yàn)設(shè)備的控制、檢驗(yàn)和試驗(yàn)狀態(tài)、不合格品的控制、糾正和預(yù)防措施、搬運(yùn)/貯存/包裝/防護(hù)和交付、質(zhì)量記錄的控制、內(nèi)部質(zhì)量審核、培訓(xùn)、服務(wù)、統(tǒng)計(jì)系統(tǒng)等二個方面對軟件質(zhì)量進(jìn)行了要求。
6、測試
軟件測試是軟件開發(fā)的一個重要環(huán)節(jié),同時也是軟件質(zhì)量保證的一個重要環(huán)節(jié)。所謂測試是用已知的輸入在已知環(huán)境中動態(tài)地執(zhí)行系統(tǒng)(或系統(tǒng)的部件)。測試一般包括單元測試、模塊測試、集成測試和系統(tǒng)測試。如果測試結(jié)果與預(yù)期結(jié)果不一致,則很可能是發(fā)現(xiàn)了系統(tǒng)中的錯誤,測試過程中將產(chǎn)生下述基本文檔:
。1)測試計(jì)劃:確定測試范圍、方法、和需要的資源等。
。2)測試過程:詳細(xì)描述和每個測試方案有關(guān)的測試步驟和數(shù)據(jù)(包括測試數(shù)據(jù)及預(yù)期的結(jié)果)。
。3)測試結(jié)果:把每次測試運(yùn)行的結(jié)果歸入文檔,如果運(yùn)行出錯,則應(yīng)產(chǎn)生問題報告,并且必須經(jīng)過調(diào)試解決所發(fā)現(xiàn)的問題。測試結(jié)果:把每次測試運(yùn)行的結(jié)果歸入文檔,如果運(yùn)行出錯,則應(yīng)產(chǎn)生問題報告,并且必須經(jīng)過調(diào)試解決所發(fā)現(xiàn)的問題。