Parasoft為G3提供專注于安全性和整體軟件質(zhì)量的靜態(tài)分析解決方案
客戶背景
G3 Technologies,Inc.是一家無線電信組織,提供定制服務(wù)的工具和解決方案,以滿足固定/移動無線運(yùn)營商、《財(cái)富500強(qiáng)》公司和人道主義服務(wù)組織的需求。
G3極高的軟件質(zhì)量標(biāo)準(zhǔn)要求使用靜態(tài)分析工具,該工具必須能夠徹底,有效地分析代碼。 隨著不斷擴(kuò)大的開發(fā)團(tuán)隊(duì)和不斷增長的代碼庫(一個代碼庫超過1100萬行代碼),G3需要一種自動化、可擴(kuò)展的靜態(tài)分析工具,該工具能夠幫助他們盡早發(fā)現(xiàn)并修復(fù)缺陷。
當(dāng)G3準(zhǔn)備實(shí)施新解決方案時,Parasoft靜態(tài)分析由于能夠分析其復(fù)雜的C++代碼而脫穎而出。部署了Parasoft的靜態(tài)分析工具后,G3立即注意到其一些軟件應(yīng)用程序的軟件穩(wěn)定性有所提高。例如,在開發(fā)階段的軟件崩潰次數(shù)大大減少了,這表明Parasoft正在幫助G3消除冗長的調(diào)試工作。
面臨的挑戰(zhàn)
解決方案
案例詳細(xì)介紹
靜態(tài)分析是G3軟件質(zhì)量政策的重要組成部分,因?yàn)樗构灸軌蛟陂_發(fā)生命周期中盡早發(fā)現(xiàn)缺陷,并防止與后期錯誤檢測相關(guān)的下游成本。靜態(tài)分析減輕了測試人員的負(fù)擔(dān),因?yàn)樗归_發(fā)人員能夠在缺陷通過質(zhì)量檢查之前發(fā)現(xiàn)并修復(fù)缺陷。
更重要的是,高質(zhì)量的靜態(tài)分析工具可防止錯誤進(jìn)入生產(chǎn)管道。這有助于G3避免發(fā)布昂貴的補(bǔ)丁程序,否則可能會損害企業(yè)的聲譽(yù),并通過額外的驗(yàn)證補(bǔ)丁程序工作來負(fù)擔(dān)開發(fā)和測試團(tuán)隊(duì)的工作。
G3正在尋找一種新的靜態(tài)分析解決方案。他們以前的靜態(tài)分析供應(yīng)商似乎對將他們的關(guān)注范圍從整體軟件質(zhì)量縮小到對網(wǎng)絡(luò)安全的過度關(guān)注更感興趣。G3希望靜態(tài)分析合作伙伴愿意與他們合作實(shí)施增強(qiáng)功能,以幫助G3實(shí)現(xiàn)其軟件質(zhì)量目標(biāo),而先前的合作伙伴似乎不愿與G3合作改善其工具的質(zhì)量方面。
在評估了幾家商業(yè)靜態(tài)分析供應(yīng)商之后,G3選擇了Parasoft。
G3的高品質(zhì)標(biāo)準(zhǔn)
G3極高的軟件質(zhì)量標(biāo)準(zhǔn)要求使用靜態(tài)分析工具,該工具必須能夠徹底,有效地分析代碼。隨著不斷擴(kuò)大的開發(fā)團(tuán)隊(duì)和不斷增長的代碼庫(一個代碼庫超過1100萬行代碼),G3需要一種自動化的,可擴(kuò)展的靜態(tài)分析工具,該工具能夠幫助他們盡早發(fā)現(xiàn)并修復(fù)缺陷。G3積極主動地盡早發(fā)現(xiàn)盡可能多的錯誤的方法,使該公司能夠快速交付客戶期望的高質(zhì)量軟件。
由于G3用C++編寫了許多軟件,因此尋找一個可以正確分析其代碼的靜態(tài)分析工具就更加艱巨。與其他高級語言相比,C++使開發(fā)人員能夠獲得最高的性能。但是,需要權(quán)衡的是,需要更嚴(yán)格的代碼分析和對設(shè)計(jì)的細(xì)致關(guān)注,以避免與穩(wěn)定性和安全性相關(guān)的錯誤。
Parasoft的靜態(tài)分析由于能夠分析其復(fù)雜的C++代碼而脫穎而出。部署了Parasoft的靜態(tài)分析工具后,G3立即注意到其一些軟件應(yīng)用程序的軟件穩(wěn)定性有所提高。例如,在開發(fā)階段的軟件崩潰次數(shù)大大減少了,這表明Parasoft正在幫助G3消除冗長的調(diào)試工作。因此,G3可以在滿足計(jì)劃的同時繼續(xù)交付高質(zhì)量的軟件。
在部署Parasoft靜態(tài)分析工具的前6個月內(nèi),G3解決了約50000個違規(guī)問題,其中一些是關(guān)鍵錯誤,例如類型轉(zhuǎn)換問題、未使用的變量和空指針取消引用。
G3的工程副總裁安德魯·帕克(Andrew Park)理解,與可用性缺陷進(jìn)入生產(chǎn)環(huán)境相關(guān)的成本可能會嚴(yán)重?fù)p害該公司提供幾乎沒有錯誤的軟件版本的聲譽(yù)。
用Park的話來說,“開發(fā)、測試和將補(bǔ)丁程序部署到操作系統(tǒng)通常比第一次就花費(fèi)更多的成本。Parasoft是我們確保第一次就做到這一點(diǎn)的主要合作伙伴之一。我們在持續(xù)集成流程中采用了1083個Parasoft規(guī)則,在解決所有Parasoft缺陷之前,不允許軟件進(jìn)入生產(chǎn)系統(tǒng)。”
自定義靜態(tài)分析規(guī)則
G3還需要能夠自定義靜態(tài)分析規(guī)則以滿足其特定需求的能力。G3并沒有遵循單一的即用型編碼標(biāo)準(zhǔn),而是使用一系列標(biāo)準(zhǔn)和自定義檢查器來實(shí)現(xiàn)其編碼策略。市場上的許多解決方案狹narrow地專注于代碼的特定方面,例如網(wǎng)絡(luò)安全,但是G3一直在尋找一種能夠?qū)W⒂诎踩院驼w軟件質(zhì)量的靜態(tài)分析解決方案。
Parasoft使G3可以輕松地將靜態(tài)分析規(guī)則映射到其內(nèi)部編碼標(biāo)準(zhǔn),從而獲得針對G3代碼的非常徹底的靜態(tài)分析解決方案。
協(xié)作技術(shù)合作伙伴
最終,G3不僅在尋找供應(yīng)商,還在尋找可以在可預(yù)見的將來與G3合作的合作伙伴。他們以前的供應(yīng)商不愿與G3合作改善他們的靜態(tài)分析解決方案。但是G3認(rèn)識到,與靜態(tài)分析工具提供者合作進(jìn)行增強(qiáng)不僅可以幫助G3更有效地分析代碼,而且可以確保供應(yīng)商可以幫助G3長期提供高質(zhì)量的產(chǎn)品。
他們的必須具備協(xié)作文化和致力于幫助G3實(shí)現(xiàn)其軟件質(zhì)量目標(biāo)的承諾,而G3則通過Parasoft找到了這兩個特征。正如Park所解釋:
“盡管Parasoft顯然是一流的,但他們的員工表現(xiàn)出了真正的渴望,可以從我們這里聽到他們?nèi)绾胃倪M(jìn)產(chǎn)品的渴望。他們的公司文化正是我在合作伙伴中尋找的?!?/span>
Parasoft的詳盡文檔同時提高了G3開發(fā)團(tuán)隊(duì)的整體敏銳度。他們能夠在單個視圖中查看靜態(tài)分析違規(guī)的能力,有助于提高即使是經(jīng)驗(yàn)豐富的員工的編碼能力。
Parasoft實(shí)施
我們在持續(xù)集成流程中采用了1083個Parasoft規(guī)則,在解決所有Parasoft缺陷之前,不允許軟件影響生產(chǎn)系統(tǒng)。
結(jié)果
借助Parasoft,G3能夠在開發(fā)生命周期的早期發(fā)現(xiàn)并修復(fù)難以發(fā)現(xiàn)的缺陷,將生產(chǎn)中的崩潰次數(shù)減少到零,并改善開發(fā)團(tuán)隊(duì)的整體編碼風(fēng)格。
關(guān)于PARASOFT
Parasoft通過自動執(zhí)行耗時的測試任務(wù)并為管理層提供必要的智能分析來專注于重要事項(xiàng),從而幫助企業(yè)完善當(dāng)今高度連接的應(yīng)用程序。通過整合靜態(tài)和運(yùn)行時分析,Parasoft的技術(shù)減少了交付安全、可靠且合規(guī)的軟件的時間、精力和成本。單元、功能和API測試;和服務(wù)虛擬化。借助開發(fā)人員測試工具、經(jīng)理報(bào)告/分析和執(zhí)行人員儀表板,Parasoft為軟件組織提供了在嵌入式、企業(yè)和IoT市場成功開發(fā)和部署應(yīng)用程序所需的創(chuàng)新工具,同時還支持當(dāng)今最具戰(zhàn)略意義的開發(fā)計(jì)劃——敏捷agile、持續(xù)測試、DevOps和安全性。