2022-01-09 10:35:26|已瀏覽:341次
導讀:隨著汽車電子技術在汽車產業的廣泛應用,汽車電控系統和網絡日益復雜,而汽車產品更新越來越快,要求電控單元開發周期越來越短,汽車電子軟件開發管理難度增大,復用性和移植性變差,因此,采用規范的軟件開發平臺,提高軟件開發效率和質量已迫在眉睫。本文主要介紹了構建軟件開發環境的背景、可借鑒的實施技術方案、構建統一管理平臺所取得的效果和遺留問題對策。
1、引言進入21世紀,特別是最近十年,智能網聯和新能源車型的開發進入快車道,汽車行業軟件開發在整車開發中的占比越來越高,軟件開發不再是一個小部門完成零部件類開發,而是需要從整車需求定義開始,整合電子電氣架構開發,到系統架構、軟件架構、軟件代碼開發、單元測試、系統測試直到整車測試一整套完整的V-model模型開發流程支持。由于軟件開發對團隊作戰、質量控制提出了更高的要求,因此構建一個全價值鏈軟件開發環境成為汽車研發產品開發管理中的重要一環。
隨著電子技術的發展,商用車電子電氣系統越來越復雜,整車的安全性、舒適性、娛樂性包括發動機控制及排放升級,任何一項新技術的應用和提升都離不開電子技術。整車上的各種ECU(Electronic Control Unit)越來越多,相互之間交互的信號越來越多、網絡的通信方式越來越復雜,如此復雜的電控系統對整車的功能、性能、成本、開發周期都有更高的要求,很多時候它決定了整車產品的性能和競爭力達成。電控系統開發大部分工作集中在嵌入式軟件開發和測試階段,針對軟件開發和測試的管理,要求建立一套完善的軟件開發管理平臺。
2、軟件開發環境建設必要性和緊迫性企業對業務需求梳理后認為,建立軟件開發環境已經刻不容緩,迫在眉睫。
1)電控和智能網聯軟件開發在動力總成及整車產品中占據越來越重要的地位,決定著產品性能和競爭力達成。
2)軟件開發是多部門、多任務、多地點的協同開發模式,提升軟件開發質量、效率,保證數據安全。
3)軟件開發目前不受控,各個項目組內部管控,數據存放在個人手中,存在信息安全風險。
4)軟件開發涉及開發經驗和技術能力的積累,需要軟件開發環境項目提供技術支持,將企業軟件開發知識資產積累和沉淀。
5)當前企業多個產品開發項目已進入全面鋪開階段,項目之間急需協同開發,并對需求和代碼、測試進行有效管控,急需一個成熟的系統平臺支持。
3、軟件開發環境建設技術方案
項目預研究階段,項目組調研獲悉國內軟件開發行業已大部分建立了完整的開發體系,并通過了高等級的標準認證。汽車行業部分企業已建立完成標準的開發環境。部分汽車企業也通過了A-SPICE(Automotive Software Process Improvement and Capacity Determination)成熟度認證。某企業在構建軟件開發環境前,電控軟件開發環境處于空白,僅僅使用了部分開發工具軟件,沒有完整的軟件開發流程環境,軟件開發數據存放在個人計算機內,軟件需求、代碼、測試未建立關聯關系,沒有版本管理和配置管理,軟件發放和交換靠人工拷貝或郵件,無系統追蹤記錄。與國內同行業開發水平存在較大差距,不利于核心數據的信息安全和可靠性。
在制定軟件開發環境技術方案過程中,首先考慮導入一款成熟的工程控制系統,其主要功能包含如下幾點:
配置管理:梳理配置管理流程,配置管理包括代碼,模型以及相關文件,實現版本、分支、合并、變更以及對比等功能,利用項目變型支持并行軟件的開發。
變更管理:定義變更管理、缺陷管理、質量管理流程。定義變更的涉及范圍,定義變更流程,實現變更的可控和追蹤記錄。實現缺陷追蹤管理,實現測試結果和缺陷的追溯,結合質量管理,將質量和缺陷流程數據作為變更原因驅動變更流程。
檢查驗證:測試用例管理、測試計劃管理、測試目標管理、測試任務和測試結果。實現測試用例分級分類,實現需求和測試的雙向追溯,提供需求覆蓋度計算,測試執行率計算等。
軟件質量:支持產品測試、評審等質量活動中產品缺陷的提出,缺陷具有分析、追溯流程。
需求追朔性:所有工程文件必須關聯,需求與代碼、測試文件等建立關聯關系,具備可追溯性。能夠實現需求與子需求之間的追溯。
需求分解:定義需求結構,需求管理流程。實施需求過程管理,包括:系統需求、軟件需求、硬件需求,同時在系統需求層面實現ISO26262功能安全部分。
版本控制:軟件項目和軟件代碼的版本管理, 基線管理以及軟件代碼的權限控制,主流IDE的集成。
文檔管理:軟件開發環境中所有文檔具備樹形結構化管理方案,文檔創建核發布有審批流程和生命周期狀態定義。
導入系統平臺同時,需要同步制定企業軟件管理各種規范標準,具體包括項目管理、需求管理、軟件代碼、測試文檔等開發文檔的命名規范、評審規范,版本管理規范等。
為了保證軟件代碼和相關文檔的信息安全,除了系統中設定相關權限管理外,利用當前云桌面技術,所有應用都在云桌面上運行,包括軟件開發環境平臺、軟件開發工具等,所有涉及到的開發和測試數據都保存在云服務器上,并進行適當的加密處理。確保軟件數據的完整性和安全性。
經過項目組大量的評審和測試,最終確定應用一款成熟的ALM(Application Lifecycle Management)系統作為軟件開發環境基礎平臺,在平臺上實現軟件項目全過程的管理,包括需求分析、設計、開發、測試、代碼編譯發布等,并能夠按照業界實踐對其過程進行管控和各過程間的連接,能夠充分滿足汽車行業客戶對于車載軟件研發管理系統平臺的功能訴求,過程示意如下:
在軟件開發的全生命周期管理的全過程,能夠與常規應用的工具進行集成,包括matlab、Microsoft Word、Microsoft Excel、Eclipse、Visual Studio等。
4、軟件開發環境平臺構建實現效果
1)完成需求過程管理,包括:系統需求、軟件需求、硬件需求,同時在系統需求層面實現ISO26262功能安全部分。
2)完成測試管理:測試用例管理、測試計劃管理、測試目標管理、測試任務和測試結果。實現測試用例分級分類,實現需求和測試的雙向追溯,提供需求測試覆蓋度計算,測試執行率計算等。
3)管理缺陷的追蹤流程,對缺陷、變更、質量等問題提供狀態分布圖、趨勢圖、分類圖、延誤圖,實現測試結果和缺陷的追溯。
4)追溯關系,建立需求、測試、缺陷、模型、代碼之間的關聯關系和可追溯性管理。
5)根據現有開發流程,定義配置庫結構,定義主線和分支管理規則,軟件項目和軟件代碼的版本管理,基線管理以及軟件代碼的權限控制,主流IDE(Integrated Development Environment)的集成。
6)建設變更管理標準體系,實現數據過程版本管理,修改留有痕跡和記錄,避免犯同一錯誤或同一錯誤重復出現,借助系統進行變更受影響范圍快速分析,對變更進行的實時監控。
7)系統的集成,打通整個軟件開發工具鏈,整合電子電氣架構開發工具到一體化的電控軟件開發環境平臺中,并實現與測試平臺集成,將 電控軟件開發環境中測試計劃、測試報告傳到測試平臺。
8)建立知識共享庫、集中共享企業和各專業的業務規范、將知識轉化為可以應用的形式。
9)實現產品數據的有效性和安全性控制,保證數據的準確性、完整性和一致性,實現對知識資產的有效保護。
10)標準合規性的支持,遵循國際和國內標準,作為汽車行業A-SPICE HIS2級部分流程的編寫和管理工具,管理部分活動和交付物。
5、軟件開發環境平臺建設主要創新點和價值貢獻
1)建立起一整套符合企業業務模式的軟件產品生命周期管理流程,并在搭建的電控軟件開發環境系統中落地。借助軟件開發環境,支持多項目開發,實現V Model開發模式,對軟件的配置項進行過程管理,利用系統集成實現跨專業的協同。
2)借助軟件開發環境平臺建設,企業實現軟件代碼開發全面云上運行,一方面保證軟件代碼數據安全,另一方面,實現云上辦公,充分利用云上辦公資源,實現硬件資源的靈活部署和分配。同時,可以實現遠程辦公,實時處理開發過程中遇到的各種問題,大大提高了軟件開發效率和質量。
3)通過軟件開發環境搭建,對軟件開發過程進行全面規范化,按照A-SPICE 成熟度模型進行完善軟件開發流程,并借助軟件開發環境固化流程,達到開發過程質量受控,開發測試全過程可追溯、可審計,有力保證了軟件開發質量,提高汽車產品可靠性。
6、遺留問題與對策
軟件開發環境構建完成后,軟件代碼在ALM系統中管理,企業產品數據變更管理在PDM(Product Data Management)系統中管控,如何將軟件代碼作為零部件進行發布和變更,帶來另外一個問題。即軟件代碼與產品變更單之間的關聯關系需要建立并管控。
因此,企業需要在構建軟件開發環境平臺同時,考慮建立ALM與PDM之間的接口集成,并監控控制規范和校驗流程,確保軟件代碼在準確的時間,搭載到準確的產品車型上,同步刷寫到下線產品車輛中,實現從產品開發到生產制造的一條龍管理。
本文由培訓無憂網長沙牛耳教育課程顧問老師整理發布,希望能夠對想在長沙參加影視動漫培訓的學生有所幫助。更多課程信息可關注培訓無憂網電腦IT培訓頻道或添加老師微信:15033336050
注:尊重原創文章,轉載請注明出處和鏈接 http://m.hebeijilong.cn/news-id-13960.html 違者必究!部分文章來源于網絡由培訓無憂網編輯部人員整理發布,內容真實性請自行核實或聯系我們,了解更多相關資訊請關注程序開發頻道查看更多,了解相關專業課程信息您可在線咨詢也可免費申請試課。關注官方微信了解更多:150 3333 6050