中文字幕 日本 在线 高清,久久精品国产99精品国,超碰人人香蕉,一区二区三区无码高清视频

想做好汽車軟件開(kāi)發(fā),先練好這個(gè)內(nèi)功(想做好汽車軟件開(kāi)發(fā),先練好這個(gè)內(nèi)功還是外功)

金庸筆下的武俠世界里,掌握一門內(nèi)功心法是獨(dú)步武林的基礎(chǔ)。在汽車電子領(lǐng)域,也有著這樣的內(nèi)功心法——V模型的開(kāi)發(fā)流程。

開(kāi)發(fā)模型有很多,包括增量式、原型式、螺旋式、噴泉式、W模型等,但在實(shí)際開(kāi)發(fā)中,V模型被應(yīng)用最多。所以,掌握好這門心法,才能更好地做好開(kāi)發(fā)工作。

汽車開(kāi)發(fā)的基本模式

你我都知道,在汽車開(kāi)發(fā)過(guò)程中,汽車概念首先被分解成系統(tǒng)和組件,然后重新整合成整車,那么怎么拆就是一個(gè)問(wèn)題。

當(dāng)前,新能源整車及三電系統(tǒng)的設(shè)計(jì)開(kāi)發(fā)主要采納ASPICE V模型開(kāi)發(fā)模式。

ASPICE全稱為“Automotive Software Process Improvement and Capacity Determination”,即汽車軟件過(guò)程改進(jìn)及能力測(cè)定模型,是汽車軟件的開(kāi)發(fā)過(guò)程標(biāo)準(zhǔn)。

而V模型是一個(gè)軟件開(kāi)發(fā)過(guò)程模型,它強(qiáng)調(diào)測(cè)試和軟件開(kāi)發(fā)各階段之間的關(guān)系。在系統(tǒng)開(kāi)發(fā)活動(dòng)中,最為常見(jiàn)的開(kāi)發(fā)模型是V模型。V模型因其開(kāi)發(fā)過(guò)程展現(xiàn)的形式與英文字母“V”非常相似而得名。V模型具有與瀑布模型相同的順序設(shè)計(jì)過(guò)程,每個(gè)階段都必須在下一個(gè)階段開(kāi)始前完成,同時(shí)相應(yīng)的測(cè)試計(jì)劃應(yīng)與對(duì)應(yīng)的開(kāi)發(fā)階段并行進(jìn)行。

想做好汽車軟件開(kāi)發(fā),先練好這個(gè)內(nèi)功(想做好汽車軟件開(kāi)發(fā),先練好這個(gè)內(nèi)功還是外功)

軟件開(kāi)發(fā)V模型,圖源|《智能汽車:電子電氣架構(gòu)詳解》

V模型從瀑布模型而來(lái),1970年溫斯頓·羅伊斯(Winston Royce)提出瀑布模型,將軟件生命周期分為若干階段和固定的順序,形如瀑布流水,最終得到軟件產(chǎn)品。

瀑布模型將軟件生命周期劃分為:制定計(jì)劃、需求分析、軟件設(shè)計(jì)、程序編寫、軟件測(cè)試、.運(yùn)行維護(hù)。

瀑布模型的優(yōu)點(diǎn)是為項(xiàng)目提供了按階段劃分的檢查瀑布模型查點(diǎn);當(dāng)前一階段完成后,只需要去關(guān)注后續(xù)階段;可在迭代模型中應(yīng)用瀑布模型。不過(guò),瀑布模型各個(gè)階段的劃分完全固定,階段間產(chǎn)生大量文檔,極大增加工作量。此外,由于開(kāi)發(fā)模型為線性的模型,用戶只有等到過(guò)程末期才能見(jiàn)到開(kāi)發(fā)成果,從而增加開(kāi)發(fā)風(fēng)險(xiǎn)。更重要的是,早期錯(cuò)誤可能要等到開(kāi)發(fā)后期的測(cè)試階段才能發(fā)現(xiàn),進(jìn)而帶來(lái)嚴(yán)重后果。

想做好汽車軟件開(kāi)發(fā),先練好這個(gè)內(nèi)功(想做好汽車軟件開(kāi)發(fā),先練好這個(gè)內(nèi)功還是外功)

V模型則是Kevin Forsberg & Harold Mooz在1978年提出,V模型強(qiáng)調(diào)測(cè)試在系統(tǒng)工程各個(gè)階段中的作用,并將系統(tǒng)分解和系統(tǒng)集成的過(guò)程通過(guò)測(cè)試彼此關(guān)聯(lián)。

想做好汽車軟件開(kāi)發(fā),先練好這個(gè)內(nèi)功(想做好汽車軟件開(kāi)發(fā),先練好這個(gè)內(nèi)功還是外功)

實(shí)際生產(chǎn)中的V模型

不過(guò),光是這么個(gè)模型,其實(shí)還是很理想化的模型,在實(shí)際生產(chǎn)中,V模型要復(fù)雜的多。

在實(shí)際的軟件開(kāi)發(fā)過(guò)程中,鑒于測(cè)試驗(yàn)證的反復(fù)性、功能需求的迭代更新等多重因素,往往會(huì)涉及多個(gè)版本的發(fā)布。因此,真正的開(kāi)發(fā)流程是由一系列相互關(guān)聯(lián)的“小V”模型串聯(lián)而成,這些“小V”模型共同構(gòu)建了一個(gè)更為宏觀、綜合的“大V”模型,以適應(yīng)軟件開(kāi)發(fā)過(guò)程中的多樣性和復(fù)雜性。

想做好汽車軟件開(kāi)發(fā),先練好這個(gè)內(nèi)功(想做好汽車軟件開(kāi)發(fā),先練好這個(gè)內(nèi)功還是外功)

復(fù)雜軟件開(kāi)發(fā)模型示意,圖源|《智能汽車:電子電氣架構(gòu)詳解》

在實(shí)際運(yùn)作中,整車的開(kāi)發(fā)任務(wù)又會(huì)被切割到各個(gè)域,然后又被逐漸分解到系統(tǒng)、部件,以及部件內(nèi)的組件(軟件、硬件、機(jī)械等),所以整個(gè)V模型會(huì)更為復(fù)雜。

如下圖所示,每個(gè)車型的研發(fā)周期可以看作一個(gè)獨(dú)立的“大V”模型,“大V”模型中的子研發(fā)階段(系統(tǒng)集成節(jié)點(diǎn)之間)可以看作“小V”模型。每個(gè)系統(tǒng)研發(fā)周期可以視作獨(dú)立的“大V”模型,它又由多個(gè)“小V”模型串聯(lián)而成。

想做好汽車軟件開(kāi)發(fā),先練好這個(gè)內(nèi)功(想做好汽車軟件開(kāi)發(fā),先練好這個(gè)內(nèi)功還是外功)

整車開(kāi)發(fā)中的V模型分解示意圖,圖源|《智能汽車:電子電氣架構(gòu)詳解》

V模型開(kāi)發(fā)結(jié)構(gòu)明確劃分了設(shè)計(jì)開(kāi)發(fā)與分析活動(dòng)(位于模型左側(cè))以及設(shè)計(jì)結(jié)果的測(cè)試與驗(yàn)證活動(dòng)(位于模型右側(cè)),兩側(cè)互為補(bǔ)充,共同構(gòu)建了一個(gè)完整且嚴(yán)謹(jǐn)?shù)拈_(kāi)發(fā)流程。

從V模型結(jié)構(gòu)中,我們可以看出,測(cè)試驗(yàn)證環(huán)節(jié)與開(kāi)發(fā)環(huán)節(jié)處于同等重要的地位,是系統(tǒng)開(kāi)發(fā)中不可或缺的關(guān)鍵環(huán)節(jié)。

盡管當(dāng)前許多車企從互聯(lián)網(wǎng)領(lǐng)域借鑒并引入了“敏捷開(kāi)發(fā)”的理念,但汽車類的設(shè)計(jì)開(kāi)發(fā)流程依然以V模型作為其主干結(jié)構(gòu)。

想做好汽車軟件開(kāi)發(fā),先練好這個(gè)內(nèi)功(想做好汽車軟件開(kāi)發(fā),先練好這個(gè)內(nèi)功還是外功)

ASPICE設(shè)計(jì)開(kāi)發(fā)流程,圖源| RIO電驅(qū)動(dòng)

V模型上的工具

那么在每個(gè)階段,又有什么工具,來(lái)支持各個(gè)階段的開(kāi)發(fā)工作。以下是對(duì)這些階段的工作目標(biāo),常用工具鏈及其相應(yīng)的供應(yīng)商:

1. 需求分析階段

需求管理工具:DOORS(IBM),Jama Software,Polarion(Siemens)

需求建模工具:Enterprise Architect(Sparx Systems),MagicDraw(No Magic)

2. 系統(tǒng)設(shè)計(jì)階段

系統(tǒng)建模工具:Enterprise Architect(Sparx Systems),Rhapsody(IBM)

仿真和驗(yàn)證工具:Simulink(MathWorks),Modelica(OpenModelica)

3. 詳細(xì)設(shè)計(jì)階段

軟件設(shè)計(jì)工具:UML建模工具(如Enterprise Architect,MagicDraw)

硬件設(shè)計(jì)工具:Altium Designer,Cadence,Mentor Graphics(Siemens)

4. 實(shí)現(xiàn)階段

集成開(kāi)發(fā)環(huán)境(IDE):Eclipse,Keil(Arm),IAR Embedded Workbench

版本控制工具:Git,SVN(Subversion),Jenkins

5. 單元測(cè)試階段

測(cè)試框架:Google Test,CppUnit,JUnit

測(cè)試覆蓋率工具:gcov(GCC),Bullseye Coverage

6. 集成測(cè)試階段

集成測(cè)試工具:Vector CANoe,National Instruments(NI TestStand),VT-System(Vector)

仿真工具:Simulink,MATLAB

7. 系統(tǒng)測(cè)試階段

測(cè)試管理工具:HP ALM(Application Lifecycle Management),JIRA

硬件在環(huán)(HIL)測(cè)試工具:dSPACE ,ETAS LABCAR ,Vector Informatik

8. 驗(yàn)收測(cè)試階段

工具鏈和供應(yīng)商:HP ALM,JIRA,TestRail(Gurock)

9. 維護(hù)階段

問(wèn)題追蹤工具:JIRA,Bugzilla,Redmine

配置管理工具:Git,SVN,Perforce

把敏捷開(kāi)發(fā)加入V模型

最近一段時(shí)間,汽車交付越來(lái)越快,甚至出現(xiàn)一年一車的盛況。V模型的局限性也越來(lái)越明顯,V模型的測(cè)試過(guò)程是在開(kāi)發(fā)過(guò)程的后期進(jìn)行的,這意味著問(wèn)題在測(cè)試階段被發(fā)現(xiàn)可能會(huì)導(dǎo)致較高的修復(fù)成本。

為了補(bǔ)足V模型的缺點(diǎn),將敏捷開(kāi)發(fā)和V模型結(jié)合使用是全新的方法,也就是將敏捷原則嵌入到V模型中。

想做好汽車軟件開(kāi)發(fā),先練好這個(gè)內(nèi)功(想做好汽車軟件開(kāi)發(fā),先練好這個(gè)內(nèi)功還是外功)

顧名思義,敏捷開(kāi)發(fā)是一種迭代式、增量式的開(kāi)發(fā)方法,強(qiáng)調(diào)對(duì)需求變化的快速響應(yīng)和持續(xù)交付有價(jià)值的軟件,將其用于產(chǎn)品的開(kāi)發(fā),實(shí)現(xiàn)敏捷迭代。

通過(guò)結(jié)合敏捷開(kāi)發(fā)和V模型,可以實(shí)現(xiàn)對(duì)汽車軟件開(kāi)發(fā)過(guò)程的全面評(píng)估和改進(jìn),提高產(chǎn)品研發(fā)質(zhì)量和可靠性。

結(jié)合完大改長(zhǎng)這樣:

想做好汽車軟件開(kāi)發(fā),先練好這個(gè)內(nèi)功(想做好汽車軟件開(kāi)發(fā),先練好這個(gè)內(nèi)功還是外功)

原本按照V模型按部就班走,每個(gè)環(huán)節(jié)走得都不一樣快,走得快其實(shí)就可以有時(shí)間喘口氣等一等。當(dāng)加入敏捷思維之后,這基本是一種讓大家都閑不下來(lái)的方法,一段時(shí)間內(nèi)可能會(huì)比較容易提升效率和效果,但長(zhǎng)久來(lái)看,如何通過(guò)激勵(lì)措施持續(xù)運(yùn)作下去會(huì)是一個(gè)問(wèn)題。

轉(zhuǎn)變并非易事,汽車行業(yè)幾十年來(lái)一直遵循V模型開(kāi)發(fā)流程,未來(lái)怎么融合,也是現(xiàn)階段在考慮的事情。原文:想做好汽車軟件開(kāi)發(fā),先練好這個(gè)內(nèi)功

版權(quán)聲明:本文內(nèi)容由互聯(lián)網(wǎng)用戶自發(fā)貢獻(xiàn),該文觀點(diǎn)僅代表作者本人。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如發(fā)現(xiàn)本站有涉嫌抄襲侵權(quán)/違法違規(guī)的內(nèi)容, 請(qǐng)發(fā)送郵件至 舉報(bào),一經(jīng)查實(shí),本站將立刻刪除。

(0)
上一篇 2024年9月14日 下午3:39
下一篇 2024年9月14日 下午3:51

相關(guān)推薦