◆李鶴群 王丹 鄧凱 / 文
編者按“2018年全國質量標桿”名單新鮮出爐!38家單位獲封年度全國質量標桿。其中,上海4家,分別是泛亞汽車技術中心有限公司、上海無線電設備研究所、沃爾沃建筑設備(中國)有限公司、上海燃氣(集團)有限公司。為發揮優秀企業的標桿引領作用,促進“質量標桿”經驗交流借鑒,推動企業實現質量提升,本刊自本期起將陸續刊登獲獎企業最佳質量實踐和經驗,敬請關注。
隨著物聯網、大數據、無人駕駛、智能出行等技術的普及,汽車行業正發生著一場勢不可擋的數字革命,整個產業正在發生翻天覆地的變化。互聯網企業和新勢力企業憑借自身的優勢紛紛快速進入汽車行業,并引領汽車市場的數字革命。面對競爭,傳統汽車企業亟需網聯化、電動化、智能化、數字化轉型。其中,數字化更是汽車研發實現轉型的必由之路。
與此同時,未來定義汽車價值的不再是傳統的技術與性能指標,而是以人工智能為核心的軟件技術。汽車電子電氣軟件質量將成為未來汽車的生命活力所在。為此,泛亞汽車技術中心(以下簡稱“泛亞”)在軟件質量提升方面做了大量的工作,于2014年構建了滿足CMMI Level3要求的軟件開發過程體系(以下簡稱SWDP,Software Development and management Process)并在各個自主軟件開發項目中得到了部署和應用。然而,隨著團隊復雜度的提高,SWDP運行的困難日益凸現。主要體現在:

(1)系統實施依托大量工程開發文檔和管理文檔,增加了工程師的負擔;
(2)項目團隊大多跨職能組,各組之間的溝通存在職能墻,影響了開發效率;
(3)基于文檔的開發方式導致了需求追溯困難、測試完整性難以確定等問題,從而影響項目的質量;
(4)基于文檔的項目管理和質量管理方式使得信息的溝通不及時、不透明。
本文將以泛亞的實踐為例,介紹軟件開發及質量管理體系數字化技術的研究與實踐。

圖1 三層功能體系
軟件開發及質量管理體系數字化技術將公司SWDP從系統運行角度進行轉化,通過縱、橫雙向集成兩個維度開發需求解決方案,從而建立軟件開發和質量管理數字化平臺。平臺縱向打通全生命周期開發工具鏈路,實現軟件持續集成、測試、需求開發和管理等功能;橫向貫穿跨職能協作開發功能,實現共平臺的軟件項目管理、問題管理、過程管理、度量管理。同時,平臺涵蓋軟件持續集成、自動化測試、需求管理、自動度量管理、項目管理等功能,打通工程開發過程之間的溝通壁壘,實現了SWDP的系統化運轉,減少了線下文檔的管理,實現自動化、跨團隊的線上協作開發。此外,通過流程的自動化、度量數據的自動化收集,實時監控和分析數據背后的問題,持續改進開發流程和產品質量,從而實現軟件開發的全面質量管理。
軟件開發及質量管理體系數字化技術實踐是一項系統工程,基礎工作尤為艱巨。做好頂層設計,自上而下穩步推進,才能搭建好整個體系并為后續的精益化提升奠定堅實的基礎。公司于2014年成立了CMMI軟件過程改善組,導入了軟件開發行業普及的CMMI3模型。2015年初,又在CMMI軟件過程改善組下特設軟件開發和質量管理數字化研發團隊,著手構建汽車電子軟件開發和管理協同平臺,實現SWDP數字化的系統目標。團隊成員收集了多個項目的軟件開發及質量數據,從工程開發、質量管理、項目管理幾大領域入手,著重分析了影響開發效率及質量的問題原因,設計了如圖1所示的三層功能體系,從而最終明確了軟件開發及質量管理體系數字化技術實踐的目標:通過構建互聯互通的協同開發管理平臺,實現工程開發智能化、質量管理透明化及項目管理高效化。

圖2 需求、設計、實現、測試及任務的鏈接創建和管理示意圖
根據梳理出的過往項目的痛點難點,團隊結合軟件項目特點打造軟件開發及質量管理數字化平臺。該平臺打破傳統的獨立開發模式,提出了點線面的軟件開發和質量管理數字化平臺設計思路,實現了電子電控軟件研發數字化管理。點,即產品數字化,通過工具實現各領域自動化。線,即業務數字化,通過工具鏈集成實現業務鏈自動化。面,即過程數字化,實現SWDP全程管理在系統的落地。通過橫向管理鏈交織縱向工具鏈的雙向集成,最終形成了點線面一體的軟硬件協同開發管理系統解決方案。
3.2.1實現軟件開發過程數字化
(1)實現軟件開發工具鏈互通互聯
平臺應用開放式生命周期協作服務,為軟件工程中的需求、設計、實現、測試交付物提供了互通互聯的實現方案。圖2顯示了從架構需求到功能需求到軟件需求的分解鏈路,以及需求到軟件代碼或模型、測試用例、開發任務的關聯,通過互通互聯的協作開發,提高了團隊生產率。

圖3 需求交換場景示意圖
(2)應用ReqIF技術,實現軟件需求管理智能化
需求管理是工程開發中重要的組成部分,在眾多不成功項目中,有很大比例的失敗是源自需求問題。平臺創新引入了ReqIF技術,開發ReqIF引擎作為一種標準的需求交換格式,并通過定義和傳輸符合ReqIF格式的XML文件來實現整車廠和各個供應商的需求協同管理。圖3顯示了不同類型的需求是如何在整車廠和供應商之間實現無縫的信息交換和傳遞。
(3)數字化、自動化系統測試
平臺通過建立測試用例庫,實現系統測試的數字化,創新地在測試用例與需求、任務、測試臺架之間打通鏈路,實行了系統測試的數字化。
·測試用例數字化
基于系統創新實現測試用例庫的多元應用,從而實現了測試用例管理的數字化。主要體現在:支持excel文件的測試用例導入導出應用,利于存儲和分發;條目化管理測試用例,利于維護和追溯,如圖4所示;支持自動測試、手動測試的多維度篩選,強化定制化操作;支持用戶篩選某特定平臺下的測試用例,利于測試用例的復用管理;多角度統計應用,指導測試實施活動改進等。

圖4 測試用例管理
·測試追溯數字化
測試用例到需求之間通過建立驗證的鏈接關系,平臺可以自動統計出測試用例對需求的覆蓋率,確保需求測試無遺漏,創新解決了通過文檔管理測試用例時,測試用例對需求的統計依靠人工點數,不僅容易遺漏,準確性也存在一定風險的問題。另一方面,測試用例與執行結果關聯,通過系統可以自動統計出測試用例的執行覆蓋率,從而可以計算出需求的測試執行率,從而判斷測試的充分性,以便作出決策。
HIL(Hardware In Loop)硬件在環測試已經成為ECU開發流程中非常重要的一環。它不僅減少了實車路試的次數,縮短了開發時間和降低成本,而且大大提高了ECU的軟件質量,降低車廠的質量風險。平臺充分考慮了HIL自動化測試的可能性,如何將平臺中的集成產物(軟件包)與自動化測試臺架、自動化測試用例相結合,是平臺開發的主要創新思路之一。持續集成工作后,將集成打包好的軟件包自動部署到自動化測試臺架上,同時篩選出自動化測試腳本發送到自動化測試臺架上,并啟動自動化測試。自動化測試臺架將運行的結果、測試的統計數據以報告的形式反饋給測試用例管理模塊,完成一次自動測試任務,從而建立了持續集成、構建、自動化測試的流水線作業模式,大幅縮短了軟件的開發驗證進程,提升了軟件的可靠性。
·測試缺陷智能化
當某條測試用例的執行結果不通過時,可以在平臺中一鍵提交到缺陷管理模塊,同時基于平臺實現的測試用例與需求追溯的數字化,平臺提供了從需求→實現→測試→缺陷的追溯關系圖,為缺陷原因分析提供了快速的分析路徑。
3.2.2實現項目管理數字化
(1)以工作項驅動軟件全過程開發及部署
針對軟件項目管理中常見的溝通協作問題,系統搭建了一套以工作項驅動的全過程開發方法,以提高項目管理效率,幫助項目團隊達成目標。

圖5 項目計劃動態調整

圖6 跨項目人力資源配置

圖7 項目關注的多功能儀表盤
·打造動態項目計劃
但是,與此同時,還需要注意隨時監測辦公室工作人員的同理心是否使恰當,因為過度使用同理心會導致道德判斷失當,從而使得辦事突破底線,置制度于不顧,將服務對象的利益當作自己的利益,最后導致對他人的錯誤視而不見,甚至自身行為失當。
在平臺的計劃功能中,項目經理可以新建工作包,將工作包直接分派給相關技術負責人,由負責人進行具體的細化。同一個子系統的開發任務或是具有相關邏輯性的工作項,可以放在同一個工作包中。工作項之間通過系統建立前置、后繼關系。如圖5所示,當各工作項的人力資源投入發生變化時,系統的甘特圖會自動進行更新。
·合理利用資源池
為了防止部分身兼數個項目的開發人員對各項目的資源投入進行過度承諾。系統引入了資源池概念。如圖6所示,系統制定每位開發人員可支配的工作總量,一般情況下不超過100%。同時支持配置非工作日的加班工作量。當人力資源發生沖突時,由系統驅動各項目經理完成資源的協調,確保所有排入計劃的資源都是可獲取的。
(2)數字化儀表盤的開發與應用
軟件項目開發過程中,要客觀地反映項目質量、進度狀況,就必須要用數據來說話。平臺基于OSLC技術提供了多功能儀表盤以及創新的組織級綜合儀表盤,如圖7及圖8所示。

圖8 組織級綜合儀表盤
創新的數字化儀表盤開發,大大減少了項目經理制作項目數據的工作量。以圖表的形式向各相關人展示項目狀態,是本系統的一大亮點。

圖9 平臺狀態遷徙圖
3.3.1系統保障
在系統部署數字化構架的同時,公司也多管齊下,多角度完善各項架構運行保障工作,并不斷對流程進行優化,最終形成當前的數字化管理體系,實現了軟件開發及質量管理的飛躍。
(1)組織制度保障
在組織制度及政策方面,一方面通過專門成立CMMI軟件過程改善組保證此項工作的權責到人,另一方面通過公司決議實施公告流程正式通告該平臺在公司管理系統上的正式啟用,從公司流程上保證平臺的廣泛使用;
(2)技術保障
公司采用將管理技術及流程嵌套在平臺內的運行模式,確保開發及質量管理工作的即時推進,通過狀態遷徙圖明確任務的當前結點和相關責任人,如圖9所示;
(3)培訓實施保障
在提升全員相應技能方面,CMMI軟件過程改善組通過公司在線學習平臺E-Learning系統展開全員培訓,詳細解讀系統各功能塊,讓全員熟悉各功能塊具體操作步驟,讓系統的使用更清晰、更高效。
3.3.2領域間橫向推廣
2014年起至今,本平臺已從車身電子及電氣化領域陸續推廣應用到娛樂信息系統、駕駛輔助、動力總成、電氣化、底盤等各個領域的數十個項目開發中。通過自主軟硬件體系標準和平臺的部署,大幅提升了產品的開發質量,提高了開發效率,成功支持了多款量產車的開發。此外,該標準體系以及根據體系梳理的最佳實踐及相關模板、Checklist等已經推廣和部署到公司實施軟硬件開發的各個部門應用,實現了由車身領域到汽車電子全領域的全面橫向推廣。
3.3.3工程開發過程縱向推廣
本平臺已廣泛應用在如上各個項目中,由軟件開發本身推廣到架構設計、系統驗證、標定等多個工程開發領域。截至目前,平臺中涉及到需求開發、軟件建模及集成、系統測試、質量保證等角色的用戶(包括供應商)已有700多人,部署的需求工件超過5萬條,測試用例超過1.3萬條;平臺中技術維度的需求開發、持續集成、系統測試等多個開發工具的部署,不僅建立了互聯互通的開發環境,提高了工程師的開發效率,而且大幅減少了人工出錯的機會;平臺還支持可定制的評審流程及評審類型,將評審活動貫穿整個開發過程,通過盡早發現問題,不斷提升產品質量;平臺在管理緯度上為項目經理及管理者提供了多角度、全過程的儀表盤,以便精確、實時展示項目狀態,指導項目管理活動開展;此外,平臺通過自動收集工程開發中的各項數據,支持精細化的數據分析及預測功能,目前應用的功能又通過對需求測試覆蓋率自動統計分析,識別測試短板;通過預測產品質量,識別測試的退出時機,協助項目經理做出科學決策。

軟件開發及質量管理體系數字化技術實踐從項目管理、工程開發、質量管理三大領域入手,針對十一大系統功能,由點及線,構建工程開發縱向集成、項目管理及質量管理橫向集成的兩條工具鏈,并由線及面,建立互聯互通、充分協同的軟件開發和管理平臺,從而實現了產品、業務及過程的數字化管理,為整車軟件開發的高效高質量運行提供了強有力的保障,也為車企數字化建設提供了知識儲備和技術基礎。