在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

什么是靜態分析?如何管理早期靜態分析報告

麥克泰技術 ? 來源:麥克泰技術 ? 作者:麥克泰技術 ? 2022-11-01 11:35 ? 次閱讀

Parasoft作為軟件測試工具,小編接觸過很多在這方面尋求幫助的人,所以有這方面疑惑的不止你一個人哦!

我們假定你已經安裝了靜態分析工具并配置了所有初始設置。除此以外,如果剛開始沒有確定項目需要采取的策略,入門會比較困難。小編所說的“入門”是指深入理解將靜態分析集成到現有項目中的一般方法,以及如何提高靜態分析隨著時間的推移帶來的投資回報。

什么是靜態分析?

簡單來說,靜態分析是在不執行代碼的情況下檢查源代碼和二進制代碼的過程,通常用于查找bug的前期準備或評估代碼質量。與需要運行程序的動態分析(例如Parasoft Insure ++)不同,靜態分析可以直接分析源代碼而不需要執行源代碼。

這意味著靜態分析可用于部分完整的代碼,庫和第三方源代碼。開發人員可以將靜態分析應用在編寫或修改代碼的過程中,甚至可以應用到任何代碼庫。

支持功能安全和編碼標準

在應用程序安全域中,靜態代碼分析采用了靜態應用程序安全性測試(SAST)技術。靜態分析可以支持安全漏洞檢測,同時支持bug檢測,質量指標和編碼標準一致性檢測。

另外,靜態分析工具強制要求(在某些情況下“強烈推薦”)能夠支持安全標準(如ISO 26262或EN 50128)的檢測,因為這些標準能夠檢測難以發現的缺陷并提高軟件的安全性。當然,這又回歸到安全性的問題上,因為靜態分析工具還可以幫助軟件團隊遵守主要用于驗證安全編碼的編碼標準,例如CERT甚至MISRA。

靜態分析工具優點及難點

靜態分析工具的一個優點是它們可以在項目的任何階段引入和使用,即使項目是不完整的或者只有部分編碼是有效的。引入靜態分析的最大難點在于代碼量大會產生大量的警告。因此,將靜態分析應用到項目中時的重點應該是使團隊能夠盡快高效工作,并最大限度地減少團隊被靜態分析的警告困擾的情況。這并不是說這些警告不重要,但大多數開發人員都不會修復現有或遺留代碼缺陷,至少不是立即處理。

最重要的應該是將靜態分析運用到日常流程中,以便最大化靜態分析的使用效果和可用性,然后處理最危險的bug和安全漏洞。一旦團隊變得更加熟練,你就可以專注于優化工具和流程,提高投資回報率。

如何管理早期靜態分析報告

一旦將靜態分析工具安裝到項目中,該工具通常會報告相當長的違規和警告報告。這可能是多到無法處理的,特別是在大型代碼庫中,因此如何管理這些報告將會直接影響到工具集成到項目中能否成功。

并非所有警告都是至關重要的,因此不需要立即處理所有警告。學習哪些需要立即解決而哪些需要推遲處理是成功的關鍵。如上所述,產品的成熟度和規模對方法有直接影響,下面將更詳細地概述。

底線方法

顧名思義,在這種方法中,開發人員決定在初步分析之后,他們不會讓任何更嚴重的警告和違規進入代碼庫。換句話說,他們需要分析每個警告來確定其準確性,并及時修復,如果它確實是一個bug。

團隊還可以決定在現有代碼中添加已發現的關鍵警告,并將其添加到報告工具中的bug列表中。這些類型的警告可能是嚴重的安全漏洞,如SQL注入,或嚴重的內存錯誤,如緩沖區溢出。在大多數情況下,可以推遲不太嚴重的警告以供以后分析。你可能會想,“這不僅僅會增加我們的技術債務嗎?”如果你這樣想,那你就是對的!但在這個階段,我們對此表示滿意。這些警告中的任何潛在錯誤都已經在技術債務堆中。至少現在,它們被識別出來并且以后更容易修復。

確認并推遲處理方法

如果產品已經在市場上并且正在維護中,那么識別代碼中的任何bug和安全漏洞仍然是有益的,但讓開發人員分析(更不用說修復)所有這些警告是不可行的。

在這種情況下,查看最重要的報告并確定行動方案是有意義的。其余的警告只需要確認,因為軟件團隊認識到它們存在,但它們大多數都被推遲了。(這再次增加了該組織的技術債務,但如上所述,這些漏洞在技術上已經存在作為技術債務。)這種方法不同于底線方法的地方在于確定關鍵警告后,你會推遲其余的警告,而不需要所有的都分析。

綠地方法

現有代碼很少的項目是靜態分析的理想起點。在這種情況下,軟件團隊可以調查出現的所有警告并修復發現的錯誤。與其他方法不同,你只需要管理很少的警告,因此開發人員可以解決額外的工作。這也是通過這些工具實現和實施編碼標準的理想時間,因為可以在IDE中以及在將任何代碼提交到版本控制之前識別和修復違規(你可以在此處描述的其他方案中執行此操作)。

在三個主要階段采用何種靜態分析,可以通過如何處理積壓的警告來區分,如下所示:

732f3bc4-5992-11ed-a3b6-dac502259ad0.jpg

在三個主要階段采用靜態分析:在綠地項目中,大多數報告的警告都經過調查和修復,幾乎沒有進入技術債務堆。正在開發的項目往往會積壓大量的警告,這些警告大部分都是推遲處理,只處理嚴重警告,維護中的產品往往會推遲大多數警告。

配置與過濾

開源或輕量級靜態分析工具與商業高級靜態分析工具之間的主要區別之一在于能否配置為分析啟用哪組檢查器,并根據警告類別,文件名,嚴重性等過濾掉報告的結果屬性。這有助于突出目標——開發人員可以專注于他們感興趣的警告類型,并減少在任何時間產生的垃圾信息量。

配置檢查器和過濾結果之間也存在差異。盡管一開始限制全局配置中的規則數量似乎更好,但通常應使用過濾來限制報告范圍,而不是完全消除檢查程序。如果在配置中關閉后來證明是重要的規則,則警告存儲庫中將沒有歷史記錄,因此你將無法確定錯誤是由最近的更改引入還是在靜態分析之前已經在代碼中。

我建議使用配置將規則集限制為可預見對軟件團隊有用的規則。同樣,以最終目標為出發點:如果提高安全性是關鍵目標,那么啟用所有與安全相關的規則,禁用不太重要的規則,啟用CERT C等內置安全編碼標準。如果你正在使用Parasoft C/C++test等高級靜態分析解決方案,你可以利用其內置的管理工具來處理靜態分析報告中生成的數據,并推進未來的重點開發工作。

總結

靜態分析工具使團隊無需執行代碼,就能夠檢測和跟蹤錯誤安全漏洞。這些工具可應用于現有、傳統和第三方代碼并提供質量審查結果。

采用何種靜態分析方法在一定程度上取決于項目的成熟度。大量代碼確實會產生大量警告。但這完全是可管理的,能否成功取決于團隊如何決定處理結果。好好考慮為項目的每個成熟度階段引入不同的技術,以及如何將這些工具集成到開發人員,團隊負責人和經理的日常工作流程中。

審核編輯 :李倩

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 代碼
    +關注

    關注

    30

    文章

    4886

    瀏覽量

    70190
  • 應用程序
    +關注

    關注

    38

    文章

    3321

    瀏覽量

    58645
  • 靜態分析
    +關注

    關注

    1

    文章

    42

    瀏覽量

    3999

原文標題:如何使用靜態分析,減輕團隊壓力?

文章出處:【微信號:麥克泰技術,微信公眾號:麥克泰技術】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦
    熱點推薦

    集成電路設計中靜態時序分析介紹

    本文介紹了集成電路設計中靜態時序分析(Static Timing Analysis,STA)的基本原理、概念和作用,并分析了其優勢和局限性。 ? 靜態時序
    的頭像 發表于 02-19 09:46 ?471次閱讀

    ADC的靜態指標有專用的分析工具嗎?

    請問:ADC的靜態指標有專用的分析工具嗎?該指標很少在評估ADC指標時使用,是否該指標不重要,應用中什么情況下需要評估該指標? 另外ADC的SNR = 6.02*N + 1.76 +10*log10(fs/2BW) 當被采樣信號為單音時 該BW為多少?
    發表于 02-08 08:13

    靜態路由和鏈路聚合的通信原理

    靜態路由和鏈路聚合的通信原理
    發表于 12-23 16:59 ?0次下載

    電阻失效分析報告

    電阻失效分析報告
    的頭像 發表于 11-03 10:42 ?663次閱讀

    汽車異構硬件平臺開發如何進行靜態代碼分析

    先進的靜態代碼分析工具,其新版本中引入的多CCT功能為開發人員提供了強大的支持,該功能不僅簡化了多編譯器環境下的代碼分析過程,還可以極大增強代碼的質量和安全性。
    的頭像 發表于 10-09 16:15 ?752次閱讀
    汽車異構硬件平臺開發如何進行<b class='flag-5'>靜態</b>代碼<b class='flag-5'>分析</b>

    Lint靜態驗證工具如何助力IC設計

    靜態驗證方法實現了將原本在仿真、綜合、布局布線階段出現的問題移動到RTL階段進行檢測和分析,幫助IC設計者在早期發現和診斷設計缺陷,縮短芯片整體開發周期,降低成本。
    的頭像 發表于 09-03 10:15 ?1540次閱讀
    Lint<b class='flag-5'>靜態</b>驗證工具如何助力IC設計

    恒訊科技分析:如何測試海外靜態IP服務的穩定性和速度?

    測試海外靜態IP服務的穩定性和速度可以通過以下步驟進行: 1、選擇測試工具:使用網絡測試工具,如ping命令、traceroute(或 racert)、網絡速度測試網站(例如
    的頭像 發表于 08-14 14:58 ?577次閱讀

    RS觸發器的靜態特性分析

    RS觸發器(Reset-Set Trigger)是數字電路中的一種基本邏輯單元,具有兩個穩定狀態,即“置位”(Set)狀態和“復位”(Reset)狀態。其靜態特性主要指的是在沒有外部觸發信號變化時,觸發器保持其當前狀態不變的能力。
    的頭像 發表于 08-12 09:55 ?929次閱讀

    對放大電路的分析方法介紹

    放大電路是電子技術中非常重要的組成部分,它廣泛應用于信號處理、通信、測量等領域。對于放大電路的分析,通常可以分為直流分析和交流分析兩種情況。下面我們將介紹這兩種分析方法。 直流
    的頭像 發表于 08-07 10:08 ?1131次閱讀

    靜態工作點的高低對電路有什么影響

    靜態工作點(Q點)是半導體器件在直流條件下的運行狀態,它對電路的性能和穩定性有著重要的影響。在本文中,我們將介紹靜態工作點的高低對電路的影響,包括其對放大器性能、穩定性、功耗、熱效應等方面
    的頭像 發表于 08-06 15:38 ?2756次閱讀

    基于ANSYS的高速磨削電主軸動靜態性能分析

    以國產120MD60Y6型高速磨削電主軸為研究對象,使用有限元分析方法,基于ANSYS Workbench建立高速電主軸模型,先分析靜態特性,計算工作條件下電主軸前端所受徑向力和軸承徑向剛度;然后
    的頭像 發表于 08-05 11:20 ?152次閱讀
    基于ANSYS的高速磨削電主軸動<b class='flag-5'>靜態</b>性能<b class='flag-5'>分析</b>

    恒訊科技分析:香港站群服務器為什么要做偽靜態處理呢?

    提高搜索引擎優化(SEO)效果:偽靜態處理可以使得動態網頁URL看起來像是靜態網頁的URL,這有助于搜索引擎更好地索引網站內容。搜索引擎通常偏好靜態網頁,因為它們認為靜態網頁更穩定、內
    的頭像 發表于 07-31 12:49 ?445次閱讀

    暫態穩定和靜態穩定的區別是什么

    暫態穩定和靜態穩定是電力系統穩定性分析中的兩個重要概念,它們分別描述了電力系統在受到擾動后的動態響應和穩態運行狀態。下面將介紹暫態穩定和靜態穩定的區別,并從多個方面進行比較。 定義上的區別 暫態穩定
    的頭像 發表于 07-26 09:41 ?4274次閱讀

    IAR通過多架構認證的靜態分析工具加速代碼質量自動化

    公司推出經TüV SüD認證的C-STAT靜態分析工具,適用于最新發布的IAR Embedded Workbench for RISC-V V3.30.2功能安全版。
    的頭像 發表于 06-19 15:49 ?605次閱讀

    晶閘管的靜態特性與伏安特性詳解

    晶閘管的靜態特性主要涉及其在靜態條件下的電氣特性,包括其導通和關斷的行為。
    的頭像 發表于 05-24 18:10 ?3197次閱讀
    主站蜘蛛池模板: 久久两性视频 | 毛片视频免费网站 | 国产91色综合久久免费分享 | 国产免费高清福利拍拍拍 | 日本不卡一区在线 | 激情综合网激情 | 日韩一级片免费观看 | 欧美簧片 | 操的好爽视频 | 全国最大色成免费网站 | 久久久噜噜噜久久 | 日本三人交xxx69视频 | 黄页网站在线播放 | h在线观看视频免费网站 | 日本在线亚洲 | 天天色影院 | 亚洲国产色婷婷精品综合在线观看 | 四虎国产精品免费观看 | 深夜视频在线免费 | 久久亚洲精品玖玖玖玖 | 777kkk亚洲综合欧美色老头 | 欧美色插| 色伊伊| 特一级黄 | 色老头视频在线观看 | 黄色国产在线视频 | 97久久天天综合色天天综合色 | 97超频国产在线公开免费视频 | 国产伦一区二区三区免费 | 黄色精品视频 | 日日夜夜天天人人 | 视频在线免费看 | 亚洲精品色一区色二区色三区 | 天堂ww | 国产精品一区在线观看你懂的 | 五月婷婷综合在线 | 天天插狠狠干 | 亚洲日本免费 | 最近2018中文字幕2019高清 | 久久99综合 | 国产视频观看 |