軟件供應(yīng)鏈管理中的首要問題
如今的軟件開發(fā)公司經(jīng)常陷入相互沖突的業(yè)務(wù)優(yōu)先級之間。一方面,他們需要幫助各自的組織比競爭對手更快地將創(chuàng)新產(chǎn)品和服務(wù)推向市場。另一方面,他們負責交付高質(zhì)量、高度安全的代碼,幫助他們提高客戶滿意度,并降低風險。最重要的是,開發(fā)和質(zhì)量保證(QA)職能都面臨著越來越大的壓力,需要降低成本并進一步提高效率。所有這些因素構(gòu)成了軟件開發(fā)的完美風暴。展示了Coverity公司確定的軟件供應(yīng)鏈管理中最受關(guān)注的問題。
在Forrester Consulting和Coverity最近的一項調(diào)查中,90%的受訪者確認他們使用來自商業(yè)供應(yīng)商、外包團隊或開源提供商的第三方提供的代碼。而且這種趨勢似乎在增加:今天的許多組織都依賴于來自多個來源的軟件代碼。
未經(jīng)充分測試的第三方代碼可能會導致產(chǎn)品延遲或召回、安全漏洞以及產(chǎn)品和服務(wù)的開發(fā)時間增加。所有這些都可能對您的收入和品牌產(chǎn)生嚴重的負面影響。在ForresterConsulting最近的一項調(diào)查中,只有44%的被調(diào)查公司在第三方代碼的開發(fā)過程中進行自動化代碼測試,而69%的公司對內(nèi)部開發(fā)的軟件使用自動化代碼測試。只有35%的公司對第三方代碼進行風險、安全或漏洞評估,而70%的公司在其內(nèi)部開發(fā)的軟件上部署這些方法。并且只有35%的公司對第三方提供的軟件進行手動代碼審查,而68%的公司對內(nèi)部開發(fā)的代碼進行手動代碼審查。簡而言之,第三方代碼的測試方式與內(nèi)部代碼不同。
如今的軟件開發(fā)項目的特點是優(yōu)先級沖突的完美風暴,并且通常包含來自多個來源的代碼混合物。這導致軟件開發(fā)生態(tài)系統(tǒng)中風險和回報的分配不均。在同一份報告中,F(xiàn)orrester發(fā)現(xiàn),在幾乎每兩個案例中,買方對第三方代碼中發(fā)現(xiàn)的質(zhì)量和安全問題負有100%的責任,而第三方供應(yīng)商則為十分之一。被追究100%的責任。該研究還證實,開發(fā)人員正在承擔額外的責任,超過74%的受訪者表示,與一年前相比,開發(fā)人員對質(zhì)量和安全目標的責任更大。
前面的觀點并不意味著開發(fā)團隊沒有做好他們的工作。相反,這些結(jié)果強調(diào)需要在所有內(nèi)部和外部供應(yīng)商之間擴展軟件完整性標準。開發(fā)人員測試,包括靜態(tài)分析等技術(shù),可以通過讓供應(yīng)商控制每行代碼的最大缺陷數(shù)量來確保這些標準。