軟件質(zhì)量是指與軟件產(chǎn)品滿足規(guī)定和隱含的需求的能力和有關(guān)的特征的全體,即所有描述計(jì)算機(jī)軟件優(yōu)秀程度的特性的組合。
應(yīng)用軟件的質(zhì)量依賴于問題需求的描 述、解決方案的建模設(shè)計(jì)、可執(zhí)行程序的編碼的產(chǎn)生以及為發(fā)現(xiàn)錯(cuò)誤而運(yùn)行軟件的測(cè)試。一個(gè)優(yōu)秀的監(jiān)理工程師應(yīng)該能夠使用定量的方法來評(píng)估軟件開發(fā)過程中產(chǎn)生的分析及設(shè)計(jì)模型、源代碼和測(cè)試用例(use case)的質(zhì)量。
軟件開發(fā)質(zhì)量的定量監(jiān)理
為了實(shí)現(xiàn)這種實(shí)時(shí)的質(zhì)量評(píng)估,監(jiān)理工程師們必須采用技術(shù)度量來客觀地評(píng)估質(zhì)量,而不能僅僅采用主觀的方法進(jìn)行評(píng)估。
在評(píng)估中,首先要明確的一點(diǎn)是,軟件需求是度量軟件質(zhì)量的基礎(chǔ)。不符合需求的軟件就不具備質(zhì)量。
而在定量監(jiān)理實(shí)踐中,通常需要使用一種被稱為尺度度量的方法,這種定量度量適用于一些能夠直接度量的特性,比如,出錯(cuò)率定義為錯(cuò)誤數(shù)/KLOC/單位時(shí)間等。
因而,對(duì)質(zhì)量控制所應(yīng)該建立的一些定量數(shù)據(jù)是:
?。?)明確性(無(wú)二義性)、完全性、正確性、可理解性、可驗(yàn)證性、內(nèi)部和外部一致性、可完成性、簡(jiǎn)潔性、可追蹤性、可修改性、精確性和可復(fù)用性的數(shù)據(jù)。這些數(shù)據(jù)可以用來評(píng)價(jià)分析模型和相應(yīng)的需求規(guī)約質(zhì)量的特征。
公開的可能缺陷數(shù)與報(bào)告總?cè)毕輸?shù)的對(duì)比則可以用來評(píng)價(jià)測(cè)試精確度和測(cè)試覆蓋度,同時(shí)也可以預(yù)測(cè)項(xiàng)目發(fā)布時(shí)間。
(2)產(chǎn)品發(fā)布前清除的缺陷數(shù)在總?cè)毕輸?shù)中所占的百分比,有助于評(píng)估產(chǎn)品的質(zhì)量。
?。?)按嚴(yán)重缺陷、子系統(tǒng)缺陷來劃分,分類統(tǒng)計(jì)出平均修復(fù)時(shí)間,這樣將有助于規(guī)劃糾正缺陷的工作。
?。?)利用測(cè)試的統(tǒng)計(jì)數(shù)據(jù),估算可維護(hù)性、可靠性、可用性和原有故障總數(shù)等數(shù)據(jù)。這些數(shù)據(jù)將有助于評(píng)估應(yīng)用軟件的穩(wěn)定程度和可能產(chǎn)生的失敗。
在上述定量數(shù)據(jù)的基礎(chǔ)上,就可以開始進(jìn)行估算。
1、基本的定量估算
基本定量估算示例:
設(shè):
F為用功能點(diǎn)描述的軟件規(guī)模;
D1為在開發(fā)過程(提交之前)中發(fā)現(xiàn)的所有缺陷數(shù);
D2為提交后發(fā)現(xiàn)的缺陷數(shù);
D為發(fā)現(xiàn)的總?cè)毕輸?shù)。
因此, D=D1+D2
對(duì)于一個(gè)應(yīng)用軟件項(xiàng)目,則有如下計(jì)算方程式(可以從不同的角度估算軟件的質(zhì)量):
質(zhì)量=D2/F;
缺陷注入率=D/F;
整體缺陷清除率=D1/D;
同樣以上期中的CAD軟件為例,根據(jù)上期計(jì)算所得結(jié)果,功能點(diǎn)F為366,而在開發(fā)過程中發(fā)現(xiàn)了15個(gè)錯(cuò)誤,提交后又發(fā)現(xiàn)了4個(gè)錯(cuò)誤,則:
D1=15,D2=4
D=D1 +D2=15+4=19
質(zhì)量(每功能點(diǎn)的缺陷數(shù))=D2/F=4/366=0.0109
缺陷注入率=D/F=19/366=0.05191
整體缺陷清除率=D1/D=15/19=0.7895
有資料報(bào)告,美國(guó)的平均整體缺陷清除率目前只達(dá)到大約85%。而像AT&T、IBM、摩托羅拉和惠普這樣一些大公司的頂級(jí)項(xiàng)目,通過實(shí)施最佳實(shí)踐,其缺陷清除率可以超過99%。
眾所周知,清除軟件缺陷的難易程度是不同的。需求錯(cuò)誤、規(guī)格說明、設(shè)計(jì)問題及錯(cuò)誤修改是最難清除的。表1給出了美國(guó)平均缺陷的情況:
表2反映的是CMM五個(gè)等級(jí)是如何影響軟件質(zhì)量的,其數(shù)據(jù)來源于美國(guó)空軍1994年委托SPR(美國(guó)一家著名的調(diào)查公司)進(jìn)行的一項(xiàng)研究。
從表中可以看出,CMM級(jí)別越高,缺陷清除率也越高。
在監(jiān)理過程中,可以將這這些標(biāo)準(zhǔn)或指標(biāo)結(jié)合起來使用,用以辨明可能存在的質(zhì)量問題。
2、對(duì)軟件需求的估算
假設(shè)在一個(gè)規(guī)約中有nr個(gè)需求,所以
nr=nf+nnf
其中,nf是功能需求的數(shù)目,nnf是非功能需求數(shù)目(例如性能)。
為了確定
項(xiàng)目經(jīng)理勝任力免費(fèi)測(cè)評(píng)PMQ上線啦!快來測(cè)測(cè)你排多少名吧~
http://opto-elec.com.cn/pmqhd/index.html