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