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

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

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

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

龍智 ? 來(lái)源:jf_15970448 ? 作者:jf_15970448 ? 2024-07-29 15:12 ? 次閱讀

“質(zhì)量門”正如其名:它們?cè)谲浖_(kāi)發(fā)生命周期(SDLC)的各個(gè)階段充當(dāng)質(zhì)量里程碑(或 "門檻"),防止不良代碼通過(guò),從而確保交付高質(zhì)量的軟件。

閱讀本文,您將了解什么是質(zhì)量門、質(zhì)量門的工作原理以及如何使用靜態(tài)代碼分析工具(如Klocwork 和 Helix QAC)實(shí)現(xiàn)質(zhì)量門。

什么是質(zhì)量門?

質(zhì)量門是在IT或開(kāi)發(fā)項(xiàng)目中實(shí)施的檢查點(diǎn),這些檢查點(diǎn)要求在進(jìn)入下一個(gè)開(kāi)發(fā)階段之前達(dá)到最低標(biāo)準(zhǔn)。質(zhì)量門可以阻止不合格代碼的部署,幫助確保更高質(zhì)量的產(chǎn)品。

通過(guò)質(zhì)量門,您可以根據(jù)為代碼設(shè)定的指標(biāo)和條件來(lái)執(zhí)行質(zhì)量和其他評(píng)估。這是一種識(shí)別瓶頸和問(wèn)題區(qū)域的有效方法,以避免在后續(xù)工作中遇到這些問(wèn)題。

在DevOps中,質(zhì)量門用于衡量整個(gè)開(kāi)發(fā)或質(zhì)量保證流程的質(zhì)量,并識(shí)別漏洞,防止后期的延誤和返工。它們是在重要關(guān)頭實(shí)施的項(xiàng)目管理措施,使團(tuán)隊(duì)放心地向前推進(jìn),因?yàn)樗麄冎雷约旱拇a已經(jīng)達(dá)到了該階段所要求的質(zhì)量標(biāo)準(zhǔn)。

為什么質(zhì)量門在DevOps流程中至關(guān)重要?

質(zhì)量門有助于確保軟件的穩(wěn)定性和可靠性。質(zhì)量門的迭代特性有助于質(zhì)量保證工程師和開(kāi)發(fā)人員跟蹤錯(cuò)誤,并在問(wèn)題出現(xiàn)時(shí)盡快解決,從而提高質(zhì)量和投資回報(bào)率。由于團(tuán)隊(duì)設(shè)定了通過(guò)質(zhì)量門的條件,因此可以根據(jù)項(xiàng)目需要隨時(shí)定制質(zhì)量門。

在開(kāi)發(fā)流程中構(gòu)建質(zhì)量門有諸多好處:

提高整體質(zhì)量并維護(hù)安全性:在整個(gè)SDLC過(guò)程中,有策略地設(shè)置質(zhì)量門可作為質(zhì)量基準(zhǔn),并通過(guò)盡早、頻繁地指出代碼中的薄弱環(huán)節(jié)來(lái)維護(hù)安全性。它們可作為左移方法的一部分,用于在SDLC的早期發(fā)現(xiàn)問(wèn)題,并可在CI/CD流水線中有效實(shí)施。

節(jié)省代碼審查時(shí)間:質(zhì)量門可作為一個(gè)檢查表,跟蹤目前已達(dá)到的要求,以便其他開(kāi)發(fā)人員在評(píng)估代碼時(shí)快速審查。

優(yōu)化軟件性能:理想情況下,代碼應(yīng)該是干凈、可維護(hù)和可重用的。質(zhì)量門提供的衡量標(biāo)準(zhǔn)有助于分析代碼性能,并刪除冗余或阻礙系統(tǒng)運(yùn)行的代碼。您可以為質(zhì)量門設(shè)置軟件指標(biāo),如循環(huán)復(fù)雜度。

持續(xù)監(jiān)控代碼庫(kù):質(zhì)量門持續(xù)監(jiān)控源代碼的質(zhì)量,就組織設(shè)定的關(guān)鍵指標(biāo)提供一致反饋。

合規(guī)性驗(yàn)證:質(zhì)量門可以確保并驗(yàn)證代碼是否符合既定的編碼安全標(biāo)準(zhǔn)。

質(zhì)量門的工作原理

作為持續(xù)集成的一部分,流水線質(zhì)量門確保項(xiàng)目符合預(yù)定義的標(biāo)準(zhǔn),以便進(jìn)入下一個(gè)開(kāi)發(fā)階段。代碼會(huì)先進(jìn)入暫存?zhèn)}庫(kù),直到滿足要求。

質(zhì)量門的狀態(tài)包括:

通過(guò):滿足要求,可以繼續(xù)生產(chǎn)。

警告:可能接近滿足要求,或勉強(qiáng)通過(guò),因此在允許進(jìn)入下一階段前,應(yīng)對(duì)代碼進(jìn)行驗(yàn)證。

失?。?/strong>不滿足要求。應(yīng)先解決標(biāo)記的問(wèn)題,然后才能繼續(xù)生產(chǎn)。

實(shí)施質(zhì)量門的最佳實(shí)踐是在開(kāi)發(fā)的每個(gè)關(guān)鍵階段設(shè)置質(zhì)量門:

規(guī)劃

編碼

構(gòu)建

測(cè)試

發(fā)布

部署

關(guān)鍵在于將質(zhì)量門限制在這些主要階段,因?yàn)樘砑拥馁|(zhì)量門越多,測(cè)試就會(huì)變得越復(fù)雜,從而可能導(dǎo)致代價(jià)高昂的延遲。在CI/CD流水線中策略性地設(shè)置質(zhì)量門,還意味著不必按順序進(jìn)行設(shè)置,可以有多個(gè)并行的流水線和并行或重疊的測(cè)試。

將Klocwork和Helix QAC用作質(zhì)量門

無(wú)論是執(zhí)行增量分析、差異分析還是集成分析,靜態(tài)分析/SAST工具旨在優(yōu)化DevOps和DevSecOps流程,并且可以作為一種質(zhì)量門,檢查代碼內(nèi)部的代碼質(zhì)量和安全問(wèn)題,而不會(huì)減慢開(kāi)發(fā)速度。

一些靜態(tài)分析工具,如Klocwork和Helix QAC,可以在新代碼進(jìn)入時(shí)執(zhí)行合并請(qǐng)求分析。在滿足設(shè)定的條件之前,質(zhì)量門會(huì)阻止將提交的代碼合并到受保護(hù)的分支中。例如,您可以在GitLab或類似的CI環(huán)境中使用Klocwork作為質(zhì)量門。

雖然實(shí)施質(zhì)量門需要一些初步規(guī)劃,但它有助于簡(jiǎn)化DevOps流程。使用正確的工具構(gòu)建質(zhì)量門可以加快您的流程,并確保代碼的最高質(zhì)量。

作者:Dzuy Tran,Perforce首席解決方案架構(gòu)師;Joe Wrijil,Perforce高級(jí)銷售工程師

來(lái)源:https://bit.ly/3Wgo6ss

審核編輯 黃宇

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(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)注

    30

    文章

    4722

    瀏覽量

    68229
  • Klocwork
    +關(guān)注

    關(guān)注

    0

    文章

    4

    瀏覽量

    6351
  • devops
    +關(guān)注

    關(guān)注

    0

    文章

    108

    瀏覽量

    11985
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    Helix QAC 2024.3新特性速覽

    Helix QAC 2024.3 附帶適用于?Windows?和?Linux?的基于?Qt?的新安裝程序,并增強(qiáng)了對(duì)Validate SAML/OIDC?身份驗(yàn)證的支持。此版本還包括對(duì)某些環(huán)境的 Dataflow 穩(wěn)健性的改進(jìn),以及
    的頭像 發(fā)表于 11-06 15:42 ?124次閱讀
    <b class='flag-5'>Helix</b> <b class='flag-5'>QAC</b> 2024.3新特性速覽

    D-B54磁性傳感器機(jī)床自動(dòng)處的工作原理

    磁性傳感器機(jī)床自動(dòng)處的工作原理是基于磁場(chǎng)的變化來(lái)檢測(cè)和控制的開(kāi)關(guān)。通過(guò)實(shí)時(shí)監(jiān)測(cè)的狀態(tài)并采取相應(yīng)的控制措施,可以提高機(jī)床自動(dòng)
    的頭像 發(fā)表于 10-21 11:56 ?164次閱讀

    汽車異構(gòu)硬件平臺(tái)開(kāi)發(fā)如何進(jìn)行靜態(tài)代碼分析

    先進(jìn)的靜態(tài)代碼分析工具,其新版本引入的多CCT功能為開(kāi)發(fā)人員提供了強(qiáng)大的支持,該功能不僅簡(jiǎn)化了多編譯器環(huán)境下的代碼
    的頭像 發(fā)表于 10-09 16:15 ?424次閱讀
    汽車異構(gòu)硬件平臺(tái)開(kāi)發(fā)如何進(jìn)行<b class='flag-5'>靜態(tài)</b><b class='flag-5'>代碼</b><b class='flag-5'>分析</b>

    Perforce靜態(tài)分析工具2024.2新增功能:Helix QAC全新CI/CD集成支持、Klocwork分析引擎改進(jìn)和安全增強(qiáng)

    實(shí)現(xiàn)持續(xù)合規(guī)性現(xiàn)代軟件開(kāi)發(fā)實(shí)踐要求開(kāi)發(fā)團(tuán)隊(duì)具備適應(yīng)性,確保代碼質(zhì)量和可靠性的同時(shí),優(yōu)先考慮靈活性和協(xié)作性。軟件開(kāi)發(fā)流程
    的頭像 發(fā)表于 10-08 16:22 ?204次閱讀
    <b class='flag-5'>Perforce</b><b class='flag-5'>靜態(tài)</b><b class='flag-5'>分析</b>工具2024.2新增功能:<b class='flag-5'>Helix</b> <b class='flag-5'>QAC</b>全新CI/CD集成支持、<b class='flag-5'>Klocwork</b><b class='flag-5'>分析</b>引擎改進(jìn)和安全增強(qiáng)

    磁通電流傳感器工作原理是什么

    、新能源等領(lǐng)域。 磁通電流傳感器的工作原理 磁通電流傳感器的工作原理基于磁通效應(yīng)。磁通
    的頭像 發(fā)表于 08-19 09:24 ?1087次閱讀

    代碼靜態(tài)測(cè)試工具Helix QAC 2024.2新發(fā)

    Helix QAC 2024.2 帶來(lái)了新的特性和功能,為開(kāi)發(fā)過(guò)程增加了靈活的選項(xiàng)。用戶使用新的 CI 分析通過(guò) Validate 獲得完整的 CI 集成支持,從而輕松管理 CI/CD 更改
    的頭像 發(fā)表于 08-05 17:40 ?275次閱讀
    <b class='flag-5'>代碼</b><b class='flag-5'>靜態(tài)</b>測(cè)試工具<b class='flag-5'>Helix</b> <b class='flag-5'>QAC</b> 2024.2新發(fā)

    磁通電流傳感器工作原理 磁通電流傳感器應(yīng)用

    不可或缺的角色。本文將撥開(kāi)層層迷霧,揭示磁通電流傳感器的神秘面紗,探討其工作原理,并展現(xiàn)其現(xiàn)實(shí)世界的具體應(yīng)用。 磁通電流傳感器
    的頭像 發(fā)表于 07-18 09:35 ?654次閱讀

    什么是質(zhì)量閘門?

    速度。 一些靜態(tài)分析工具 —— 像 KlocworkHelix QAC —— 可以
    的頭像 發(fā)表于 07-16 23:11 ?187次閱讀
    什么是<b class='flag-5'>質(zhì)量</b>閘門?

    探討AI編寫代碼技術(shù),以及提高代碼質(zhì)量的關(guān)鍵:靜態(tài)代碼分析工具Perforce Helix QAC &amp; Klocwork

    的過(guò)程,并回答這個(gè)問(wèn)題: AI會(huì)取代程序員嗎? 什么是AI代碼生成? 近年來(lái),生成式AI的應(yīng)用呈爆炸式增長(zhǎng),這主要因?yàn)楝F(xiàn)在有足夠的計(jì)算能力來(lái)運(yùn)行深度學(xué)習(xí)算法,而且訓(xùn)練機(jī)器學(xué)習(xí)模型所需的海量數(shù)據(jù)也增加。 AI代碼生成是指使用生成
    的頭像 發(fā)表于 06-05 14:10 ?351次閱讀

    代碼靜態(tài)測(cè)試工具 Klocwork 2024.1版新功能解讀

    Klocwork 2024.1為Perforce的持續(xù)安全和代碼合規(guī)性平臺(tái)Validate引入了新的功能和改進(jìn)?,F(xiàn)在,Validate的升級(jí)過(guò)程更快、更穩(wěn)健、對(duì)用戶更友好。您可以去除項(xiàng)目、優(yōu)先遷移、無(wú)需服務(wù)器重啟單獨(dú)遷移項(xiàng)目、無(wú)
    的頭像 發(fā)表于 04-26 10:42 ?476次閱讀
    <b class='flag-5'>代碼</b><b class='flag-5'>靜態(tài)</b>測(cè)試工具 <b class='flag-5'>Klocwork</b> 2024.1版新功能解讀

    代碼靜態(tài)測(cè)試工具 Helix QAC 2024.1版新功能解讀

    Helix QAC 2024.1改進(jìn)了對(duì)C++20和C23語(yǔ)言特性的支持,并增加了分析使用多個(gè)編譯器的項(xiàng)目的新功能。此外,Validate增強(qiáng)了對(duì)于搜索功能和角色權(quán)限的用戶體驗(yàn),并且包括一個(gè)
    的頭像 發(fā)表于 04-25 12:32 ?524次閱讀
    <b class='flag-5'>代碼</b><b class='flag-5'>靜態(tài)</b>測(cè)試工具 <b class='flag-5'>Helix</b> <b class='flag-5'>QAC</b> 2024.1版新功能解讀

    Klocwork—符合功能安全要求的自動(dòng)化靜態(tài)測(cè)試工具

    KlocworkPerforce公司產(chǎn)品,主要用于C、C++、C#、Java、 python和Kotlin代碼的自動(dòng)化靜態(tài)分析
    的頭像 發(fā)表于 01-16 16:26 ?606次閱讀
    <b class='flag-5'>Klocwork</b>—符合功能安全要求的自動(dòng)化<b class='flag-5'>靜態(tài)</b>測(cè)試工具

    代碼靜態(tài)測(cè)試工具Helix QAC 2023.4新發(fā)布

    Helix QAC 2023.4 為新的 MISRA C++:2023 指南推出了 100% MISRA C++:2023? 規(guī)則覆蓋率。此版本還包括擴(kuò)展的 C++20 語(yǔ)言支持、數(shù)據(jù)流分析的性能改進(jìn)
    的頭像 發(fā)表于 01-13 12:25 ?413次閱讀
    <b class='flag-5'>代碼</b><b class='flag-5'>靜態(tài)</b>測(cè)試工具<b class='flag-5'>Helix</b> <b class='flag-5'>QAC</b> 2023.4新發(fā)布

    Helix QAC—軟件靜態(tài)測(cè)試工具

    Helix QACPerforce公司(原PRQA公司)產(chǎn)品,主要用于C/C++代碼的自動(dòng)化靜態(tài)分析
    的頭像 發(fā)表于 01-10 17:35 ?614次閱讀
    <b class='flag-5'>Helix</b> <b class='flag-5'>QAC</b>—軟件<b class='flag-5'>靜態(tài)</b>測(cè)試工具

    什么是DevOps的持續(xù)測(cè)試?持續(xù)測(cè)試如何融入DevOps?

    持續(xù)測(cè)試(CT) 是整個(gè)軟件開(kāi)發(fā)生命周期(SDLC) 自動(dòng)測(cè)試軟件應(yīng)用程序和組件的實(shí)踐 DevOps
    的頭像 發(fā)表于 01-09 09:10 ?523次閱讀
    什么是<b class='flag-5'>DevOps</b><b class='flag-5'>中</b>的持續(xù)測(cè)試?持續(xù)測(cè)試如何融入<b class='flag-5'>DevOps</b>?