MBSE實(shí)踐之基于模型的軟件開發(fā)
如今,我們已經(jīng)有先進(jìn)的駕駛輔助系統(tǒng),無人駕駛,汽車電子電氣和網(wǎng)絡(luò)連接,所有這一切都已經(jīng)被整合到汽車上,進(jìn)而導(dǎo)致車載軟件的份額實(shí)現(xiàn)了飛速增長(zhǎng)。
現(xiàn)代汽車,特別是高端的豪華汽車,車內(nèi)已經(jīng)包含近2億行代碼,超過45個(gè)互聯(lián)系統(tǒng),這個(gè)軟件規(guī)模已經(jīng)超過了飛機(jī)和電腦的操作系統(tǒng)代碼行數(shù)。隨著創(chuàng)新策略的逐步實(shí)施,再加上車聯(lián)網(wǎng)、人工智能、無人駕駛、新能源、混動(dòng)車型等新興技術(shù)的應(yīng)用,整車中嵌入式軟件比例越來越大。可以說軟件已經(jīng)在很多方面成為汽車行業(yè)決定性的差異化優(yōu)勢(shì),但是也帶來了一系列的挑戰(zhàn),例如如何處理軟件的復(fù)雜性,如何保證軟件的質(zhì)量,如何對(duì)部署的軟件進(jìn)行維護(hù),軟件開發(fā)過程中的協(xié)調(diào)等。
圖- 1汽車軟件開發(fā)面臨的一些挑戰(zhàn)
軟件復(fù)雜性:過去十年內(nèi),汽車內(nèi)嵌入式軟件的產(chǎn)品數(shù)量呈指數(shù)級(jí)增長(zhǎng),并日益復(fù)雜化。例如,要為整車配置BCM應(yīng)用,大約需要2500個(gè)軟件參數(shù)。這一BCM應(yīng)用可同時(shí)用于20個(gè)或以上不同型號(hào)車輛,而軟件工程師則需要對(duì)這些車輛型號(hào)的2500個(gè)參數(shù)的獨(dú)特和通用配置值集合進(jìn)行管理……為支持車輛生產(chǎn)線,總共大約需要管理60,000至80,000個(gè)軟件參數(shù)值。而這僅僅是軟件應(yīng)用的配置……更不用說為了支持車輛生產(chǎn)線的功能分解、控制、編碼和測(cè)試方案所帶來的復(fù)雜性了。
軟件質(zhì)量:據(jù)估計(jì),為了推動(dòng)整車產(chǎn)品質(zhì)量,在更依賴于軟件交付的各項(xiàng)創(chuàng)新和新功能中,嵌入式系統(tǒng)占 90% 以上。為了向市場(chǎng)交付這些產(chǎn)品,必須采用更多跨領(lǐng)域工程方法,同時(shí)大量采用軟件與產(chǎn)品的集成。就汽車行業(yè)而言,由于軟件問題導(dǎo)致的車輛召回所產(chǎn)生的保修成本近年來大幅上漲,與軟件相關(guān)的召回比率,已經(jīng)從2011年的不到5%,增長(zhǎng)到2015年的近15%。
部署的軟件維護(hù):大多數(shù)軟件工程工作都圍繞著維護(hù)、升級(jí)已部署在市場(chǎng)中的軟件展開,以此應(yīng)對(duì)維修、更新和硬件兼容問題。隨著軟件復(fù)雜性日益增長(zhǎng),用于部署遠(yuǎn)程 (OTA,Over The Air) 更新等升級(jí)的機(jī)制也越發(fā)復(fù)雜。例如,需要針對(duì)特定產(chǎn)品版本追蹤這些軟件應(yīng)用的二進(jìn)制代碼及其相應(yīng)配置和校準(zhǔn)值等。在全球范圍內(nèi)根據(jù)VIN來追蹤車輛,以了解不同型號(hào)ECU擁有的應(yīng)用版本內(nèi)容和所需升級(jí)。或反其道而行之,變更軟件給定的提議(可能是由于召回)。如此一來,可以想象一下全球有多少道路上的車輛會(huì)受到影響!
軟件工程協(xié)調(diào):軟件工程經(jīng)歷了漫長(zhǎng)的發(fā)展過程,現(xiàn)已變得異常復(fù)雜,沒有任何一款工具能夠完全支持有效交付軟件應(yīng)用所必需的進(jìn)程任務(wù)。因此,將所有必要的進(jìn)程任務(wù)和相關(guān)擴(kuò)展,融入到必要的工具集生態(tài)系統(tǒng)進(jìn)行集中管理變得更加重要。
在軟件驅(qū)動(dòng)汽車的新世界中,最重要的挑戰(zhàn)來自在產(chǎn)品開發(fā)不斷加快的步伐下,汽車OEM和供應(yīng)商能否快速轉(zhuǎn)變以適應(yīng)日益增長(zhǎng)的復(fù)雜性和新興趨勢(shì),確保新的市場(chǎng)機(jī)會(huì),創(chuàng)新無疑成為推動(dòng)汽車廠商在競(jìng)爭(zhēng)激烈的行業(yè)保持領(lǐng)先地位的一種手段。
基于模型驅(qū)動(dòng)的軟件工程,是在汽車行業(yè)中大量使用的方法。Polarion基于項(xiàng)目模板,與Teamcenter平臺(tái)、Mentor Capital平臺(tái)、Simcenter平臺(tái)以及模型工具,可以給客戶帶來科學(xué)的系統(tǒng)工程解決方法。它不僅支持軟件全生命周期的過程管理,還可以和軟件研發(fā)階段的各種角色進(jìn)行工作協(xié)同。在滿足合規(guī)性的剛性需要下(比如:ASPICE,ISO26262,ASIL,能力成熟度模型集成CMMI等),實(shí)現(xiàn)軟件在環(huán)、模型在環(huán)、硬件在環(huán),提高軟件復(fù)用顆粒度,保證產(chǎn)品質(zhì)量并更快地進(jìn)行交付,以滿足汽車客戶對(duì)汽車電子電氣軟件開發(fā)的需求,如下圖所示。
圖- 2 基于模型的軟件開發(fā)過程
西門子的Polarion應(yīng)用生命周期管理 (ALM,Application Lifecycle Management)平臺(tái),是解決汽車軟件開發(fā)過程中各種問題的軟件全生命周期管理解決方案。如圖3所示,西門子Polarion ALM方案,是一套面向汽車軟件研發(fā)的整個(gè)生命周期的系統(tǒng),能實(shí)現(xiàn)從軟件產(chǎn)品概念設(shè)計(jì)、軟件需求分析、軟件設(shè)計(jì)、軟件構(gòu)建和發(fā)布管理、軟件測(cè)試管理、軟件項(xiàng)目管理(包括敏捷和混合項(xiàng)目)、軟件配置和變更管理、軟件風(fēng)險(xiǎn)和問題管理、軟件計(jì)劃和資源管理、審計(jì)度量管理等,直至軟件項(xiàng)目完成的全過程管理。
圖- 3 Polarion平臺(tái)的軟件管理流程
Polarion作為軟件生命周期管理的一體化工具,將軟件開發(fā)團(tuán)隊(duì)和項(xiàng)目連接起來,使用單獨(dú)的、統(tǒng)一的需求、編碼、測(cè)試和發(fā)布解決方案,改進(jìn)汽車軟件開發(fā)過程。具體來說,Polarion具有以下特點(diǎn):
基于用戶驅(qū)動(dòng)的方式,讓整個(gè)軟件開發(fā)流程中的各個(gè)角色能基于同一個(gè)管理平臺(tái),進(jìn)行工作協(xié)同和數(shù)據(jù)交付,實(shí)現(xiàn)軟件研發(fā)模式的創(chuàng)新;
可借助實(shí)時(shí)整合的管理信息提供報(bào)告和指標(biāo),讓項(xiàng)目更透明,有助于開發(fā)團(tuán)隊(duì)加快協(xié)同速度,并以更高的質(zhì)量來滿足新的商機(jī)和客戶需求;
集成的需求變更功能,可以幫助研發(fā)人員在汽車軟件的研發(fā)過程中保證軟件質(zhì)量,收集、管理和跟蹤開發(fā)的變更請(qǐng)求,通過影響和跟蹤分析能力確定哪些項(xiàng)目工件需要進(jìn)行檢查、修改或添加,同時(shí)更好的處理各專業(yè)部門科室的協(xié)作;
不但可以幫助質(zhì)量保證和測(cè)試人員輕松展開進(jìn)行測(cè)試管理工作(軟件缺陷檢查、單元測(cè)試、集成測(cè)試、系統(tǒng)測(cè)試),還可以輕松創(chuàng)建跟蹤,下至缺陷,上到需求;
以數(shù)據(jù)為驅(qū)動(dòng),改變了傳統(tǒng)的以文檔為驅(qū)動(dòng)的軟件開發(fā)方法,產(chǎn)生了靈活的工作流程,通過結(jié)構(gòu)化,工作內(nèi)容細(xì)顆粒度化,讓協(xié)同真正意義能落地,提高了敏捷性;
通過對(duì)項(xiàng)目數(shù)據(jù)的監(jiān)控,實(shí)現(xiàn)對(duì)開發(fā)過程的所有數(shù)據(jù)的質(zhì)量把控,將質(zhì)量保證部署在軟件開發(fā)的各個(gè)環(huán)節(jié),產(chǎn)生高質(zhì)量的軟件產(chǎn)品,以及高可控的管理流程。
圖- 4 Capital Software Designer是E/E架構(gòu)和軟件詳細(xì)設(shè)計(jì)之間的橋梁
西門子Capital Software Designer(CSD)能夠承接來自于Capital System的架構(gòu)數(shù)據(jù)信息,作為軟件架構(gòu)設(shè)計(jì)的輸入,而Capital Software Designer的設(shè)計(jì)輸出,也作為下游網(wǎng)絡(luò)詳細(xì)設(shè)計(jì)(Capital Networks)和進(jìn)行滿足AUTOSAR規(guī)范的ECU設(shè)計(jì)(Capital VSTAR)的輸入。Capital Networks可以設(shè)計(jì)、分析和驗(yàn)證車載通信網(wǎng)絡(luò),然后再進(jìn)入嵌入式軟件實(shí)現(xiàn)階段。在此階段,嵌入式軟件可以使用AUTOSAR工具Capital VSTAR為目標(biāo)ECU進(jìn)行設(shè)計(jì)和配置,并在Capital VSTAR Virtualizer中進(jìn)行相關(guān)的虛擬驗(yàn)證。
在CSD中,軟件架構(gòu)設(shè)計(jì)可以以圖形或文本兩種方式體現(xiàn)。如下圖所示:
圖- 5 CSD的圖形化架構(gòu)設(shè)計(jì)和文本化架構(gòu)設(shè)計(jì)
CSD的圖形化架構(gòu)設(shè)計(jì)易于反映系統(tǒng)內(nèi)部各模塊間的信號(hào)交聯(lián)關(guān)系以及各部分組成,對(duì)于從整體上把握系統(tǒng)架構(gòu)原理有著得天獨(dú)厚的優(yōu)勢(shì);同時(shí)文本化架構(gòu)設(shè)計(jì)可以直觀反映架構(gòu)設(shè)計(jì)中各模塊端口信息以及端口約束條件。用戶在系統(tǒng)設(shè)計(jì)階段可以通過一鍵切換的方式,自由選擇圖形或文本方式進(jìn)行架構(gòu)設(shè)計(jì)。而CSD中架構(gòu)設(shè)計(jì)中的每一個(gè)功能模塊原則上都應(yīng)有與之相對(duì)應(yīng)的功能需求條目,系統(tǒng)工程師需要將功能需求中的所有條目都映射到對(duì)應(yīng)的架構(gòu)功能模塊,關(guān)聯(lián)關(guān)系一旦被創(chuàng)建,用戶可以在設(shè)計(jì)、測(cè)試、驗(yàn)證的任何階段,查看需求指標(biāo)的滿足情況。
另外,如下圖所示, Capital Software Designer(CSD)能夠與Polarion集成,進(jìn)行基于模型的軟件需求分析、軟件架構(gòu)設(shè)計(jì)、軟件的單元測(cè)試和集成測(cè)試以及系統(tǒng)級(jí)別的驗(yàn)證等。
圖- 6 基于Polarion和Capital Software的軟件開發(fā)測(cè)試驗(yàn)證流程
國內(nèi)外眾多的主機(jī)廠的實(shí)踐表明,基于模型的軟件開發(fā)能夠滿足軟件的一系列要求,包括實(shí)時(shí)響應(yīng)、分布式功能開發(fā)、滿足標(biāo)準(zhǔn)特性競(jìng)爭(zhēng)需要、軟件的確認(rèn)和驗(yàn)證、軟硬件的整合等,進(jìn)而能夠給主機(jī)廠帶來極大的收益,包括縮短時(shí)間、減少成本、提高質(zhì)量、增強(qiáng)協(xié)同、滿足合規(guī)、大大提高軟件生產(chǎn)力等。
圖- 7 基于模型的軟件開發(fā)滿足不同的軟件開發(fā)要求
文章來源Teamcenter黑帶
工程師必備
- 項(xiàng)目客服
- 培訓(xùn)客服
- 平臺(tái)客服
TOP




















