想做好汽車軟件開發,先練好這個內功(想做好汽車軟件開發,先練好這個內功還是外功)

金庸筆下的武俠世界里,掌握一門內功心法是獨步武林的基礎。在汽車電子領域,也有著這樣的內功心法——V模型的開發流程。

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

汽車開發的基本模式

你我都知道,在汽車開發過程中,汽車概念首先被分解成系統和組件,然后重新整合成整車,那么怎么拆就是一個問題。

當前,新能源整車及三電系統的設計開發主要采納ASPICE V模型開發模式。

ASPICE全稱為“Automotive Software Process Improvement and Capacity Determination”,即汽車軟件過程改進及能力測定模型,是汽車軟件的開發過程標準。

而V模型是一個軟件開發過程模型,它強調測試和軟件開發各階段之間的關系。在系統開發活動中,最為常見的開發模型是V模型。V模型因其開發過程展現的形式與英文字母“V”非常相似而得名。V模型具有與瀑布模型相同的順序設計過程,每個階段都必須在下一個階段開始前完成,同時相應的測試計劃應與對應的開發階段并行進行。

想做好汽車軟件開發,先練好這個內功(想做好汽車軟件開發,先練好這個內功還是外功)

軟件開發V模型,圖源|《智能汽車:電子電氣架構詳解》

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

瀑布模型將軟件生命周期劃分為:制定計劃、需求分析、軟件設計、程序編寫、軟件測試、.運行維護。

瀑布模型的優點是為項目提供了按階段劃分的檢查瀑布模型查點;當前一階段完成后,只需要去關注后續階段;可在迭代模型中應用瀑布模型。不過,瀑布模型各個階段的劃分完全固定,階段間產生大量文檔,極大增加工作量。此外,由于開發模型為線性的模型,用戶只有等到過程末期才能見到開發成果,從而增加開發風險。更重要的是,早期錯誤可能要等到開發后期的測試階段才能發現,進而帶來嚴重后果。

想做好汽車軟件開發,先練好這個內功(想做好汽車軟件開發,先練好這個內功還是外功)

V模型則是Kevin Forsberg & Harold Mooz在1978年提出,V模型強調測試在系統工程各個階段中的作用,并將系統分解和系統集成的過程通過測試彼此關聯。

想做好汽車軟件開發,先練好這個內功(想做好汽車軟件開發,先練好這個內功還是外功)

實際生產中的V模型

不過,光是這么個模型,其實還是很理想化的模型,在實際生產中,V模型要復雜的多。

在實際的軟件開發過程中,鑒于測試驗證的反復性、功能需求的迭代更新等多重因素,往往會涉及多個版本的發布。因此,真正的開發流程是由一系列相互關聯的“小V”模型串聯而成,這些“小V”模型共同構建了一個更為宏觀、綜合的“大V”模型,以適應軟件開發過程中的多樣性和復雜性。

想做好汽車軟件開發,先練好這個內功(想做好汽車軟件開發,先練好這個內功還是外功)

復雜軟件開發模型示意,圖源|《智能汽車:電子電氣架構詳解》

在實際運作中,整車的開發任務又會被切割到各個域,然后又被逐漸分解到系統、部件,以及部件內的組件(軟件、硬件、機械等),所以整個V模型會更為復雜。

如下圖所示,每個車型的研發周期可以看作一個獨立的“大V”模型,“大V”模型中的子研發階段(系統集成節點之間)可以看作“小V”模型。每個系統研發周期可以視作獨立的“大V”模型,它又由多個“小V”模型串聯而成。

想做好汽車軟件開發,先練好這個內功(想做好汽車軟件開發,先練好這個內功還是外功)

整車開發中的V模型分解示意圖,圖源|《智能汽車:電子電氣架構詳解》

V模型開發結構明確劃分了設計開發與分析活動(位于模型左側)以及設計結果的測試與驗證活動(位于模型右側),兩側互為補充,共同構建了一個完整且嚴謹的開發流程。

從V模型結構中,我們可以看出,測試驗證環節與開發環節處于同等重要的地位,是系統開發中不可或缺的關鍵環節。

盡管當前許多車企從互聯網領域借鑒并引入了“敏捷開發”的理念,但汽車類的設計開發流程依然以V模型作為其主干結構。

想做好汽車軟件開發,先練好這個內功(想做好汽車軟件開發,先練好這個內功還是外功)

ASPICE設計開發流程,圖源| RIO電驅動

V模型上的工具

那么在每個階段,又有什么工具,來支持各個階段的開發工作。以下是對這些階段的工作目標,常用工具鏈及其相應的供應商:

1. 需求分析階段

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

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

2. 系統設計階段

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

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

3. 詳細設計階段

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

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

4. 實現階段

集成開發環境(IDE):Eclipse,Keil(Arm),IAR Embedded Workbench

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

5. 單元測試階段

測試框架:Google Test,CppUnit,JUnit

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

6. 集成測試階段

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

仿真工具:Simulink,MATLAB

7. 系統測試階段

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

硬件在環(HIL)測試工具:dSPACE ,ETAS LABCAR ,Vector Informatik

8. 驗收測試階段

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

9. 維護階段

問題追蹤工具:JIRA,Bugzilla,Redmine

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

把敏捷開發加入V模型

最近一段時間,汽車交付越來越快,甚至出現一年一車的盛況。V模型的局限性也越來越明顯,V模型的測試過程是在開發過程的后期進行的,這意味著問題在測試階段被發現可能會導致較高的修復成本。

為了補足V模型的缺點,將敏捷開發和V模型結合使用是全新的方法,也就是將敏捷原則嵌入到V模型中。

想做好汽車軟件開發,先練好這個內功(想做好汽車軟件開發,先練好這個內功還是外功)

顧名思義,敏捷開發是一種迭代式、增量式的開發方法,強調對需求變化的快速響應和持續交付有價值的軟件,將其用于產品的開發,實現敏捷迭代。

通過結合敏捷開發和V模型,可以實現對汽車軟件開發過程的全面評估和改進,提高產品研發質量和可靠性。

結合完大改長這樣:

想做好汽車軟件開發,先練好這個內功(想做好汽車軟件開發,先練好這個內功還是外功)

原本按照V模型按部就班走,每個環節走得都不一樣快,走得快其實就可以有時間喘口氣等一等。當加入敏捷思維之后,這基本是一種讓大家都閑不下來的方法,一段時間內可能會比較容易提升效率和效果,但長久來看,如何通過激勵措施持續運作下去會是一個問題。

轉變并非易事,汽車行業幾十年來一直遵循V模型開發流程,未來怎么融合,也是現階段在考慮的事情。原文:想做好汽車軟件開發,先練好這個內功

版權聲明:本文內容由互聯網用戶自發貢獻,該文觀點僅代表作者本人。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如發現本站有涉嫌抄襲侵權/違法違規的內容, 請發送郵件至 舉報,一經查實,本站將立刻刪除。

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

相關推薦

精品国产一二三区在线影院| 日韩欧美亚洲每的更新在线| 亚洲性猛交xx乱| 欧洲吸奶大片在线看| 亚洲区精品久久一区二区三区| 校花主动掀开内裤给我玩 | 男的把j伸进女人p图片动态 | 狠狠干中文字幕| 亲密爱人之无限诱惑| 欧美日韩你懂的| 亚洲国产精品综合久久2007 | 亚洲最大看欧美片网站| 果冻传媒和91制片厂| 亚洲av无一区二区三区| 日本不卡在线观看| 丽玲老师高跟鞋调教小说| 婷婷开心深爱五月天播播| www.尤物视频.com| 国产精品麻豆va在线播放| 1024人成网站色| 国产午夜av秒播在线观看| 精品国偷自产在线视频| 免费网站看v片在线成人国产系列| 欧美黑人videos巨大18tee| 亚洲日本一区二区一本一道| 日韩电影免费观看| 久久人妻av无码中文专区| 市来美保在线播放| t66y最新地址| 国产精品亚洲二区在线观看 | 国产精品久久久久久久久kt| 适合一个人在晚上偷偷看b站| 国产一区二区三区不卡在线观看| 男女18禁啪啪无遮挡| 亚洲精品无码你懂的| 最新中文字幕一区| 久久大香线蕉综合爱| 好男人官网在线观看免费播放| aⅴ免费在线观看| 国产波多野结衣中文在线播放| 色88久久久久高潮综合影院|