99精品伊人亚洲|最近国产中文炮友|九草在线视频支援|AV网站大全最新|美女黄片免费观看|国产精品资源视频|精彩无码视频一区|91大神在线后入|伊人终合在线播放|久草综合久久中文

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

代碼質(zhì)量:動(dòng)態(tài)和靜態(tài)分析相結(jié)合使工程師和審核員滿意

星星科技指導(dǎo)員 ? 來(lái)源:嵌入式計(jì)算設(shè)計(jì) ? 作者:MARK PITCHFORD ? 2022-11-01 09:38 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

在過(guò)去美好的時(shí)光里,在編寫(xiě)軟件成為“軟件工程”之前,代碼開(kāi)發(fā)是一門(mén)黑藝術(shù),由剛從大學(xué)畢業(yè)的奇怪書(shū)孩子實(shí)踐。對(duì)他們來(lái)說(shuō),編碼絕不是一門(mén)結(jié)構(gòu)化的學(xué)科。如果你設(shè)法讓他們溝通,他們可能會(huì)告訴你,他們正在一起破解代碼,并使用臨時(shí)測(cè)試數(shù)據(jù)來(lái)查看它是否做了他們執(zhí)行它時(shí)應(yīng)該做的事情。

無(wú)論他們是否知道,他們都在通過(guò)系統(tǒng)功能測(cè)試進(jìn)行動(dòng)態(tài)分析。與靜態(tài)分析不同,動(dòng)態(tài)分析涉及代碼執(zhí)行的定義。

但是,除了顯示基本功能對(duì)于任何基本的測(cè)試數(shù)據(jù)大致正確之外,這還做了什么?雖然總比沒(méi)有好,但可能不超過(guò)一半的代碼被執(zhí)行。行業(yè)軟件專(zhuān)家、Ganssle Group首席顧問(wèn)兼行業(yè)編輯Jack Ganssle對(duì)此表示贊同:“研究證實(shí),如果不使用代碼覆蓋率分析,測(cè)試通常只執(zhí)行50%的代碼。給定典型的錯(cuò)誤率,這意味著程序中的 100K 行代碼將附帶 2500 到 5000 個(gè)錯(cuò)誤。這些錯(cuò)誤會(huì)導(dǎo)致許多系統(tǒng)故障。

為什么?因?yàn)闊o(wú)論測(cè)試多么富有想象力,現(xiàn)實(shí)生活中都有可能拋出一些曲線球來(lái)嘗試未經(jīng)測(cè)試的路徑。如果執(zhí)行某些內(nèi)容未經(jīng)測(cè)試,您可能會(huì)遇到一些意外和潛在的災(zāi)難性故障。

快進(jìn) 30 或 40 年。雖然這種樸素的方法并不能與復(fù)雜的軍事嵌入式應(yīng)用相提并論,但功能測(cè)試仍然是動(dòng)態(tài)測(cè)試的核心。精心挑選的測(cè)試數(shù)據(jù)表明,源代碼中的分支和語(yǔ)句是按照規(guī)范執(zhí)行的,不僅使我們能夠證明系統(tǒng)在功能上是正確的,而且我們已經(jīng)執(zhí)行了所有這些功能。當(dāng)與靜態(tài)分析結(jié)合使用時(shí),動(dòng)態(tài)分析提供了所需的支持證據(jù),以證明我們所有其他良好的工作和最佳實(shí)踐產(chǎn)生了安全、可靠和高質(zhì)量的最終產(chǎn)品。

與多年前的黑客攻擊不同,今天的自動(dòng)化測(cè)試工具通過(guò)使用儀器探針等技術(shù)精確地跟蹤執(zhí)行路線。這些探測(cè)器本質(zhì)上是附加的函數(shù)調(diào)用,從源代碼中的戰(zhàn)略點(diǎn)生成“我來(lái)過(guò)這里”消息,并允許整理覆蓋率數(shù)據(jù)。它們?cè)试S動(dòng)態(tài)測(cè)試生成有關(guān)其全面程度的反饋,以便我們可以在每組結(jié)果的基礎(chǔ)上連續(xù)構(gòu)建,直到達(dá)到所需的覆蓋水平。

反過(guò)來(lái),這為我們一次執(zhí)行多少代碼提供了靈活性??梢詫?duì)整個(gè)系統(tǒng)進(jìn)行動(dòng)態(tài)分析,但總有一些通過(guò)代碼的路由,我們的系統(tǒng)在正常運(yùn)行期間無(wú)法執(zhí)行這些路由——例如防御性代碼;也許是除以零的支票。

在這種情況下,最好也使用“單元測(cè)試”。單元測(cè)試封裝了系統(tǒng)的一個(gè)子集,并允許傳遞參數(shù),以便執(zhí)行示例中的防御機(jī)制代碼。我們甚至可以選擇完全基于單元測(cè)試進(jìn)行應(yīng)用程序動(dòng)態(tài)分析,在每個(gè)模塊開(kāi)發(fā)時(shí)整理代碼覆蓋率數(shù)據(jù),并消除等待完整系統(tǒng)的任何要求。

當(dāng)今的軍事應(yīng)用需要支持 ARINC 653 或FACE等架構(gòu)標(biāo)準(zhǔn),以提高代碼的可移植性和可重用性。通過(guò)動(dòng)態(tài)分析提供全面的覆蓋數(shù)據(jù)提供了證據(jù),證明即使移植到不同的應(yīng)用程序,代碼仍然是可維護(hù)的、安全的,特別是當(dāng)與有效的靜態(tài)分析制度結(jié)合使用時(shí)。

審核編輯:郭婷

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 嵌入式
    +關(guān)注

    關(guān)注

    5149

    文章

    19659

    瀏覽量

    317356
  • 代碼
    +關(guān)注

    關(guān)注

    30

    文章

    4900

    瀏覽量

    70682
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    工程師的“新神器”:用CCLinkie轉(zhuǎn)Devicenet連接水質(zhì)分析儀,輕松搞定數(shù)據(jù)難題

    在化工行業(yè)摸爬滾打的工程師們,是不是經(jīng)常為水質(zhì)監(jiān)測(cè)數(shù)據(jù)的獲取和整合頭疼?一邊是復(fù)雜的化工生產(chǎn)流程,一邊是水質(zhì)分析儀的數(shù)據(jù)孤島,兩者之間的“溝通障礙”讓不少工程師抓耳撓腮。別急,今天就來(lái)給大家支個(gè)招
    發(fā)表于 06-09 15:36

    問(wèn),成為硬件工程師需要幾只手?#硬件工程師 #YXC晶振 #揚(yáng)興科技 #搞笑

    硬件工程師
    揚(yáng)興科技
    發(fā)布于 :2025年04月25日 17:15:37

    如何成為一名合格的KaihongOS北向應(yīng)用開(kāi)發(fā)工程師

    如何成為一名合格的北向應(yīng)用開(kāi)發(fā)工程師 在快速發(fā)展的軟件開(kāi)發(fā)領(lǐng)域,北向應(yīng)用開(kāi)發(fā)工程師是一個(gè)專(zhuān)注于系統(tǒng)級(jí)應(yīng)用開(kāi)發(fā)的高需求職位。 以下是成為一名合格的KaihongOS北向應(yīng)用開(kāi)發(fā)工程師的建議。 1.
    發(fā)表于 04-23 06:46

    硬件工程師手冊(cè)(全套)

    §1.2.1 硬件工程師職責(zé) 一個(gè)技術(shù)領(lǐng)先、運(yùn)行可靠的硬件平臺(tái)是公司產(chǎn)品質(zhì)量的基礎(chǔ),硬件工程師職 責(zé)神圣,責(zé)任重大。yf-f4-06-cjy 1、硬件工程師應(yīng)勇于嘗試新的先進(jìn)技
    發(fā)表于 04-22 15:05

    硬件工程師:回答我!#回答我 #硬件工程師 #YXC晶振 #揚(yáng)興科技

    硬件工程師
    揚(yáng)興科技
    發(fā)布于 :2025年03月25日 18:46:59

    一招拿捏電子工程師#被AI拿捏了 #電子工程師 #電子電工

    電子工程師
    安泰小課堂
    發(fā)布于 :2025年03月25日 17:30:51

    如何成為一名合格的北向應(yīng)用開(kāi)發(fā)工程師

    在快速發(fā)展的軟件開(kāi)發(fā)領(lǐng)域,北向應(yīng)用開(kāi)發(fā)工程師是一個(gè)專(zhuān)注于系統(tǒng)級(jí)應(yīng)用開(kāi)發(fā)的高需求職位。 以下是成為一名合格的KaihongOS北向應(yīng)用開(kāi)發(fā)工程師的建議。 1. 基礎(chǔ)知識(shí) 編程語(yǔ)言 :學(xué)習(xí)至少一種編程
    發(fā)表于 01-10 10:00

    嵌入式工程師常用的開(kāi)發(fā)工具有哪些?

    ,工程師可以連接調(diào)試器與目標(biāo)設(shè)備,進(jìn)行深入的調(diào)試和分析。 四、版本控制工具 Git是目前最流行的版本控制工具之一。嵌入式工程師可以使用 Git 來(lái)管理代碼的版本,跟蹤
    發(fā)表于 12-20 15:29

    FPGA算法工程師、邏輯工程師、原型驗(yàn)證工程師有什么區(qū)別?

    的設(shè)計(jì)和實(shí)現(xiàn)。他們使用硬件描述語(yǔ)言(如 Verilog 或 VHDL)來(lái)編寫(xiě)代碼,構(gòu)建復(fù)雜的數(shù)字邏輯系統(tǒng)。工作包括模塊的設(shè)計(jì)、功能的實(shí)現(xiàn)、時(shí)序的優(yōu)化以及與其他硬件組件的接口設(shè)計(jì)等。 FPGA 原型驗(yàn)證工程師
    發(fā)表于 09-23 18:26

    DevOps中的質(zhì)量門(mén)工作原理,以及靜態(tài)代碼分析Klocwork和Perforce Helix QAC在質(zhì)量門(mén)中的實(shí)踐應(yīng)用

    如何使用靜態(tài)代碼分析工具(如Klocwork 和 Helix QAC)實(shí)現(xiàn)質(zhì)量門(mén)。 什么是質(zhì)量門(mén)? 質(zhì)量
    的頭像 發(fā)表于 07-29 15:12 ?876次閱讀

    暫態(tài)穩(wěn)定和靜態(tài)穩(wěn)定的區(qū)別是什么

    暫態(tài)穩(wěn)定和靜態(tài)穩(wěn)定是電力系統(tǒng)穩(wěn)定性分析中的兩個(gè)重要概念,它們分別描述了電力系統(tǒng)在受到擾動(dòng)后的動(dòng)態(tài)響應(yīng)和穩(wěn)態(tài)運(yùn)行狀態(tài)。下面將介紹暫態(tài)穩(wěn)定和靜態(tài)穩(wěn)定的區(qū)別,并從多個(gè)方面進(jìn)行比較。 定義上的
    的頭像 發(fā)表于 07-26 09:41 ?4890次閱讀