多年來,汽車行業一直肩負著提高質量的使命。在普通汽車中的軟件應用程序激增,以及這些軟件的大小、體積、交互性和互操作性的巨大增長的推動下,挑戰在于將所有這些開發置于可控且穩健的環境中。OEM 和供應商需要確保他們對所有軟件的質量有更好的可見性和控制,并越來越依賴工具和編碼標準的使用來幫助為客戶提供質量保證,并避免代價高昂的召回和開發延遲的風險。
汽車領域的軟件質量
如今,汽車行業擁有 ISO 26262 功能安全標準和汽車行業軟件可靠性協會的 C 編碼標準 (MISRA-C –閱讀更多關于 MISRA的信息) 的雙重標準倡議,它們共同代表了汽車行業設定軟件質量目標的堅實基礎。
ISO 26262 于 2011 年 11 月獲得批準,它是對 IEC 61508 的改編,解決了汽車乘用車生產中的功能安全問題,并已被整個汽車行業廣泛采用。它要求使用強大的防御性編碼標準,例如 MISRA C。
MISRA C 編碼規則可以作為一個子集或全部部署,自 1998 年引入和 2012 年最近的第二次修訂以來已經成為事實上的標準。MISRA C 用于組織的開發組和供應商之間、承包商和客戶,以確保代碼質量和合規性。
MISRA C 的新版本主要支持使用 C 語言的 C99 標準以及 C90 以及為軟件開發人員帶來的額外好處,他們現在可以在其產品中利用 C99 在數據處理方面的增強功能。通過添加 C99 支持,該標準已更新為新規則、改進的解釋和定義,以確保正確包含 C 語言并符合標準。
軟件質量測試的觀點
不同的利益相關者群體通常對軟件質量有不同的看法和方法。然而,在日益多樣化的軟件生態系統中,有必要共享一個衡量質量的共同基礎。
對于汽車公司的高級管理人員來說,質量受監管要求和信托責任的影響很大,監控質量已變得與成本和進度一樣重要。此級別需要的是軟件質量的總體圖景、通用和一致的測量標準,以及當前和過去項目的趨勢線,特別關注即將發布的里程碑。
軟件工程團隊需要更詳細、更深入的質量關注點,但至關重要的是要與這一頂級衡量標準相匹配。
對于項目負責人和經理,必須隨時提供符合適用標準和總體質量目標的詳細狀態,并按開發人員和項目進行細分。
對于開發人員來說,質量工具必須直接集成到他們的軟件開發環境中,并針對最新的代碼更改生成精確的質量建議。
質量保證小組經常不得不依賴外部滯后指標,例如測試失敗和錯誤數據收集。他們真正需要的是一個專注于真正領先測量的質量系統,例如詳細的編碼合規性、代碼復雜性測量和其他固有的軟件質量工件。
部署陷阱
部署質量系統解決方案時有許多常見的陷阱:
· 適用于獨立代碼的開發人員的解決方案可能無法充分擴展到整個項目和整個組織
· 分析必須產生接近于零的誤報;所有診斷輸出必須反映真實的可尋址條件
· 同樣,任何質量一致性領域都不應被忽視或遺漏;每個編碼規則都必須通過有意義的診斷來解決
· 必須認識到實現完全合規的現實限制;需要復雜且受控地偏離規則遵守
· 較高組織級別的可見性必須與詳細的低級別合規工作相匹配;利益相關者之間的任何脫節都將導致被剝奪權利
汽車軟件改進
在過去十年中,汽車行業的軟件使用出現了動態增長,最近該行業在質量獲得和關注領域出現了一些深刻的趨勢。
雖然 QA·C 等分析工具在編寫代碼后一直應用于驗證和驗證模式,但近年來,開發人員在編寫實際代碼時強烈要求更多的前期使用——這清楚地體現了預防勝于治療。這首先來自要求供應商預先證明符合行業最佳實踐的客戶。其次,從多樣化和分布式的貢獻者到主要基于軟件的組件,他們希望減少不合規代碼的破壞性返工影響。
日本汽車市場正在對完全合規的偏離原則進行有趣的擴展。該行業正在聯合起來組織一組非常嚴格控制的偏離完全符合 MISRA 的案例。必須商定每一個涉及偏差的案例,并預先說明其理由、安全案例和其他背景信息。僅允許在日本汽車行業中應用已商定的一組偏差,這標志著編碼合規性的復雜性的擴展。因此,向全球市場供應產品的公司需要能夠針對個別市場條件驗證其代碼庫。
自動化工具解決方案
靜態分析是實現代碼質量的關鍵因素,是開發環境不可分割的一部分。將其擴展到整個企業需要一種能夠識別不同級別的用戶參與的方法。在 QA·Verify 中,PRQA 開發了一種工具,將 QA·C 和 QA·C++ 等靜態分析工具的分析輸出轉化為一組視圖,以覆蓋更廣泛的受眾。
以下是良好的質量管理報告系統所需的設施:
· 審查診斷輸出,提供給開發環境之外的受眾,是絕對必要的
· 探索潛在的不合規和代碼錯誤可促進利益相關者之間的協作
· 一項關鍵功能是呈現項目級指標的趨勢圖,涵蓋合規性、復雜性和其他合適的度量,從而產生跨項目比較和發布前警告信號
· 高級協作功能可以包括編碼決策注釋和所有相關利益相關者之間的共同理解,以及由源代碼細節的復雜公開支持的根深蒂固的代碼檢查環境
當采用這種使用自動化工具進行測試的整體方法時,可以提高生產力、代碼質量和代碼重用水平,從而加快新項目的上市時間并減少超支和返工。
汽車系統自動化工具
汽車行業正處于軟件應用程序快速增長和成熟的時期。人們認識到需要將功能增強與質量計劃相匹配,并將這一理念傳播到供應鏈中。認識到部署此類系統的缺陷后,可以在復雜且功能強大的自動化工具解決方案中找到答案,這些解決方案可為所有利益相關者提供質量分析。
審核編輯:郭婷
-
汽車電子
+關注
關注
3028文章
7994瀏覽量
167470 -
C++
+關注
關注
22文章
2113瀏覽量
73750
發布評論請先 登錄
相關推薦
評論