(三)質(zhì)量保證
開放源碼軟件產(chǎn)品取得令人矚目的質(zhì)量水平,這一點在封閉源碼開發(fā)世界被認(rèn)為是困難和耗費資源的軟件開發(fā)工作之一。開源軟件取得高質(zhì)量的原因主要包括以下三方面:(1)開發(fā)人員是根據(jù)自己在相關(guān)應(yīng)用領(lǐng)域的興趣和知識來自我選擇的;(2)開發(fā)人員對于項目需求心照不宣,因為他們自己是軟件的用戶;(3)技術(shù)交流(包括錯誤報告)是公開進行的。此外,調(diào)試工作也由于被分解到許多具有不同知識背景的人手中而更高效。
(四)構(gòu)建和測試管理
開源項目的開發(fā)活動是在許多開發(fā)人員中發(fā)生的連續(xù)和并行的行為,有時某個開發(fā)人員的更改可能與其他開發(fā)者進行的更改發(fā)生沖突,通常情況下版本控制活動能夠解決這些沖突,但是有時卻不行。那些被開發(fā)用來支持軟件經(jīng)常自動構(gòu)建和測試的工具成為幫助盡早發(fā)現(xiàn)這類邏輯沖突的強大工具。
(五)項目管理
任何項目都需要明確的目標(biāo)、資源配置和進度安排,開源社區(qū)采取獨特的、靈活的方式來解決這類問題——共享的“TO-DO”列表用于跟蹤那些需要完成的任務(wù),個人的“TO-DO”列表幫助開發(fā)人員保持進度,里程碑列表則基于用戶和開發(fā)者的反饋設(shè)置了靈活截止期限。
(六)知識管理
知識是區(qū)分開發(fā)高手和初學(xué)者的具價值的資源,高效地共享知識則是開源社區(qū)成功的關(guān)鍵所在。清晰地管理知識可以幫助減少初學(xué)者的學(xué)習(xí)曲線,從而降低潛在貢獻者的入門壁壘,同時自動地將專家用于培訓(xùn)他人的負擔(dān)降至低限度。