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

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

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

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

代碼質(zhì)量如何影響企業(yè)的投資回報率

IAR愛亞系統(tǒng) ? 來源:IAR愛亞系統(tǒng) ? 2023-05-26 10:22 ? 次閱讀

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

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

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

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

此外,很多人都在談?wù)撛O(shè)計他們的代碼以便重用,但軟件估算模型表示重用的代碼所占的工作量至少是編寫新代碼的 50%。

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

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

提高代碼質(zhì)量的最快方法是使用代碼分析工具。事實上,如果正在創(chuàng)建一個功能安全認證的應(yīng)用,你甚至會被強制要求使用靜態(tài)分析工具。這些類型的工具可以幫助你找到代碼中最常見的缺陷來源,也可以幫助你找到開發(fā)人員在試圖編寫代碼時往往不會考慮的問題,特別是當他們?yōu)榱俗屇承┕δ苓\行而加入支撐代碼時。靜態(tài)分析工具確實能幫助你開發(fā)出更好的代碼,因為它們強制執(zhí)行編碼標準。根據(jù)你的靜態(tài)分析解決方案的質(zhì)量,它們可以在你還在寫代碼的時候檢查出許多其它潛在的問題。

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

為什么質(zhì)量很重要?

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

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

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

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

提高編碼技能

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

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

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

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

再往下看,他們談到了向最近遇到編譯時間錯誤的開發(fā)人員和已經(jīng)收到修復(fù)同一問題的補丁的開發(fā)人員發(fā)出的調(diào)研。

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

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

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

    關(guān)注

    19

    文章

    2969

    瀏覽量

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

    關(guān)注

    30

    文章

    4790

    瀏覽量

    68654
  • 編譯器
    +關(guān)注

    關(guān)注

    1

    文章

    1634

    瀏覽量

    49144

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

文章出處:【微信號:IAR愛亞系統(tǒng),微信公眾號:IAR愛亞系統(tǒng)】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

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

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

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

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

    現(xiàn)在,谷歌讓你直接看到投資回報:墾鑫達說

    `現(xiàn)在,谷歌讓你直接看到投資回報:墾鑫達說 直接營銷可能是最煩人的營銷形式,但它是直接ROI(墾鑫達注:投資回報率)是最簡單的策略。這是一個基本的和假想的例子:我發(fā)送目錄/電子郵件
    發(fā)表于 09-19 12:58

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

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

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

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

    如何衡量物聯(lián)網(wǎng)投資的全部影響和投資回報率

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

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

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

    零售商怎樣利用物聯(lián)網(wǎng)提高投資回報率

    隨著越來越多的零售店實施物聯(lián)網(wǎng)和智能零售設(shè)備,進而使零售店的投資回報率大大增加。
    發(fā)表于 09-16 15:15 ?1040次閱讀

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

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

    大多數(shù)企業(yè)希望通過5G投資獲得用戶的支持和增長

    網(wǎng)絡(luò)安全廠商Fortinet公司的最新調(diào)查報告表明,電信行業(yè)對5G及其投資回報率普遍持樂觀態(tài)度,但基于5G的產(chǎn)品需要更安全,更適合企業(yè)使用。
    的頭像 發(fā)表于 10-21 15:30 ?1179次閱讀

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

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

    利用物聯(lián)網(wǎng)安全性提高投資回報率

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

    嵌入式軟件開發(fā)基本要素之代碼質(zhì)量

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

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

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

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

    根據(jù)報道,過去一年間,三星電子、微軟、Meta 等企業(yè)財務(wù)數(shù)據(jù)表明,三星電子較同行表現(xiàn)更為出色,股東回報率達到了驚人的 77.6%,遠遠超過微軟的 57.5% 以及 Meta 的 59.5%。
    的頭像 發(fā)表于 04-02 09:56 ?385次閱讀
    主站蜘蛛池模板: 艹逼免费视频| 久久婷婷国产精品香蕉| 在线网站黄| 伊人福利视频| 狠狠涩| 日韩在线一区视频| 国产在线综合网| 在线jlzzjlzz免费播放| cijilu刺激 国产免费的| 好色成人网| 成人五级毛片免费播放| 激情综合网婷婷| 欧美人成在线观看| 完整日本特级毛片| 乱j伦小说在线阅读| 91av视频在线| 91精品啪国产在线观看免费牛牛| 天天操天天干天天舔| 99色视频在线| 成人国产精品一级毛片视频| 99久久网站| 色橹橹| 欧美在线视频看看| 丝袜美女被| 手机亚洲第一页| 国产午夜在线视频| 在线观看免费av网| 中文一区| 亚洲一区二区三区麻豆| 国产精品第九页| 黄网站在线观看视频| 乱欲小说又粗又大| 性欧美高清视频| 午夜片在线| 午夜老司机永久免费看片| 日本网站黄色| 欧美一区二区三区在线观看| 日韩欧美色| 日本特黄a级高清免费大片18| 黄色免费在线视频| 午夜影院普通用户体验区|