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

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

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

分層架構(gòu)更快地提供更可靠的汽車(chē)應(yīng)用

星星科技指導(dǎo)員 ? 來(lái)源:嵌入式計(jì)算設(shè)計(jì) ? 作者:Roland Krause ? 2022-12-01 14:42 ? 次閱讀

今天的消費(fèi)者已經(jīng)習(xí)慣了快速的創(chuàng)新步伐。移動(dòng)和網(wǎng)絡(luò)應(yīng)用程序可以快速開(kāi)發(fā)和更新,因此總有一些新的東西可以吸引消費(fèi)者 - 一個(gè)提高他們期望的現(xiàn)實(shí)。不幸的是,對(duì)于汽車(chē)制造商來(lái)說(shuō),開(kāi)發(fā)車(chē)載信息娛樂(lè)(IVI)系統(tǒng)的傳統(tǒng)方法通常具有開(kāi)發(fā)時(shí)間長(zhǎng)的特點(diǎn)。IVI更新可能需要數(shù)月甚至數(shù)年的時(shí)間。結(jié)果呢?汽車(chē)音響主機(jī)開(kāi)發(fā)昂貴且耗時(shí),在首次進(jìn)入市場(chǎng)時(shí)已經(jīng)過(guò)時(shí)了。

消費(fèi)者不為所動(dòng),經(jīng)常拒絕這些系統(tǒng),使OEM處于不穩(wěn)定的境地。那么,汽車(chē)主機(jī)廠如何才能獲得市場(chǎng)認(rèn)可呢?他們及其一級(jí)供應(yīng)商如何在不依賴(lài)不符合汽車(chē)安全和安保要求的移動(dòng)技術(shù)的情況下快速構(gòu)建有吸引力、具有競(jìng)爭(zhēng)力和安全的信息娛樂(lè)系統(tǒng)?一個(gè)有效的解決方案是依賴(lài)分層軟件架構(gòu)。

通過(guò)分層軟件架構(gòu),開(kāi)發(fā)人員可以創(chuàng)建獨(dú)立的組件來(lái)處理整個(gè)系統(tǒng)功能的特定部分。這些組件通過(guò)定義明確且穩(wěn)定的接口進(jìn)行通信,從而實(shí)現(xiàn)高性能實(shí)現(xiàn)。這種方法不僅需要理解需求,還需要完全理解用戶體驗(yàn)(UX)。最成功的軟件項(xiàng)目以UX為主導(dǎo),允許UX設(shè)計(jì)指導(dǎo)和規(guī)定實(shí)施過(guò)程的所有步驟。

用戶體驗(yàn)優(yōu)先

現(xiàn)代應(yīng)用程序的一個(gè)重要要求是,它們看起來(lái)直觀美觀,具有有意義的動(dòng)畫(huà)和簡(jiǎn)單、易于識(shí)別的圖形和圖標(biāo)。這使得應(yīng)用程序易于使用、可識(shí)別并吸引消費(fèi)者。這對(duì)于在全球范圍內(nèi)銷(xiāo)售的產(chǎn)品尤其重要,因?yàn)橛脩艚缑姹仨氁子诜g成不同的語(yǔ)言并適應(yīng)不同的文化。

通常,它們需要在具有各種屏幕尺寸和方向的不同設(shè)備上運(yùn)行?,F(xiàn)代 UI 工具包具有應(yīng)對(duì)這些挑戰(zhàn)的能力。帶有CSS,iOS Swift或Qt工具包的HTML5是非常流行的選擇,用于干凈地構(gòu)建解決應(yīng)用程序外觀和感覺(jué)的軟件層。

無(wú)論使用哪種工具包,通過(guò)UX設(shè)計(jì)領(lǐng)導(dǎo)汽車(chē)項(xiàng)目都可以使這一切成為可能 - 并且比使用更傳統(tǒng)的方法更容易?,F(xiàn)代 UX 設(shè)計(jì)支持直觀、實(shí)用的工作流程,允許用戶快速完成他們需要做的事情,而無(wú)需通過(guò)學(xué)習(xí)說(shuō)明手冊(cè)來(lái)實(shí)際“學(xué)習(xí)”應(yīng)用程序的工作原理。這通常是通過(guò)組織具有簡(jiǎn)單層次結(jié)構(gòu)的應(yīng)用程序、將專(zhuān)家級(jí)功能隱藏在訪問(wèn)級(jí)別后面以及從流行的移動(dòng)電話應(yīng)用程序的流動(dòng)方式中吸取教訓(xùn)來(lái)實(shí)現(xiàn)的。

此工作流的實(shí)現(xiàn)需要一個(gè)軟件架構(gòu),該架構(gòu)為最頂層的“門(mén)面”提供編程主干。為了使復(fù)雜的外觀和感覺(jué)變得簡(jiǎn)單,必須選擇一種系統(tǒng)的方法,以允許用戶在應(yīng)用程序中的頁(yè)面或項(xiàng)目組之間切換,向后導(dǎo)航,到達(dá)“設(shè)置”,被打斷,然后輕松找到返回焦點(diǎn)的方式。使用狀態(tài)機(jī)架構(gòu)可實(shí)現(xiàn)所需的靈活性,同時(shí)保持所需的穩(wěn)健性和可測(cè)試性。

遵循 UX 優(yōu)先的分層方法

遵循UX優(yōu)先的分層架構(gòu)方法是簡(jiǎn)化自動(dòng)IVI開(kāi)發(fā)的一種方式,該IVI在美學(xué)上吸引消費(fèi)者,同時(shí)提供廣受歡迎的功能。這種類(lèi)型的方法包括可視化、表示、業(yè)務(wù)邏輯和通信層,依賴(lài)于組件來(lái)簡(jiǎn)化流程。

例如,可視化和表示層為用戶提供了一種與應(yīng)用程序交互的方式。但是仍然有實(shí)際功能的實(shí)現(xiàn),例如,當(dāng)用戶界面想要在地址簿中顯示聯(lián)系人列表時(shí),應(yīng)用程序必須從存儲(chǔ)中檢索此數(shù)據(jù),無(wú)論是在數(shù)據(jù)庫(kù)中,在連接的電話上,從簡(jiǎn)單的文件,網(wǎng)絡(luò)連接還是其他地方。

所有應(yīng)用程序都必須實(shí)現(xiàn)某個(gè)邏輯塊,即“業(yè)務(wù)邏輯”層。例如,農(nóng)業(yè)行業(yè)供應(yīng)商的算法可以確定是否可以?xún)?yōu)化噴灑在田地上的產(chǎn)品水平以及在哪里可以?xún)?yōu)化。組織此邏輯并將其與表示層和可視化層分離對(duì)于應(yīng)用程序開(kāi)發(fā)過(guò)程的有效性至關(guān)重要。對(duì)于旨在提供出色用戶體驗(yàn)的公司來(lái)說(shuō),這一層是他們最具差異化潛力的地方。

在開(kāi)發(fā)過(guò)程中,某些需要專(zhuān)用硬件或長(zhǎng)時(shí)間運(yùn)行進(jìn)程的組件必須被“模擬”——取而代之的是模擬功能。可以部署基于接口和插件的系統(tǒng)來(lái)實(shí)現(xiàn)此目標(biāo),其中應(yīng)用程序的表示層通過(guò)一組確定的接口訪問(wèn)業(yè)務(wù)邏輯,從而與這些層中的更改或正在進(jìn)行的開(kāi)發(fā)過(guò)程隔離。然后,可以在模擬數(shù)據(jù)和模擬的幫助下測(cè)試應(yīng)用程序的可用性。這個(gè)過(guò)程已被證明可以帶來(lái)更具成本效益、更有用、更完整和更好的應(yīng)用程序。

這就是通信層的用武之地。為了實(shí)現(xiàn)上述目標(biāo),幾乎所有現(xiàn)代應(yīng)用程序都以某種方式進(jìn)行通信。汽車(chē)IVI通常使用CANBus層來(lái)確定各種車(chē)輛子系統(tǒng)的狀態(tài),而醫(yī)療設(shè)備則經(jīng)過(guò)驗(yàn)證和驗(yàn)證的通信庫(kù),例如,可以使機(jī)器人手臂在手術(shù)過(guò)程中執(zhí)行高精度運(yùn)動(dòng)。

此外,幾乎所有應(yīng)用程序都需要可更新,能夠提供有關(guān)其用于聚合和營(yíng)銷(xiāo)目的的信息,或者只是需要在線數(shù)據(jù)庫(kù)訪問(wèn)才能完全有用。因此,將這部分應(yīng)用程序的邏輯分組到通信層中是一個(gè)合乎邏輯的選擇,并帶來(lái)了許多優(yōu)勢(shì)。

無(wú)需重寫(xiě)應(yīng)用程序即可交換通信通道。安全和安??梢栽谏贁?shù)地方集中和實(shí)施,從而最大限度地減少攻擊面。分層實(shí)現(xiàn)允許優(yōu)化,使應(yīng)用程序保持“活動(dòng)”,而重要進(jìn)程在后臺(tái)發(fā)生。當(dāng)體系結(jié)構(gòu)構(gòu)建在通信層上時(shí),非阻塞通信模式更容易實(shí)現(xiàn)。

4 層架構(gòu)示例

以下是集成計(jì)算機(jī)解決方案版本的分層方法的概述,顯示了功能明確分離,特別適合所有必須遵守安全法規(guī)的項(xiàng)目。以這種方式進(jìn)行工程設(shè)計(jì),實(shí)施干凈且可維護(hù)的軟件,非常適合集成和單元測(cè)試。

pYYBAGOITPiAY4BOAAPfjKRUVEA598.png

此體系結(jié)構(gòu)的四個(gè)獨(dú)立層由可測(cè)試和可模擬的接口定義。從下層到上層的所有通信都強(qiáng)制實(shí)施松散耦合。這保證了后端獨(dú)立于前端。所謂的信號(hào)可以使用許多通用框架輕松實(shí)現(xiàn)。按照慣例,所有頂層都可以通過(guò) API 和接口調(diào)用下面的層。這從上到下創(chuàng)建了緊密耦合,其中確保確定性的通信模式和應(yīng)用程序邏輯的執(zhí)行非常重要。

以下是各個(gè)層的角色:

可視化層負(fù)責(zé)用戶在屏幕上看到和交互的所有內(nèi)容。它負(fù)責(zé)顯示所有文本,圖像,圖標(biāo),主題,樣式,動(dòng)畫(huà)等。該層可以使用許多不同的技術(shù)來(lái)實(shí)現(xiàn)。(我們經(jīng)常建議使用Qt框架,在這種情況下,這一層將使用Qt的QtQuick模塊實(shí)現(xiàn)。

表示層維護(hù)應(yīng)用程序和用戶界面狀態(tài)。它負(fù)責(zé)存儲(chǔ)屏幕上顯示的值。例如,在表盤(pán)上設(shè)置的值存儲(chǔ)在表示層中,但顯示在可視化層中。表示層實(shí)現(xiàn)應(yīng)用程序的工作流以及工作流與后端的所有交互(例如,如果來(lái)自后端的錯(cuò)誤消息到達(dá),表示層邏輯會(huì)在屏幕上顯示包含錯(cuò)誤消息的對(duì)話框)。

應(yīng)用程序邏輯層實(shí)現(xiàn)應(yīng)用程序的業(yè)務(wù)邏輯。它負(fù)責(zé)數(shù)據(jù)存儲(chǔ)、數(shù)據(jù)庫(kù)交互、處理來(lái)自后端的事件以及與前端的交互。該層處理實(shí)現(xiàn)用戶界面所需的“領(lǐng)域知識(shí)”。例如,對(duì)于當(dāng)前的應(yīng)用程序,該層將實(shí)現(xiàn)“測(cè)試運(yùn)行”,“查看結(jié)果”,“用戶管理”的業(yè)務(wù)邏輯以及軟件需求規(guī)范中定義的幾乎所有其他任務(wù)。

通信層實(shí)現(xiàn)與硬件設(shè)備、網(wǎng)絡(luò)或其他系統(tǒng)的通信。硬件合作伙伴通常負(fù)責(zé)為實(shí)際硬件提供接口,并使用共同開(kāi)發(fā)的 API 實(shí)現(xiàn)必要的通信例程。該層特別允許使用可模擬接口,這些接口可以在實(shí)際硬件完成并可用之前進(jìn)行獨(dú)立測(cè)試。

這種定義明確的體系結(jié)構(gòu)有助于使用可重用的代碼,并且解耦這些層可以實(shí)現(xiàn) UX 設(shè)計(jì)人員、UI 實(shí)現(xiàn)、業(yè)務(wù)邏輯提供程序和硬件合作伙伴之間的工作分工。它還允許將任務(wù)輕松分配給正確的技能組合。總體而言,這些特點(diǎn)大大降低了項(xiàng)目開(kāi)發(fā)風(fēng)險(xiǎn)。此外,這種分層架構(gòu)方法允許公司更快地構(gòu)建原型,并立即與UX設(shè)計(jì)師一起迭代工作流程。

為了跟上消費(fèi)者的需求,汽車(chē)制造商必須加快構(gòu)建有吸引力的安全信息娛樂(lè)系統(tǒng)的速度。依靠包含可重用代碼的分層軟件架構(gòu),而不是依靠定義不太明確的移動(dòng)技術(shù),可以大大縮短上市時(shí)間,因此汽車(chē)制造商可以在創(chuàng)紀(jì)錄的時(shí)間內(nèi)快速?zèng)_過(guò)終點(diǎn)線。

審核編輯:郭婷

聲明:本文內(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)投訴
  • 計(jì)算機(jī)
    +關(guān)注

    關(guān)注

    19

    文章

    7371

    瀏覽量

    87634
  • 應(yīng)用程序
    +關(guān)注

    關(guān)注

    37

    文章

    3237

    瀏覽量

    57547
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    架構(gòu)與設(shè)計(jì) 常見(jiàn)微服務(wù)分層架構(gòu)的區(qū)別和落地實(shí)踐

    架構(gòu)風(fēng)格越傾向于清晰的職責(zé)定位,且讓領(lǐng)域模型成為架構(gòu)的核心。 基于這些架構(gòu)風(fēng)格,在軟件架構(gòu)設(shè)計(jì)過(guò)程中又有非常多的架構(gòu)
    的頭像 發(fā)表于 10-22 15:34 ?125次閱讀
    <b class='flag-5'>架構(gòu)</b>與設(shè)計(jì) 常見(jiàn)微服務(wù)<b class='flag-5'>分層</b><b class='flag-5'>架構(gòu)</b>的區(qū)別和落地實(shí)踐

    【「嵌入式Hypervisor:架構(gòu)、原理與應(yīng)用」閱讀體驗(yàn)】+全文學(xué)習(xí)心得

    汽車(chē)電子、航空航天等。通過(guò)具體案例,我了解到嵌入式Hypervisor在這些領(lǐng)域中的重要作用和價(jià)值。 在物聯(lián)網(wǎng)領(lǐng)域,嵌入式Hypervisor能夠?qū)崿F(xiàn)物聯(lián)網(wǎng)設(shè)備的靈活配置和管理,提高系統(tǒng)的可靠性和安全性
    發(fā)表于 10-09 19:11

    服務(wù)網(wǎng)格DPU卸載解決方案

    服務(wù)網(wǎng)格(Service Mesh)是微服務(wù)架構(gòu)中的一種重要技術(shù),它主要處理服務(wù)之間的通信,為服務(wù)間的信息交換提供更安全、更快速且更可靠的基礎(chǔ)設(shè)施層。服務(wù)網(wǎng)格將服務(wù)治理從業(yè)務(wù)邏輯中剝離
    的頭像 發(fā)表于 09-20 16:25 ?231次閱讀
    服務(wù)網(wǎng)格DPU卸載解決方案

    羅森伯格H-MTD連接器助力汽車(chē)制造商設(shè)計(jì)并實(shí)現(xiàn)區(qū)域架構(gòu)

    ? ? 隨著輔助和信息娛樂(lè)系統(tǒng)數(shù)量和復(fù)雜性的不斷增加,車(chē)輛布線系統(tǒng)面臨越來(lái)越大的挑戰(zhàn)。為應(yīng)對(duì)這一挑戰(zhàn),羅森伯格H-MTD 連接器保證了可靠高效的數(shù)據(jù)傳輸,為未來(lái)的汽車(chē)區(qū)域架構(gòu)提供支持。
    的頭像 發(fā)表于 07-31 16:42 ?825次閱讀

    EtherCAT總線冗余讓制造更安全更可靠更智能

    EtherCAT總線冗余賦能生產(chǎn)更可靠保障!
    的頭像 發(fā)表于 07-09 10:58 ?497次閱讀
    EtherCAT總線冗余讓制造更安全<b class='flag-5'>更可靠</b>更智能

    為什么加速數(shù)據(jù)處理對(duì)各行各業(yè)的AI創(chuàng)新都至關(guān)重要

    在各行各業(yè),AI 正在用機(jī)器驅(qū)動(dòng)的計(jì)算來(lái)推動(dòng)創(chuàng)新。在金融領(lǐng)域,銀行正在使用 AI 更快地檢測(cè)欺詐行為并確保賬戶安全;電信公司正在使用 AI 優(yōu)化網(wǎng)絡(luò)以提供優(yōu)質(zhì)服務(wù);科學(xué)家正在使用 AI 開(kāi)發(fā)治療罕見(jiàn)
    的頭像 發(fā)表于 07-05 10:46 ?643次閱讀

    SolidWorks科研版更快地開(kāi)發(fā)產(chǎn)品創(chuàng)意

    功能強(qiáng)大的三維設(shè)計(jì)軟件,為科研人員和設(shè)計(jì)師提供了強(qiáng)有力的支持,使他們能夠更快地開(kāi)發(fā)產(chǎn)品創(chuàng)意,從而在市場(chǎng)中搶占先機(jī)。
    的頭像 發(fā)表于 06-19 16:49 ?237次閱讀

    小鵬汽車(chē)與大眾汽車(chē)宣布簽署E/E架構(gòu)技術(shù)合作框架協(xié)議

    是其垂直集成的全棧軟硬件技術(shù)的核心。它支持ADAS和Connectivity OS等軟件與底層硬件和車(chē)輛平臺(tái)解耦,實(shí)現(xiàn)跨平臺(tái)軟件的快速迭代。小鵬汽車(chē)最新一代E/E架構(gòu)采用基于中央計(jì)算和域控制器的架構(gòu)
    的頭像 發(fā)表于 04-23 14:49 ?470次閱讀
    小鵬<b class='flag-5'>汽車(chē)</b>與大眾<b class='flag-5'>汽車(chē)</b>宣布簽署E/E<b class='flag-5'>架構(gòu)</b>技術(shù)合作框架協(xié)議

    不能獨(dú)立開(kāi)發(fā),是因?yàn)槟悴欢浖?b class='flag-5'>架構(gòu)

    不想錯(cuò)過(guò),記得右上角-查看公眾號(hào)-設(shè)為星標(biāo),摘下星星送給我嵌入式軟件架構(gòu)設(shè)計(jì)一般采用分層思想,稱(chēng)為“分層架構(gòu)”。part1一、什么是分層
    的頭像 發(fā)表于 03-15 08:09 ?959次閱讀
    不能獨(dú)立開(kāi)發(fā),是因?yàn)槟悴欢浖?b class='flag-5'>架構(gòu)</b>

    汽車(chē)ECU一般采用芯片架構(gòu)?使用什么系統(tǒng)?

    汽車(chē)ECU一般采用芯片架構(gòu),使用什么系統(tǒng)?
    發(fā)表于 02-01 06:09

    為什么GPU比CPU更快

    GPU比CPU更快的原因并行處理能力:GPU可以同時(shí)處理多個(gè)任務(wù)和數(shù)據(jù),而CPU通常只能一次處理一項(xiàng)任務(wù)。這是因?yàn)镚PU的架構(gòu)使得它可以同時(shí)處理多個(gè)核心,從而實(shí)現(xiàn)高效的并行計(jì)算,這是GPU在處理
    的頭像 發(fā)表于 01-26 08:30 ?2169次閱讀
    為什么GPU比CPU<b class='flag-5'>更快</b>?

    智能網(wǎng)聯(lián)汽車(chē)電子電氣架構(gòu)詳解

    汽車(chē)電子電氣架構(gòu)正在由傳統(tǒng)的分布式架構(gòu)向域集中式和中央集中式演進(jìn), 并繼續(xù)演進(jìn)至車(chē)路云一體化協(xié)同。智能網(wǎng)聯(lián)汽車(chē)整體軟件架構(gòu)需要采用 SOA
    的頭像 發(fā)表于 01-17 09:24 ?2103次閱讀
    智能網(wǎng)聯(lián)<b class='flag-5'>汽車(chē)</b>電子電氣<b class='flag-5'>架構(gòu)</b>詳解

    設(shè)計(jì)800V車(chē)輛架構(gòu)時(shí)需要注意什么

    它們。但是,轉(zhuǎn)向800V架構(gòu)意味著對(duì)車(chē)輛架構(gòu)進(jìn)行一些必要的調(diào)整和優(yōu)化。物理挑戰(zhàn)充電時(shí),只有兩種方法可以更快地為電動(dòng)汽車(chē)供電:提高電流或提高電壓。提高電流,所有在車(chē)
    的頭像 發(fā)表于 01-04 08:26 ?590次閱讀
    設(shè)計(jì)800V車(chē)輛<b class='flag-5'>架構(gòu)</b>時(shí)需要注意什么

    SOLIDWORKS在駕馭快速發(fā)展的科技環(huán)境的同時(shí)更快地構(gòu)建產(chǎn)品

    SOLIDWORKS在駕馭快速發(fā)展的科技環(huán)境的同時(shí)更快地構(gòu)建產(chǎn)品,高科技公司需要保持競(jìng)爭(zhēng)力和相關(guān)性,同時(shí)在快速發(fā)展的環(huán)境中化解設(shè)計(jì)和運(yùn)營(yíng)復(fù)雜性、高質(zhì)量的交付和利潤(rùn)壓力。
    的頭像 發(fā)表于 01-03 14:09 ?255次閱讀

    讓“可靠”變得“更快更安全”的數(shù)據(jù)傳輸協(xié)議:SCTP

    SCTP(Stream Control Transmission Protocol,流控傳輸協(xié)議)的出現(xiàn),并不是萬(wàn)丈高樓平地起,而是站在TCP這個(gè)巨人肩膀上,讓數(shù)據(jù)傳輸從“可靠”變得“更快更安全”。
    的頭像 發(fā)表于 12-28 17:25 ?1325次閱讀
    讓“<b class='flag-5'>可靠</b>”變得“<b class='flag-5'>更快</b>更安全”的數(shù)據(jù)傳輸協(xié)議:SCTP