客戶至上 誠信經(jīng)營
Product category
軟件質(zhì)量從構(gòu)成因素上可分為產(chǎn)品質(zhì)量和過程質(zhì)量。
產(chǎn)品質(zhì)量是軟件成品的質(zhì)量,包括各類文檔、編碼的可讀性、可靠性、正確性,用戶需求的滿足程度等。
過程質(zhì)量是開發(fā)過程環(huán)境的質(zhì)量,與所采用的技術(shù)、開發(fā)人員的素質(zhì)、開發(fā)的組織交流、開發(fā)設(shè)備的利用率等因素有關(guān)。
還可把質(zhì)量分為動態(tài)質(zhì)量和靜態(tài)質(zhì)量。紫外線老化試驗(yàn)箱靜態(tài)質(zhì)量是通過審查各開發(fā)過程的成果來確認(rèn)的質(zhì)量,包括模塊化程度、簡易程度、完整程度等內(nèi)容。動態(tài)質(zhì)量是考察運(yùn)行狀況來確認(rèn)的質(zhì)量,包括平均故障間隔時間(MTBF)、軟件故障修復(fù)時間(MTRF)、可用資源的利用率。在許多實(shí)際工程中,人們一般比較重視動態(tài)質(zhì)量而忽視靜態(tài)質(zhì)量。
所定的質(zhì)量標(biāo)準(zhǔn)度量,至少應(yīng)達(dá)到以下兩個目的:
(1).明確劃分各開發(fā)過程(需求分析過程,設(shè)計(jì)過程,測試過程,驗(yàn)收過程),通過質(zhì)量檢驗(yàn)的反饋?zhàn)饔么_保差錯及早排除并保證一定的質(zhì)量。
(2).在各開發(fā)過程中實(shí)施進(jìn)度管理,產(chǎn)生階段質(zhì)量評價報告,對不合要求的產(chǎn)品及早采取對策。
確定劃分的各開發(fā)過程的質(zhì)量度量:
(1).需求分析質(zhì)量度量
需求分析定義是否完整、準(zhǔn)確(有無二義性),和用戶間有沒有理解不同的情況,文檔完成情況等,要有明確的可靠性需求目標(biāo)、分析設(shè)計(jì)及可靠性管理措施等。
(2).設(shè)計(jì)結(jié)果質(zhì)量度量
設(shè)計(jì)工時,程序容量和可讀性、可理解性,測試情況數(shù),評價結(jié)果,文檔完成情況等。
(3).測試結(jié)果質(zhì)量度量
測試工時,差錯狀況,差錯數(shù)量,差錯檢出率及殘存差錯數(shù),紫外線老化試驗(yàn)箱差錯影響評價,文檔等,以及有關(guān)非法輸入的處理度量。
(4).驗(yàn)收結(jié)果質(zhì)量度量
完成的功能數(shù)量,各項(xiàng)性能指標(biāo),可靠性等。
zui后選擇一種可靠度增長曲線預(yù)測模型,如時間測量、個體測量、可用性,在后期開發(fā)過程中,用來計(jì)算可靠度增長曲線的差錯收斂度。
在建立質(zhì)量標(biāo)準(zhǔn)之后,設(shè)計(jì)質(zhì)量報告及評價表,在整個開發(fā)過程中就要嚴(yán)格實(shí)施并及時作出質(zhì)量評價,填寫報告表。
2. 選擇開發(fā)方法
軟件開發(fā)方法對軟件的可靠性也有重要影響。
目前的軟件開發(fā)方法主要有Parnas方法、Yourdon方法、面向數(shù)據(jù)結(jié)構(gòu)的Jackson方法和Warnier方法、PSL/PSA方法、原型化方法、面向?qū)ο蠓椒ā⒖梢暬椒?、ICASE方法、瑞理開發(fā)方法等,其他還有BSP方法、CSF方法等。這里特別要提一下的是Parnas方法。
Parnas方法是zui早的軟件開發(fā)方法,是Parnas 在1972年提出來的,基本思想是在概要設(shè)計(jì)時預(yù)先估計(jì)未來可能發(fā)生變化,提出了信息隱藏的原則以提高軟件的可靠性和可維護(hù)性。
在設(shè)計(jì)中要求先列出將來可能要變化的因素,在劃分模塊時將一些可能發(fā)生變化的因素隱含在某個模塊的內(nèi)部,使其他模塊與此無關(guān),這樣就提高了軟件的可維護(hù)性,紫外線老化試驗(yàn)箱避免了錯誤的蔓延,也就提高了軟件的可靠性。還提出了提高可靠性的措施:
(1)考慮到硬件有可能出故障,接近硬件的模塊要對硬件行為進(jìn)行檢查,及時發(fā)現(xiàn)錯誤。
(2)考慮到操作人員有可能失誤,輸入模塊對輸入數(shù)據(jù)進(jìn)行合法性檢查,是否合法、越權(quán),及時糾錯。
(3)考慮到軟件本身有可能失誤,紫外線老化試驗(yàn)箱加強(qiáng)模塊間檢查,防止錯誤蔓延。
對瑞理方法可能許多人還不熟悉,這里簡要介紹一下。
瑞理(Rational)模式是美國瑞理軟件工程公司發(fā)展出來的,其模式是:
面向?qū)ο螅?br> 螺旋式上升;
管理與控制;
高度自動化;
以管理觀點(diǎn)和技術(shù)觀點(diǎn)把軟件生命周期劃分為起始、規(guī)劃、建構(gòu)、轉(zhuǎn)移、進(jìn)化五個階段,也可把這五個階段歸并為研究時期(起始和規(guī)劃)和生產(chǎn)時期(建構(gòu)和轉(zhuǎn)移),zui后是維護(hù)時期(進(jìn)化),特別適合對高風(fēng)險部分及變動需求的處理。