開源軟件比私有軟件bug更少?
譯文【51CTO 2月28日外電頭條】以火狐、LibreOffice以及Linux為代表的免費(fèi)開源軟件正越來越多地為商業(yè)領(lǐng)域及個(gè)人計(jì)算機(jī)所使用,但不同的聲音也同時(shí)揮之不去:分析人士常常大肆鼓吹開源軟件的局限性,尤其是軟件自身的質(zhì)量水平。
“軟件與其它商品一樣,永遠(yuǎn)是一分錢一分貨,”開源軟件的反對(duì)者們總是喜歡這樣評(píng)價(jià)。
這類觀點(diǎn)往往源于所謂FUD(即恐懼、困惑與質(zhì)疑),但開發(fā)及測(cè)試機(jī)構(gòu)Coverity公司剛剛發(fā)布的***報(bào)告有助于大家對(duì)這一問題做出正確評(píng)估。
在上周四剛剛發(fā)布的2011年Coverity開源項(xiàng)目質(zhì)量觀察報(bào)告中,Coverity公司發(fā)現(xiàn)開源項(xiàng)目中每千行代碼所存在的平均缺陷數(shù)量居然低于其它私有軟件。
“隨著開源項(xiàng)目在現(xiàn)代軟件供應(yīng)鏈中的地位日益鞏固,開源與私有軟件之間的界線將隨著時(shí)間的推移進(jìn)一步淡化,”Coverity公司觀察項(xiàng)目總監(jiān)Zack Samocha指出。
尋找缺陷
這一觀察項(xiàng)目最早由Coverity與美國(guó)國(guó)土安全局于2006年共同推出,希望通過公共部門與私營(yíng)企業(yè)的通力合作共同對(duì)開源軟件質(zhì)量話題展開深入研究。
在今年的分析報(bào)告中,Coverity共對(duì)超過3700萬行開源軟件代碼以及3000余萬行私有軟件代碼進(jìn)行采樣,這些代碼全部來自Coverity的匿名用戶。
為了進(jìn)行分析,Coverity使用了一套今年剛剛經(jīng)過升級(jí)的專業(yè)測(cè)試平臺(tái),能夠從現(xiàn)有軟件代碼中發(fā)現(xiàn)更多更新的缺陷類型。
Linux 2.6 脫穎而出
Coverity的研究結(jié)果顯示,在私有軟件代碼庫中,每款軟件平均由750萬行代碼構(gòu)成,而每千行代碼中所存在的平均缺陷數(shù)量為0.64。
上述結(jié)果聽起來已經(jīng)相當(dāng)令人滿意,但在開源軟件這邊,代碼質(zhì)量卻又更勝一籌。具體來說,開源項(xiàng)目平均由83萬2千行代碼構(gòu)成,而每千行代碼中所存在的平均缺陷數(shù)量為0.45。
Coverity公司同時(shí)發(fā)現(xiàn),在雙方代碼庫規(guī)模相近的項(xiàng)目中,開源軟件與私有軟件的實(shí)際代碼質(zhì)量頗為相近。就以Linux 2.6為例——此項(xiàng)目由將近700萬行代碼構(gòu)成——其缺陷密度為0.62(即每千行代碼中存在0.62個(gè)缺陷),這一結(jié)果仍然略好于私有軟件代碼庫的平均成績(jī)。
在為數(shù)眾多的開源項(xiàng)目之中,Linux 2.6、PHP 5.3以及PostgreSQL 9.1完全可以當(dāng)作行業(yè)標(biāo)桿,該公司表示,三者的缺陷密度分別為0.62、0.20與0.21。
這并不意味著開源軟件已經(jīng)成為任何業(yè)務(wù)目標(biāo)的***解決方案。然而當(dāng)我們決定選擇一款新型軟件時(shí),希望大家不要再固守傳統(tǒng)思維。事實(shí)證明,質(zhì)量不僅不是開源項(xiàng)目的短板,反而成為其競(jìng)爭(zhēng)優(yōu)勢(shì)的一種體現(xiàn)。
原文:Report: Open source tops proprietary code in quality