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