鄭志敏, 文健峰, 劉逸群, 孫 煒, 張利新
(中車時代電動汽車股份有限公司, 湖南 株洲 412007)
隨著汽車電動化、智能化、網(wǎng)聯(lián)化的快速推進,汽車產(chǎn)業(yè)進入了新的技術(shù)變革時期。在軟件定義汽車背景下,汽車中的軟件越來越多,如何提高汽車軟件研發(fā)的效率和質(zhì)量,已成為亟須解決的問題。
智能網(wǎng)聯(lián)嵌入式軟件產(chǎn)品為搭載嵌入式軟件的控制器,隨著嵌入式軟件產(chǎn)品集成度大幅升高,其復(fù)雜程度也呈幾何倍數(shù)增長[1],常規(guī)質(zhì)量管理體系已無法滿足IATF 16949體系對軟件產(chǎn)品提出的質(zhì)量管理要求及企業(yè)自身對產(chǎn)品質(zhì)量的追求[2]。當(dāng)前“通過管理人員維護文檔來實現(xiàn)軟件產(chǎn)品數(shù)據(jù)追溯”、“依賴實車裝配好后驗證軟件產(chǎn)品質(zhì)量”的傳統(tǒng)模式無法高效率、低成本地研發(fā)出新產(chǎn)品,故無法參與激烈的市場競爭。
針對上述問題,本文提出新能源商用車嵌入式軟件產(chǎn)品的質(zhì)量保障體系,通過梳理適用于新能源商用車的軟件產(chǎn)品質(zhì)量保障流程,開發(fā)信息化、數(shù)字化、智能化管理平臺來實現(xiàn)對嵌入式軟件產(chǎn)品的需求、開發(fā)、測試、缺陷及回歸的管理,以有效保證嵌入式軟件產(chǎn)品質(zhì)量。
軟件開發(fā)質(zhì)量保障體系即軟件全生命周期管理體系,包括了軟件開發(fā)及軟件管理的流程規(guī)范。通過對IATF 16949質(zhì)量管理體系、ISO 26262功能安全等理念與模式進行充分研究,建立完整的嵌入式軟件產(chǎn)品質(zhì)量保障體系,提高開發(fā)效率的同時保證了軟件質(zhì)量,全面提升了新能源商用車品質(zhì)。
按照新版IATF 16949標(biāo)準(zhǔn)要求,軟件開發(fā)流程必須符合ASPICE或CMMI標(biāo)準(zhǔn)要求。軟件開發(fā)過程中的步驟缺一不可,且商用車產(chǎn)品開發(fā)周期相對較長,傳統(tǒng)的開發(fā)流程無法滿足商用車車型多、需求變更頻繁、周期短的要求。本文研究了一套適用于新能源商用車的軟件開發(fā)“V模型”流程[3-4]。
1) 軟件開發(fā)“V模型”流程。為了在軟件快速迭代的同時保證軟件質(zhì)量,制定了適應(yīng)新能源商用車軟件產(chǎn)品開發(fā)的“V模型”流程,如圖1所示。通過對用戶需求分析、軟件架構(gòu)設(shè)計、軟件單元設(shè)計、自動代碼生成、軟件單元測試、軟件集成測試、系統(tǒng)集成測試全過程的數(shù)據(jù)進行追溯和管理,確保開發(fā)全過程可控。同時,為保證訂單響應(yīng)的及時性,開發(fā)流程設(shè)置為靈活配置流程,將軟件產(chǎn)品分為新型軟件產(chǎn)品、升級軟件產(chǎn)品及為適配定制化需求進行的配置變更軟件產(chǎn)品,可根據(jù)軟件產(chǎn)品類型進行特定的裁剪(詳見表1),以縮短產(chǎn)品開發(fā)周期,在提高開發(fā)效率的同時保證了軟件質(zhì)量。
表1 軟件開發(fā)“V”流程裁剪表
圖1 軟件“V模型”開發(fā)流程
2) 建立軟件產(chǎn)品“V模型”開發(fā)流程的測試能力。開發(fā)流程按項目類型進行特定的裁剪后,在開發(fā)階段配置相應(yīng)的開發(fā)測試工具鏈。硬件在環(huán)仿真測試是其中的重要環(huán)節(jié),將被測控制器與被控對象仿真模型進行集成,完成部件級、系統(tǒng)級以及整車級的功能測試、故障注入測試以及復(fù)雜工況循環(huán)測試等。圖2為硬件在環(huán)測試架構(gòu),其中,仿真模型與上位機試驗軟件進行實時數(shù)據(jù)交互,實現(xiàn)在線調(diào)參和監(jiān)控,通過各類IO板卡輸出控制器所需信號,并采集控制器發(fā)出的所有信號,從而實現(xiàn)硬件在環(huán)仿真測試。
圖2 硬件在環(huán)測試架構(gòu)
3) 建立軟件“V模型”開發(fā)、測試規(guī)范。建立軟件開發(fā)、測試規(guī)范在保證軟件產(chǎn)品質(zhì)量上也極為重要。軟件開發(fā)規(guī)范包括了控制算法建模規(guī)范、控制算法架構(gòu)規(guī)范、控制算法編碼規(guī)范、控制算法模型參數(shù)配置規(guī)范、模型命名規(guī)范;軟件測試規(guī)范包括軟件虛擬測試規(guī)范、測試用例編制規(guī)范、單元測試用例編制模板、集成測試用例編制模板、實車測試大綱等。
軟件管理主要為嵌入式軟件版本管理及變更管理。主要內(nèi)容為軟件版本編碼、版本測試、版本發(fā)布及刷寫、版本校驗、版本變更流程。
軟件管理流程的建立不僅可以實現(xiàn)整車軟件版本的自動化復(fù)查和校驗,還可以及時發(fā)現(xiàn)因程序不匹配導(dǎo)致的問題,從而提高現(xiàn)場支持效率;而且通過建立分類別的變更處理流程,可有效地實現(xiàn)軟件版本閉環(huán)管理,便于質(zhì)量追溯、質(zhì)量跟蹤,確保因變更引發(fā)的風(fēng)險被評估和管理。另外,基于變更建立防再發(fā)處理機制,指導(dǎo)后續(xù)軟硬件開發(fā),從而進一步保證了軟件產(chǎn)品質(zhì)量。
嵌入式軟件產(chǎn)品質(zhì)量保障平臺具有全生命周期、信息化、智能化、數(shù)字化等特點,是基于ISO 26262標(biāo)準(zhǔn)及軟件開發(fā)“V模型”理論[5-9],結(jié)合我司產(chǎn)品特點及軟件產(chǎn)品質(zhì)量保障體系思路自主開發(fā)的平臺,能夠有效地解決軟件開發(fā)中的以下問題:①需求及需求分析管理,軟件及測試開發(fā)、測試執(zhí)行,缺陷處理及回歸,軟件變更等活動流程的執(zhí)行和結(jié)果無法呈現(xiàn)和協(xié)同及易于丟失;②無法實現(xiàn)需求-用例-問題的追蹤;③無法保證軟件產(chǎn)品質(zhì)量管控效率。
本平臺涵蓋了人員管理、項目管理、需求管理、開發(fā)軟件管理、測試用例管理、測試問題管理、測試報表生成以及項目任務(wù)的分配和提示等數(shù)字化、信息化功能,并實現(xiàn)了測試工具鏈自動調(diào)用等智能化功能,是一款集成度高、支持多人協(xié)同的實用型軟件質(zhì)量管控平臺。開發(fā)平臺的建立保證了軟件高效開發(fā),保證軟件質(zhì)量的同時提升了軟件產(chǎn)品快速響應(yīng)市場能力。平臺架構(gòu)如圖3所示。
圖3 平臺架構(gòu)
本平臺實現(xiàn)了軟件產(chǎn)品質(zhì)量管理的信息化及數(shù)字化,提升了軟件產(chǎn)品質(zhì)量管控效率[10],其具備以下特點:
1) 集成度高。將項目需求、項目模型代碼、項目管理、測試、缺陷跟蹤等集成,以滿足測試管理、測試開發(fā)、測試執(zhí)行、測試總結(jié)等活動的嵌入式軟件測試協(xié)同工作平臺。
2) 支持多人協(xié)同工作。通過SVN等工具,可以支持多人協(xié)同合作完成測試工作。統(tǒng)一上傳SVN服務(wù)器,不必?fù)?dān)心個人電腦數(shù)據(jù)丟失。
3) 實現(xiàn)需求-用例-問題的追蹤。建立測試需求與測試用例、測試用例與測試問題之間的關(guān)聯(lián),提供圖形化界面顯示需求-用例-問題之間的追蹤關(guān)系,通過設(shè)計測試用例,將其驗證的測試需求、關(guān)聯(lián)的測試模型/測試代碼、發(fā)現(xiàn)的測試缺陷關(guān)聯(lián)起來,以實現(xiàn)軟件的閉環(huán)管理。
本質(zhì)量保障平臺為智能化平臺,可以提升軟件產(chǎn)品開發(fā)效率。平臺將測試工具鏈進行了集成,主要包括自動調(diào)用已有的仿真測試平臺工具鏈,執(zhí)行軟件的代碼生成、編譯、下載、靜態(tài)檢查、動態(tài)測試、HIL測試等工作。對于自動調(diào)用的測試工具,提供配置界面,方便配置測試工具的功能特性參數(shù)。同時,根據(jù)工具鏈license數(shù)量和應(yīng)用場景,提供合理的license管理策略,包括人工申請(SVN觸發(fā))優(yōu)先、閑時全負(fù)荷運行、用即分配、不用即釋放等,避免license被過度占用。
面對當(dāng)下競爭激烈的市場,智能網(wǎng)聯(lián)產(chǎn)品不斷地快速推進,從而導(dǎo)致其軟硬件集成度、復(fù)雜度變高,依賴實車驗證的傳統(tǒng)軟件開發(fā)方法已經(jīng)力不從心,嵌入式軟件產(chǎn)品質(zhì)量保障體系是解決智能網(wǎng)聯(lián)技術(shù)安全落地問題的唯一路徑。
在智能網(wǎng)聯(lián)產(chǎn)品開發(fā)項目中,按照軟件產(chǎn)品質(zhì)量保障體系對開發(fā)全過程進行管理,形成了高效的管理閉環(huán),取代了堆人或堆車的方式,極大程度上縮短開發(fā)周期,同時有效地保證了軟件產(chǎn)品的質(zhì)量。
目前,應(yīng)用此軟件產(chǎn)品質(zhì)量保障體系的智能網(wǎng)聯(lián)產(chǎn)品已有15 000多套。據(jù)統(tǒng)計,單個功能模塊開發(fā)中軟件開發(fā)效率提升了88%,BUG數(shù)減少了83%。
本文基于ISO 26262標(biāo)準(zhǔn)及軟件開發(fā)“V模型”理論,結(jié)合新能源商用車產(chǎn)品特點及軟件產(chǎn)品質(zhì)量保障思路,自主開發(fā)了嵌入式軟件質(zhì)量保障體系,該體系具備項目管理、用戶及權(quán)限管理、測試需求管理、測試模型/代碼管理、測試用例設(shè)計管理、工具鏈自動調(diào)用等功能,更適應(yīng)企業(yè)實際管控需求。實現(xiàn)了整車軟件開發(fā)過程的全流程化管理,保證了軟件開發(fā)過程文件及程序的可追溯性和一致性,提升了軟件維護效率,從而提升了研發(fā)流程成熟度及產(chǎn)品成熟度,保證了產(chǎn)品穩(wěn)定且高質(zhì)量地輸出。