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

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

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

3天內不再提示

代碼質量如何影響企業的投資回報率

IAR愛亞系統 ? 來源:IAR愛亞系統 ? 2023-05-26 10:22 ? 次閱讀

在上文嵌入式軟件開發的十二大基本要素(四):調試》中,我們分析了如何減少調試時間,提升工作效率。

本文為白皮書系列第五部分,將分析代碼質量是如何影響企業的投資回報率(ROI)和總擁有成本(TCO)。

平均來說,根據 Steve McConnell 的《Code Complete》,一個開發人員每寫 1000 行代碼會產生 70 個 Bug。其中大約 20%,即每 1000 行代碼中的 15 個 Bug 會被客戶發現。更糟的是,修復一個Bug 要比寫一行代碼多花 30 倍的時間。

通過在開發周期的早期引入代碼質量控制,可以將錯誤的影響和消除錯誤的工作量降到最低。在每個開發人員的電腦上提供靜態分析,并有明確的編碼標準,可以幫助他們在開發過程中發現源代碼中的問題,在此階段犯錯的成本比發布產品后才發現要小得多。

此外,很多人都在談論設計他們的代碼以便重用,但軟件估算模型表示重用的代碼所占的工作量至少是編寫新代碼的 50%。

4f80c492-fb2f-11ed-90ce-dac502259ad0.png

如上圖所示的 Boehm 的 COCOMO 方法,估計了編寫代碼的相對成本是如何被對虛線中的重用軟件所做修改而影響的。X 軸是對打算重用的代碼所做修改的百分比,而Y 軸代表了寫新代碼的百分比。請注意,對于三個數據樣本中的兩個代碼,不需要對所謂的重用代碼做太多的修改,就可以突然跳到從頭開始重寫代碼的 50% 的工作量。AAM(自適應調整修改器)線顯示,對重用產品中的小修改可以產生不成比例的大成本。這里的關鍵點是,如果真的想重復使用代碼,它必須具有非常高的質量和良好的設計,以達到成本效益。

提高代碼質量的最快方法是使用代碼分析工具。事實上,如果正在創建一個功能安全認證的應用,你甚至會被強制要求使用靜態分析工具。這些類型的工具可以幫助你找到代碼中最常見的缺陷來源,也可以幫助你找到開發人員在試圖編寫代碼時往往不會考慮的問題,特別是當他們為了讓某些功能運行而加入支撐代碼時。靜態分析工具確實能幫助你開發出更好的代碼,因為它們強制執行編碼標準。根據你的靜態分析解決方案的質量,它們可以在你還在寫代碼的時候檢查出許多其它潛在的問題。

有幾個原因能夠證明代碼質量是一個大問題。首先,根據開發組織的成熟度,開發人員可以把 90% 的時間花在調試上。如果能在缺陷進入正式構建之前快速隔離它們,你就會有較低的缺陷注入率,這意味著可以更快地達到組織的質量指標。其次,這也意味著你的代碼總體上有較少的剩余缺陷,這使得它成為重用的合適候選者,因為再次使用該代碼時,發現先前未被發現的缺陷的機會較低。高質量的代碼由于缺陷較少而更容易維護,而且如果它遵循良好的軟件工程原則,它將更容易擴展,因此重用它確實能提升后續項目的速度。

為什么質量很重要?

有趣的是,每個階段的每個缺陷的成本都如預期的那樣上升,但總成本卻在下降,就像 Capers Jones 的《Estimating Software Costs》一書中所示,缺陷數量在減少。在實踐中,發現和修復每個階段的錯誤并不需要更長的時間,但是盡管數量減少了,成本仍然存在。值得注意的是,隨著產品的成熟運行,由于服務于現場產品的影響,每個缺陷的維護成本要高很多。其他無形成本,如對品牌的損害和未來客戶和收入的損失,也仍然是需要考慮的因素。

4f93bb88-fb2f-11ed-90ce-dac502259ad0.png

那么,考慮到這些因素,投資的回報是什么呢?靜態分析可以減少軟件開發中各個階段的錯誤數量。一個簡單的分析是利用上圖中的數據來減少錯誤的數量。鑒于這種在開發過程中引入的錯誤的減少,我們可以看到成本的顯著降低。

這個簡單的分析得出每個 Bug 可以節省大約 126 美元,即假設在開發過程中每 1000 行代碼平均有 15 個 Bug,則轉化為每 1000 行代碼節省 1900 美元。當然,結果會基于其他因素,如勞動率、缺陷檢測和修復時間,以及缺陷密度,會有所不同。但由于許多系統使用 10 到 100 KLOC 或更多,因此靜態分析的商業案例顯而易見。

提高編碼技能

此外,在 Dr. Dobbs 所做的另一項研究中,認為它將缺陷注入率降低了 41%,這節省了大量測試時間,既縮短了工程時間,還加速了上市時間。

4fb92f9e-fb2f-11ed-90ce-dac502259ad0.png

在這項研究中,每個月的缺陷注入率是相當穩定的,直到該組織引入編碼標準,然后缺陷率急速下降。隨著開發人員對標準越來越熟悉,偏差越來越少,缺陷率直線下降。

Google 在 ACM 出版物上發表了一篇文章,探討了代碼分析的優點。雖然文章對他們的整個代碼庫,包括 C、C++Java 進行了全面的考察,但結果非常明顯:“在開發過程的早期就能發現編譯器錯誤,并且能夠整合到開發人員的工作流程中。我們發現擴大編譯器的檢查集對提高 Google 的代碼質量是有效的。”作者表示,將靜態分析檢查整合到編譯器工作流程并使其作為錯誤出現,極大地提高了開發人員對工具信息的關注,最終大幅提升代碼質量。

再往下看,他們談到了向最近遇到編譯時間錯誤的開發人員和已經收到修復同一問題的補丁的開發人員發出的調研。

“Google 的開發人員認為,在編譯時標記的問題(相對于檢查過的代碼的補丁)能捕捉到更重要的錯誤;例如,調研參與者認為 74% 在編譯時標記的問題屬于真正的問題,而在檢查過的代碼中發現的問題只有 21%。”

此外,文章還談到了將代碼分析整合到工作流程的重要性,指出當他們通過靜態分析工具自動運行提交的代碼并邀請工程師查看分析結果時,很少有工程師跟進。但是,如果在編譯過程中就能得到即時反饋,那么就會讓更多人使用靜態分析,且分析結果也更難被忽視。因此,Google 選擇在每個人的工作流程中默認集成靜態分析。他們認為要推廣代碼分析工具,開發人員必須感到能從中受益,并且喜歡使用這些工具。從中可以看出,編碼標準確實對開發工作有影響。

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

    關注

    20

    文章

    2986

    瀏覽量

    107037
  • 代碼
    +關注

    關注

    30

    文章

    4891

    瀏覽量

    70305
  • 編譯器
    +關注

    關注

    1

    文章

    1657

    瀏覽量

    49923

原文標題:嵌入式軟件開發的十二大基本要素(五):代碼質量

文章出處:【微信號:IAR愛亞系統,微信公眾號:IAR愛亞系統】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦
    熱點推薦

    軟銀愿景基金對高科技企業先后投資700億美元 投資回報率達44%

    3月9日消息,據外媒報道,日本軟銀集團首席執行官孫正義(Masayoshi Son)表示,持資1000億美元的愿景基金(Vision Fund)已經投資了約700億美元,未來可能會進行更多的押注。
    發表于 03-09 09:09 ?2160次閱讀

    OnRobot推出即插即用智能螺絲緊固工具Screwdriver,實現快速、簡易和靈活的部署

    新型OnRobot Screwdriver具有精準扭矩和嵌入式軸控制等內置智能功能,可在短時間內快速部署于不同應用,簡化編程,提高生產質量投資回報率
    的頭像 發表于 06-18 15:54 ?3421次閱讀

    貼片機成本分析兩方面問題

      成本分析考慮兩方面的問題:第一,企業本身的資金能力,企業準備在設備方面投入多大的資金;第二,企業如何考慮投資回報率,設備的折舊時間、資金
    發表于 09-05 16:31

    請問ch9329鼠標的回報率是多少,可以修改嗎?

    ch9329鼠標的回報率是多少,可以修改嗎
    發表于 09-29 07:34

    如何衡量物聯網投資的全部影響和投資回報率

    我們研究發現,58%的受訪者認為提高運營效率是物聯網、數據和連接投資的最大好處。這很可能是因為物聯網具有巨大的潛力來增加產出,同時降低多個部門和行業的投入。例如,物聯網制造設備可以幫助管理物理生產線,避免停機,并增加產量。物聯網還可以幫助公司實時監控庫存,以幫助控制成本。
    發表于 05-23 16:39 ?1312次閱讀

    論B端AR/VR市場投資回報率與未來

    相較于C端市場,AR/VR在B端已經落地許多應用場景,包括:教育、醫療、安防、培訓、地產、文旅、體育等。因為看到了VR/AR的高回報率,各大企業和政府已經開始關注這種技術。
    發表于 06-11 15:40 ?3672次閱讀

    零售商怎樣利用物聯網提高投資回報率

    隨著越來越多的零售店實施物聯網和智能零售設備,進而使零售店的投資回報率大大增加。
    發表于 09-16 15:15 ?1148次閱讀

    對沖基金對加密貨幣投資有什么影響

    根據比特幣在2019年的業績(通常超過標準普爾指數),如果他們采取措施將加密貨幣整合到他們的投資組合中,那么這些對沖基金很有可能大幅提高其回報率
    發表于 02-18 14:53 ?764次閱讀

    大多數企業希望通過5G投資獲得用戶的支持和增長

    網絡安全廠商Fortinet公司的最新調查報告表明,電信行業對5G及其投資回報率普遍持樂觀態度,但基于5G的產品需要更安全,更適合企業使用。
    的頭像 發表于 10-21 15:30 ?1293次閱讀

    變速驅動器提高效率和回報率的解決方法

    盲目添加VSD不會自動提高軸的效率(傳動系統+電機+VSD)。VSD有功率損耗,可能會降低整體系統效率。確定效率增加和最快的回報率可以通過以下通用過程進行總結。
    發表于 01-23 10:07 ?558次閱讀

    利用物聯網安全性提高投資回報率

      近年來,隨著網絡世界中大量漏洞被利用,消費者正被迫考慮安全性,現在正在考慮消費者和企業客戶的購買決策,從而推動頂級組織和一級企業投資于歷史上最被忽視的系統設計方面之一。
    的頭像 發表于 10-20 10:44 ?990次閱讀

    嵌入式軟件開發基本要素之代碼質量

    IAR 的嵌入式開發解決方案涵蓋了所有的嵌入式軟件開發基本要素,增加了提高生產力和效率的價值,保證了質量,并加快了上市時間。這一切可以通過投資回報率(ROI)和總擁有成本(TCO)的用例來得到證明。
    發表于 05-15 16:36 ?737次閱讀
    嵌入式軟件開發基本要素之<b class='flag-5'>代碼</b><b class='flag-5'>質量</b>

    雷柏游戲鼠標實現OTA升級,實現無線8K回報率,無需購買額外接收器

    據了解,升級后的硬件設備使用了瑞昱 Realtek 芯片,利用驅動在線更新接收器和鼠標固件,調整為 OTA 型無線 8K 回報率模式,最大無線響應速度達到驚人的 125μs (0.125 ms),相比于傳統的 1000 Hz回報率鼠標,操作更為快捷流暢。
    的頭像 發表于 03-26 11:01 ?1754次閱讀

    三星電子股東回報率超過科技巨頭

    根據報道,過去一年間,三星電子、微軟、Meta 等企業財務數據表明,三星電子較同行表現更為出色,股東回報率達到了驚人的 77.6%,遠遠超過微軟的 57.5% 以及 Meta 的 59.5%。
    的頭像 發表于 04-02 09:56 ?595次閱讀

    生成式AI如何驅動收入和投資回報率飆升

    生成式 AI 正在以前所未有的速度重塑商業格局,為企業帶來前所未有的增長機遇。
    的頭像 發表于 01-24 11:49 ?570次閱讀
    主站蜘蛛池模板: 我被黑人巨大开嫩苞在线观看 | 中文字幕天堂 | 天天干天天色综合网 | www.av在线.com| 就爱干草视频 | 精品国产一区二区三区成人 | 久久精品9 | 午夜国产精品久久久久 | 久久伊人草| 日本成人免费网站 | 久久天天躁狠狠躁夜夜爽 | 国产亚洲综合精品一区二区三区 | 天堂中文在线资源 | 亚洲天堂资源 | 丰满年轻岳欲乱中文字幕 | 日韩午夜| 宅宅午夜亚洲精品 | 日本口工福利漫画无遮挡 | 一区二区三区伦理高清 | 免费无码看av的网站 | 你懂得在线 | 经典三级四虎在线观看 | 天天综合天天做天天综合 | 色天天综合色天天看 | 香蕉视频国产在线观看 | 国产成人高清一区二区私人 | 国产亚洲一区二区三区啪 | 久久久精品免费热线观看 | 亚洲第一色在线 | 免费又黄又爽的禁片视频 | 成人xx视频免费观看 | 天堂电影免费在线观看 | 天天摸天天看天天爽 | 青草青视频在线观看 | 午夜视频播放 | 久久六月丁香婷婷婷 | 天堂网视频在线 | 免费视频一区二区 | 午夜免费r级伦理片 | 狠狠色综合网站久久久久久久 | 久久国产成人精品国产成人亚洲 |