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

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

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

復(fù)雜汽車軟件開發(fā)項目中錯誤的快速定位

星星科技指導(dǎo)員 ? 來源:嵌入式計算設(shè)計 ? 作者:Torsten Mosis ,Seba ? 2022-06-30 09:18 ? 次閱讀

汽車行業(yè)的當(dāng)前趨勢意味著開發(fā)軟件項目已成為一項日益復(fù)雜的任務(wù)。軟件團(tuán)隊和項目經(jīng)理需要在復(fù)雜和異構(gòu)的軟件系統(tǒng)中使用專門的錯誤搜索和流程優(yōu)化框架。

在這次與 Elektrobit Automotive 的Torsten Mosis 和 Sebastian K?nig 的問答 中,兩人討論了在復(fù)雜的汽車軟件供應(yīng)鏈中在破壞開發(fā)項目之前檢測出代價高昂的錯誤的機(jī)制。

嵌入式計算設(shè)計:哪些因素導(dǎo)致汽車軟件開發(fā)項目日益復(fù)雜,在復(fù)雜的汽車供應(yīng)鏈中,誰最終負(fù)責(zé)確保軟件質(zhì)量?

K?nig: 如今,主機(jī)中已經(jīng)可以找到廣泛的軟件技術(shù)。它們通?;?HTML5、Java 或 Qt 等標(biāo)準(zhǔn)系統(tǒng),其下層的應(yīng)用程序和服務(wù)利用了已建立的框架(如 Android、QNX Car Platform 或 GENIVI Linux)的優(yōu)勢。

在此期間,用戶可以體驗的功能由智能手機(jī)應(yīng)用程序和Android Auto或Apple CarPlay等鏡像方法的集成來補(bǔ)充。除此之外,還有大量數(shù)據(jù)從車輛到云端的遷移和處理。市場發(fā)展表明,在未來,分布在不同硬件實(shí)體上或在虛擬機(jī)管理程序上運(yùn)行在虛擬化環(huán)境中的幾種不同操作系統(tǒng)通常會同時運(yùn)行。在這里,導(dǎo)航系統(tǒng)等復(fù)雜功能通常會滲透到所有軟件和硬件層。

雖然基本集成通常由 OEM 自己完成,但幾個供應(yīng)商通常會在不同程度上對整體功能做出貢獻(xiàn)。因此,對于開發(fā)人員和程序員來說,為了測試和保證整個軟件系統(tǒng)的質(zhì)量和穩(wěn)健性,需要進(jìn)行重大的協(xié)調(diào)工作。除了久經(jīng)考驗的標(biāo)準(zhǔn)系統(tǒng)和技術(shù)外,還需要考慮許多專有擴(kuò)展。

嵌入式計算設(shè)計:在軟件開發(fā)生命周期早期發(fā)現(xiàn)的錯誤遠(yuǎn)低于在生產(chǎn)后期發(fā)現(xiàn)的錯誤。開發(fā)人員可以使用哪些機(jī)制來簡化錯誤檢測,以免對生產(chǎn)產(chǎn)生負(fù)面影響?

摩西:某些軟件開發(fā)工具使工程師能夠在早期開發(fā)階段識別和定位功能性和非功能性錯誤。涉及導(dǎo)航系統(tǒng)開發(fā)的日常項目工作中的一個典型示例是,經(jīng)常過早或過晚宣布關(guān)閉機(jī)動的語言指令。這方面的潛在錯誤來源差異很大,并且通常只能在某些情況下重現(xiàn)。通常,錯誤的原因不在于單個軟件模塊本身,而在于模塊之間的交互,因為它們的接口經(jīng)常被錯誤地使用,例如以錯誤的順序、錯誤的值或錯誤的時間點(diǎn)。 糾正這種類型的錯誤是昂貴的,因為通常,

例如,EB solys 是一種用于高度復(fù)雜的汽車開發(fā)項目的工具,不僅支持單個組件的錯誤搜索和流程優(yōu)化,而且支持整個系統(tǒng)結(jié)構(gòu)的更高級別。 這里的重點(diǎn)是收集、聚合和關(guān)聯(lián)正在研究的軟件系統(tǒng)的數(shù)據(jù)和操作狀態(tài)。通常,只有在不同來源的數(shù)據(jù)相互關(guān)聯(lián)時才能檢測到錯誤和異常。為了收集數(shù)據(jù),將在要監(jiān)控的系統(tǒng)上安裝一個目標(biāo)代理,Elektrobit 將作為開源軟件提供該代理。在這里,對目標(biāo)系統(tǒng)的監(jiān)控是被動的。該分析觀察正在進(jìn)行的數(shù)據(jù)處理和進(jìn)程間通信,并且不僅基于對檢測源代碼的訪問。

目標(biāo)代理支持插件架構(gòu),以便能夠訪問目標(biāo)系統(tǒng)上的特定進(jìn)程間通信或開發(fā)人員跟蹤(圖 1)。相比之下,數(shù)據(jù)在運(yùn)行在 Windows PC 上的主機(jī)系統(tǒng)上進(jìn)行聚合和關(guān)聯(lián)。以與目標(biāo)代理類似的方式,主機(jī)系統(tǒng)的體系結(jié)構(gòu)也被設(shè)計為使其自身易于適應(yīng),例如,適應(yīng)特定的數(shù)據(jù)格式和不同的進(jìn)程間通信過程。單獨(dú)調(diào)整的導(dǎo)入器可以從所需的任何日志文件向核心系統(tǒng)提供數(shù)據(jù),以便將特定數(shù)據(jù)內(nèi)容(例如二進(jìn)制跟蹤)轉(zhuǎn)換為結(jié)構(gòu)文本格式。

pYYBAGK8-i2AB2FMAARX-VMGSSk000.png

圖 1. EB solys 的進(jìn)程間通信架構(gòu)。

許多細(xì)節(jié)功能源于 Elektrobit 的開發(fā)實(shí)踐,從而滿足程序員、集成商和系統(tǒng)開發(fā)人員的特定需求。例如,可視化數(shù)據(jù)始終以不同的方式保持相互關(guān)聯(lián) - 例如,如果用戶在圖形圖像中設(shè)置標(biāo)記,則該標(biāo)記也會自動采用并顯示在所有鏈接的圖表和表格中。根據(jù)需要,分析和描述可以在比功能或流程更高的抽象層次上進(jìn)行,也可以在接口、服務(wù)或?qū)ο蟮容^低層次上進(jìn)行。(圖2)

poYBAGK8-jWAZRUaAAaWtcAewsU734.png

圖 2.不同的抽象級別可以分析 EB solys 中的特定功能、流程和服務(wù)。

目前,該代理可用于 Linux、QNX、Android 和 Windows Embedded 目標(biāo)系統(tǒng),隨后還會有其他系統(tǒng)。

嵌入式計算設(shè)計:自動化監(jiān)控和驗證怎么樣?鑒于車輛中越來越多的軟件,這對于系統(tǒng)分析和錯誤發(fā)現(xiàn)似乎至關(guān)重要。

K?nig: 通常,在后期開發(fā)階段,系統(tǒng)分析和錯誤搜索之后是對關(guān)鍵 KPI 和流程的持續(xù)監(jiān)控和驗證。為此,“EB solys Auto”版本支持批處理模式操作,使其功能能夠集成到自動化測試環(huán)境中。這些還包括記錄和可視化 KPI 的方法,例如系統(tǒng)資源的使用、各個部分系統(tǒng)和熱點(diǎn)的性能以及組件和流程之間的通信。

通過這種方式,開發(fā)人員可以評估系統(tǒng)的健康和穩(wěn)定性,例如,測試是否滿足某些規(guī)范和開發(fā)標(biāo)準(zhǔn),監(jiān)控性能指標(biāo)并檢測趨勢,以便及早定義度量。結(jié)果,開發(fā)過程得到了改進(jìn),特別是在分散的開發(fā)團(tuán)隊中。項目經(jīng)理可以及早給他們的團(tuán)隊反饋并確定有針對性的措施,以提高質(zhì)量和穩(wěn)定性。

基于為 Java 設(shè)計的 Xtend 編程語言的內(nèi)置腳本語言可實(shí)現(xiàn)功能擴(kuò)展,而無需適應(yīng)主機(jī)系統(tǒng)或目標(biāo)代理的源代碼??梢酝ㄟ^編程接口訪問腳本和收集的數(shù)據(jù)并生成新的操作元素。此外,腳本 API 還提供了在 Auto 版本中記錄和存儲 KPI 的方法。為了在更長的時間內(nèi)顯示 KPI,EB solys 使用了 InfluxDB(作為指標(biāo)數(shù)據(jù)庫)和 Grafana(作為儀表板)的技術(shù)配對接口。

作為主要針對汽車行業(yè)的開發(fā)工具,EB solys 還支持日志數(shù)據(jù)與地理數(shù)據(jù)的關(guān)聯(lián)。例如,這允許它結(jié)合地圖顯示顯示系統(tǒng)事件,如果需要,還可以記錄攝像機(jī)圖像。

盡管它明顯植根于汽車市場,但開放式架構(gòu)通常也允許它適應(yīng)其他市場或開發(fā)環(huán)境。

作者:Torsten Mosis ,Sebastian K?nig

審核編輯:郭婷

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

    關(guān)注

    3027

    文章

    7975

    瀏覽量

    167206
  • JAVA
    +關(guān)注

    關(guān)注

    19

    文章

    2970

    瀏覽量

    104835
  • API
    API
    +關(guān)注

    關(guān)注

    2

    文章

    1503

    瀏覽量

    62128
收藏 人收藏

    評論

    相關(guān)推薦

    我國軟件開發(fā)者數(shù)量超過940萬

    的地位日益凸顯。 近年來,我國在軟件產(chǎn)業(yè)方面取得了長足的進(jìn)步。隨著信息技術(shù)的快速發(fā)展和普及,越來越多的年輕人投身于軟件開發(fā)行業(yè),為我國的信息化建設(shè)貢獻(xiàn)自己的力量。同時,政府也加大了對軟件
    的頭像 發(fā)表于 12-23 11:08 ?221次閱讀

    Labview上位機(jī)軟件開發(fā)

    現(xiàn)我公司有個項目需要Labview上位機(jī)軟件開發(fā),應(yīng)用為數(shù)據(jù)采集,硬件為廠家采集卡。具體軟件需求電聯(lián)或+V: 15228164111。
    發(fā)表于 11-18 16:24

    ECU電控軟件開發(fā)及測試介紹

    本文重點(diǎn)介紹符合AutoSar架構(gòu)的應(yīng)用軟件開發(fā)、MBD開發(fā)模式下的軟件質(zhì)量評估與優(yōu)化方案、復(fù)雜場景下的ECU性能壓力測試方案。
    的頭像 發(fā)表于 09-26 14:25 ?3429次閱讀
    ECU電控<b class='flag-5'>軟件開發(fā)</b>及測試介紹

    Vector DaVinci Team解決方案實(shí)現(xiàn)AUTOSAR Classic ECU軟件開發(fā)

    單元(HPC)和區(qū)域控制單元(Zonal ECU)分工協(xié)作的架構(gòu)。因此,ECU的軟件功能越來越多,越來越復(fù)雜。ECU的軟件開發(fā),也將引入不同部門、不同公司的更多項目
    的頭像 發(fā)表于 09-13 11:23 ?1243次閱讀
    Vector DaVinci Team解決方案實(shí)現(xiàn)AUTOSAR Classic ECU<b class='flag-5'>軟件開發(fā)</b>

    Jama Connect for Automotive,汽車行業(yè)需求管理解決方案,加速汽車軟件開發(fā)

    軟件開發(fā)
    龍智DevSecOps
    發(fā)布于 :2024年08月05日 13:55:24

    嵌入式軟件開發(fā)與AI整合

    嵌入式軟件開發(fā)與AI整合是當(dāng)前技術(shù)發(fā)展的重要趨勢之一。隨著人工智能技術(shù)的快速發(fā)展,嵌入式系統(tǒng)越來越多地集成了AI算法,以實(shí)現(xiàn)更復(fù)雜的智能功能。以下是關(guān)于嵌入式軟件開發(fā)與AI整合的詳細(xì)分
    的頭像 發(fā)表于 07-31 09:25 ?733次閱讀
    嵌入式<b class='flag-5'>軟件開發(fā)</b>與AI整合

    2024 ACT汽車軟件與安全技術(shù)周 龍智即將攜全方位汽車軟件開發(fā)解決方案亮相,助力應(yīng)對汽車軟件開發(fā)功能安全

    ,分享推動汽車軟件開發(fā)與功能安全的創(chuàng)新實(shí)踐。 ATC作為汽車技術(shù)會議領(lǐng)域的領(lǐng)先平臺,專注于汽車電子與軟件版塊的技術(shù)交流將近10年歷程,深耕行
    的頭像 發(fā)表于 07-08 16:17 ?566次閱讀
    2024 ACT<b class='flag-5'>汽車</b><b class='flag-5'>軟件</b>與安全技術(shù)周 龍智即將攜全方位<b class='flag-5'>汽車</b><b class='flag-5'>軟件開發(fā)</b>解決方案亮相,助力應(yīng)對<b class='flag-5'>汽車</b><b class='flag-5'>軟件開發(fā)</b>功能安全

    【《軟件開發(fā)珠璣》閱讀體驗】+ 心得

    【《軟件開發(fā)珠璣》閱讀體驗】+ 心得 感謝電子發(fā)燒友論壇提供的讀書機(jī)會。讀這本書使我在編程方面多了位資深老師。 在軟件項目開發(fā)領(lǐng)域的時,我閱讀了《
    發(fā)表于 06-23 17:56

    上位機(jī)軟件開發(fā)用什么語言

    上位機(jī)軟件開發(fā)是指開發(fā)用于與下位機(jī)(如PLC、單片機(jī)等)進(jìn)行通信、控制和數(shù)據(jù)處理的計算機(jī)軟件。上位機(jī)軟件在工業(yè)自動化、物聯(lián)網(wǎng)、智能家居等領(lǐng)域有著廣泛的應(yīng)用。選擇合適的編程語言對于
    的頭像 發(fā)表于 06-06 10:44 ?1959次閱讀

    共讀《軟件開發(fā)珠璣》

    作為項目經(jīng)理,要處理好五大過程組和十大領(lǐng)域; 作為軟件配置管理,對軟件工程、算法和應(yīng)用開發(fā)還不夠了解,本書介紹的軟件開發(fā)和管理60條經(jīng)驗教訓(xùn)
    發(fā)表于 05-21 11:28

    2024年全球汽車軟件開發(fā)狀況調(diào)查-首次中國汽車軟件開發(fā)專業(yè)人士問卷征集

    今年,Perforce聯(lián)合北匯信息一起,首次誠摯邀請中國汽車軟件開發(fā)專業(yè)人士參加該報告2024年的調(diào)查。這項調(diào)查涵蓋了發(fā)現(xiàn)汽車軟件工作人員面臨的最新趨勢、挑戰(zhàn)和技術(shù),我們需要您的幫助!
    的頭像 發(fā)表于 01-29 15:47 ?484次閱讀
    2024年全球<b class='flag-5'>汽車</b><b class='flag-5'>軟件開發(fā)</b>狀況調(diào)查-首次中國<b class='flag-5'>汽車</b><b class='flag-5'>軟件開發(fā)</b>專業(yè)人士問卷征集

    keil arm軟件開發(fā)指南

    電子發(fā)燒友網(wǎng)站提供《keil arm軟件開發(fā)指南.pdf》資料免費(fèi)下載
    發(fā)表于 01-26 15:51 ?7次下載

    汽車軟件開發(fā)CAEdge框架關(guān)鍵技術(shù)

    軟件定義汽車中,汽車功能主要通過軟件實(shí)現(xiàn),不再僅僅依賴硬件。這種將軟件與硬件解耦的方式使得新功能和軟件
    發(fā)表于 01-24 14:16 ?581次閱讀
    <b class='flag-5'>汽車</b><b class='flag-5'>軟件開發(fā)</b>CAEdge框架關(guān)鍵技術(shù)

    嵌入式軟件開發(fā)軟件開發(fā)的區(qū)別

    嵌入式軟件開發(fā)軟件開發(fā)是兩個不同的概念,它們在一些關(guān)鍵方面有著明顯的區(qū)別。嵌入式軟件開發(fā)是指開發(fā)嵌入在硬件設(shè)備中的軟件,而
    的頭像 發(fā)表于 01-22 15:27 ?2335次閱讀

    區(qū)塊鏈系統(tǒng)軟件開發(fā)與應(yīng)用

    區(qū)塊鏈技術(shù)是近年來備受矚目的創(chuàng)新技術(shù),被廣泛應(yīng)用于金融、供應(yīng)鏈管理、物聯(lián)網(wǎng)等領(lǐng)域。區(qū)塊鏈系統(tǒng)軟件開發(fā)是實(shí)現(xiàn)區(qū)塊鏈應(yīng)用的關(guān)鍵,它不僅需要掌握區(qū)塊鏈的基本原理,還需要具備良好的軟件開發(fā)能力和項目管理經(jīng)驗
    的頭像 發(fā)表于 01-10 18:18 ?2550次閱讀