汽車嵌入式軟件開發(fā)中,基于模型開發(fā)的方法非常普遍,經(jīng)常被客戶及一些評估師問到的問題是:
基于模型開發(fā),要包括哪些活動?
這些活動與 ASPICE 中的過程(SWE.1 ~ SWE.6)是如何映射的呢?
軟件開發(fā)過程中,應(yīng)用模型開發(fā),是指:采用具備一定語法和語義含義的模型,來全部或部分完成軟件需求、軟件設(shè)計、并基于模型來生成代碼。
根據(jù)使用模型的目的,基于模型開發(fā)可以映射到“SWE.1 軟件需求分析”、"SWE.2 軟件架構(gòu)設(shè)計"和"SWE.3 軟件詳細(xì)設(shè)計和單元構(gòu)建"等 ASPICE 中的各個 Process。
當(dāng)前比較普遍的用法是用模型進(jìn)行設(shè)計、基于模型生成代碼、在模型及代碼層面進(jìn)行驗證。使用模型來定義需求的情形不是特別多。
接下來,我們就基于當(dāng)前比較普遍的這種用法來進(jìn)行分析:
一、基于模型開發(fā),通常包括哪些活動呢?
① 模型設(shè)計
基于模型設(shè)計的輸入(通常是軟件需求和軟件架構(gòu)設(shè)計)和模型規(guī)范(如: 基于 MAAB 的模型規(guī)則),進(jìn)行模型設(shè)計。
② 模型靜態(tài)分析
使用工具對模型進(jìn)行分析,包括:
分析模型是否符合建模規(guī)范,如:使用 Simulink Verification & Validation 檢查是否符合 MAAB。當(dāng)現(xiàn)有的規(guī)則無法滿足要求時,工程師也可以自己動手定制一些檢查規(guī)則項
模型的形式化驗證,如:使用 Simulink Design Verifier 檢查是否有整數(shù)溢出,或者是否有死邏輯等
③ 模型評審
評審模型的內(nèi)部邏輯、評審其是否與模型設(shè)計的輸入相一致。也就是評審設(shè)計的模型否能正確的實現(xiàn)模型設(shè)計的輸入。
④ 模型動態(tài)驗證
一般是通過模型在環(huán)(MIL)測試的方式對模型進(jìn)行動態(tài)驗證。
測試的目的有兩個:
功能測試:測試“模型設(shè)計的輸入”是否被正確的實現(xiàn)了,往往用比如“需求覆蓋度”的覆蓋度指標(biāo)進(jìn)行衡量。
模型內(nèi)部邏輯的正確性:往往用結(jié)構(gòu)化覆蓋度指標(biāo)進(jìn)行衡量,比如條件覆蓋(Condition Coverage)、判定覆蓋(Decision Coverage)、MC/DC 覆蓋等。
⑤ 自動代碼生成
進(jìn)行一定的代碼生成的定制化設(shè)置、并使用工具生成代碼。
在這個過程中“用戶的定制化設(shè)置”和"生成代碼的工具"都有可能引入錯誤。
因此,在對代碼質(zhì)量要求很高的場合,會希望做“⑥等效性測試”。
⑥ 等效性測試
通常采用軟件在環(huán)(SIL)測試和處理器在環(huán)(PIL)測試的方式,用來驗證代碼和模型的一致性。
SIL 是將模型生成的代碼通過 DLL 的方式運行在 Windows 平臺上;PIL 是將生成的代碼運行到目標(biāo)處理器上,兩種模式使用的編譯器是不同的,SIL 使用的就是 Windows 下的編譯器,比如 Visual Studio C++ 或者 LCC 編譯器,而 PIL 使用的是目標(biāo)編譯器。
二、模型開發(fā)活動,與ASPICE中的過程(SWE.1 ~ SWE.6)是如何映射的呢?
(1) SWE.3 軟件詳細(xì)設(shè)計和單元構(gòu)建
模型設(shè)計是設(shè)計到可以生成代碼的程度,這里面就包括有軟件單元的詳細(xì)設(shè)計。
基于模型生成代碼,就是軟件單元的構(gòu)建。
注意:有些時候,當(dāng)模型本身不足以全面、清晰的呈現(xiàn)設(shè)計時,是需要有一些補充的文字信息描述的。
(2) SWE.4 軟件單元驗證
(3) SWE.2 軟件架構(gòu)設(shè)計
有些時候,在模型設(shè)計中,會包括SWC之間的交互及接口的設(shè)計,這個部分是屬于軟件架構(gòu)設(shè)計的。
(4) SWE.5 軟件集成和集成測試
基于模型開發(fā)時,模型中SWC與SWC之間的集成步驟,體現(xiàn)的不明顯。SWC之間的接口的一致性,往往是由建模工具來檢查和保證的。
在"④模型動態(tài)驗證"和"⑥等效性測試"時,會測試SWC之間的交互,這個部分的測試屬于模型的集成測試。
-
處理器
+關(guān)注
關(guān)注
68文章
19899瀏覽量
235434 -
集成電路
+關(guān)注
關(guān)注
5425文章
12076瀏覽量
368593 -
嵌入式
+關(guān)注
關(guān)注
5152文章
19678瀏覽量
317790
發(fā)布評論請先 登錄
客戶案例 | 某新能源車企依托Atlassian工具鏈+龍智定制開發(fā)服務(wù),打造符合ASPICE標(biāo)準(zhǔn)的研發(fā)管理體系

評論