HelixQAC-軟體程式碼靜態測試工具

麥禾測試發表於2021-09-13

https://www.bilibili.com/vide...原PRQA靜態測試軟體產品線(包括QA-C、 QA-C++、QA-Verify等),統一更名為“Helix QAC”,PRQA的程式碼靜態分析工具能夠幫助企業開發團隊提高程式碼的質量和安全,縮短軟體開發所需的時間,HelixQAC是作為其主打產品目前已廣泛應用於汽車、航空航天、電子商務、醫療器械、生產和通訊等領域。

HelixQAC

HelixQAC是靜態程式碼分析工具,依據C和C++編碼規則自動掃描程式碼對規則的違背。開發團隊在開發過程的早期就可以用它來檢測缺陷,因為此時修改程式碼是最方便也最經濟的。Helix QAC因此自動化強制實施程式碼程式設計標準,比如MISRA,保證程式碼的合規性。

圖片

功能特性

循程式碼標準

遵循編碼和工業標準。Helix QAC自動審查程式碼,確保它們符合使用者選擇的編碼標準。合規性報告視覺化地提醒使用者哪些程式碼需要多加留意。Helix QAC支援多種C和C++編碼標準,提供相應的合規性模組,也支援標準的客戶化定製。

   檢查更多缺陷

在開發早期檢查編譯器沒有發現的關鍵缺陷。Helix QAC為使用者的軟體建立了精確的行為模型,跟蹤程式碼中的變數值,如同執行時一樣。因此這種分析最大化地覆蓋了程式碼,使誤報和漏報最低。它甚至能識別極端複雜的程式碼引起的問題。

   提高程式碼質量

提供任何應用程式的整體質量和安全。Helix QAC識別必須修改的缺陷,提供詳細的指導幫助開發人員修改問題。這是不需要執行程式的。開發人員既然獲得了即時的上下文反饋,他們將因此從錯誤中獲得學習,下一次編寫新的程式碼(或者評審程式碼)時,能力將得到提升。

圖片

協同程式碼審查

Helix QAC的儀表盤提供了協同程式碼審查的能力,使用者能夠在Helix QAC檢查出的診斷上新增註解,為其他使用者分配需要他們採取的動作。

適應數百萬行程式碼

讓靜態分析適應你的環境。Helix QAC有能力處理數百萬行程式碼,保證你的產品無論程式碼由多麼複雜它都是安全的。

◆ 重用程式碼

重用質量信得過的程式碼。Helix QAC檢測程式碼移植性問題,所以你能重用讓你放心的程式碼,幫助你的快速開發。

◆ 加速開發過程

降低瓶頸加速開發。Helix QAC能整合在構建系統和持續整合環境中,儘早且頻繁地發現缺陷,從而避免了在開發後期往往需要花費甚巨的錯誤。它也加速了當前程式碼的評審,你甚至可以只讓它檢查新的程式碼變化,快速提供反饋。

◆ 監視整體程式碼質量

使用Helix QAC的儀表盤監視程式碼質量。你能夠用它監視程式碼質量度量,獲得質量趨勢。儀表盤還能幫你為利益相關方建立屬於他們的報告。

圖片

程式設計標準合規性

MISRA

① MISRA編碼標準檢查安全關鍵系統的潛在問題。MSIRA C和MISRA C++合規性模組指出違背這些規則的程式碼段。

② MISRA C模組強制實施MISRA C:1998、MISRA C:2004和MISRA C:2012。

③ MISRA C++模組強制實施MISRA C++:2008。

④ 在MISRA規則檢查方面,Helix QAC的準確性遠高於其他工具。它對規則的違背劃分出嚴重度的優先順序,你可以據此修改最重要的問題。

圖片

MISRA C

圖片

MISRA C++

AUTOSAR

① 自動化檢查AUTOSAR C++編碼標準的合規性。

② AUTOSAR編碼規則識別C++14的安全問題。

③ AUTOSAR C++模組指出違背這些規則的程式碼段。

圖片

AUTOSAR

CERT

① 自動檢查程式碼對CERT C和C++標準的合規性。

② CERT編碼規則識別程式碼中的安全漏洞。

③ CERT C和C++合規性模組指出違背這些規則的程式碼段,幫助你消除未定義的行為,應用安全編碼的最佳實踐

④ Helix QAC透過詳細的說明和示例,幫助你優先解決最嚴重的問題。所以你將能開發安全可靠的軟體系統,且能夠追蹤和報告CERT合規性。

圖片

呼叫樹

圖片

CERT C++

CWE**

① 自動檢查程式碼是否屬於CWE安全脆弱性列表裡的行為。

② CWE識別C和C++中常見的安全脆弱性。

③ CWE合規性模組指出程式碼是否有這些行為,有助於使用者優先解決關鍵錯誤,提升程式碼整體質量。

圖片

熱點圖

圖片

CWE C++

HIC++

① 自動檢查程式碼是否符合High Integrity C++編碼標準,它是原PRQA程式碼專家開發的標準。

② HIC++標準確保C++11和C++14的高質量程式碼。

圖片

HIC++

JSF AV C++

① 自動檢查程式碼是否符合Joint Striker Fight Air Vehicle(JSF AV)C++編碼標準。

② JSF AV C++用於安全關鍵的開發。Helix QAC提供了對該標準規則的理解最為深刻的診斷資訊。

圖片

JSF AV C++

客戶化規則

① 自動檢查程式碼是否符合定製規則。

② 你能夠為你自己的C/C++編碼規則定製一個合規性模組,Helix QAC自動實施這些規則。

圖片

Helix-qac

靜態分析優越性

\ 編碼問題的早期檢測

在新的程式碼和以前的程式碼中發現編碼問題。比較其他靜態程式碼分析器,Helix QAC發現更多的程式設計錯誤,包括C/C++的未定義或未指定的行為,且適用於數百萬行的大型專案。

\ 風險優先順序**

以風險的嚴重程度劃分編碼問題的優先順序。Helix QAC使用過濾器、抑制和基線的手段幫助你關注最為關鍵的程式碼缺陷,提供精確的診斷和可操作的結果。使用者因此能夠首先修改最重要的問題。

\ 消除安全漏洞

在原始碼上消除安全漏洞。程式設計錯誤往往導致犯罪分子利用軟體中的漏洞竊取資訊,但Helix QAC使你看到並控制程式設計錯誤,因此能在原始碼級別上就消除了漏洞。

\ 協同程式碼審查

協同程式碼審查,包括人工的和自動的靜態分析。你能夠為團隊成員分配任務。

\ 監控程式碼質量

監控程式碼整體質量。Helix QAC確保團隊所有成員使用的是一致的編碼規則,你能控制規則的偏離和診斷的抑制,也能測量、跟蹤和記錄質量度量及其趨勢。

\ 整合其它工具集

將靜態程式碼分析整合到其它開發工具。Helix QAC支援大多數編譯器。你可以把它整合到許多開發工具中,包括整合開發環境(比如Microsoft Visual Studio)、版本控制系統(比如Helix Core)、以及持續整合構建伺服器(比如Jenkins)。

工業標準認證

Helix QAC經過了獨立的標準認證,Helix QAC是由Programming Research開發的,後者現在是Perforce的組成之一。

SGS-TÜV Saar認證

Helix QAC經過SGS-TÜV Saar符合如下功能安全標準:

· ISO 26262 (automotive) up to ASIL level D.

· IEC 61508 (general industrial) up to SIL 4.

· EN 50128 (railways) up to SW-SIL 4.

· IEC 62304 (medical devices) up to Software Safety Class C.

· IEC 60880 (nuclear power).

ISO 9001 | TickIT認證

Helix QAC也透過了ISO 9001 | TickIT plus Foundation Level認證。

ISO 9001是廣被採用的標準,確保企業組織透過持續改進來滿足和超過客戶的需求和滿意度。

圖片

提供程式碼檢測的廠商:http://www.softtest.cn/
程式碼檢測工具列表:http://www.softtest.cn/multi/435.html
工具介紹:http://qa-systems.cn/multi/575.html
工具試用連結:http://qa-systems.cn/info/532.html

相關文章