MathWorks在2011b版 (R2011b) MATLAB和Simulink產(chǎn)品系列中新引入了 Simulink Code Inspector,該產(chǎn)品促進(jìn)了對(duì)基于 Simulink模型生成的源代碼的檢查。航空工程師們現(xiàn)在可以使用 Simulink Code Inspector 來(lái)創(chuàng)建詳細(xì)的模型到代碼和代碼到模型的檢查報(bào)告,幫助實(shí)現(xiàn)了 DO-178B 表 A-5 中規(guī)定的源代碼驗(yàn)證和可追蹤目標(biāo)。
傳統(tǒng)上,根據(jù)需求驗(yàn)證代碼是一個(gè)耗時(shí)且容易出錯(cuò)的過(guò)程,它要求根據(jù)項(xiàng)目檢查表手動(dòng)逐行檢查代碼。而 Simulink Code Inspector 是使用自動(dòng)化過(guò)程根據(jù)模型來(lái)驗(yàn)證生成的代碼結(jié)構(gòu)。該過(guò)程基于所生成代碼中的運(yùn)算、運(yùn)算符和數(shù)據(jù)系統(tǒng)性地比較模型中使用的功能塊、參數(shù)和設(shè)置,從而檢查結(jié)構(gòu)等同性。
Simulink Code Inspector 也會(huì)生成驗(yàn)證和可追蹤性報(bào)告,這些報(bào)告可以進(jìn)行查看、存檔并與認(rèn)證機(jī)構(gòu)共享,可極大縮減驗(yàn)證時(shí)間和成本。通過(guò) Simulink Code Inspector,工程師們可以通過(guò)使用高完整性系統(tǒng)中所常用的 Simulink 功能塊和模型參數(shù)的特定子集來(lái)準(zhǔn)備代碼檢查的模型。接著,他們可以根據(jù)模型生成并檢查代碼,并審核檢查和可追蹤性報(bào)告。
用于系統(tǒng)設(shè)計(jì)與仿真的 Simulink、用于生成飛行代碼的 Embedded Coder 以及用于檢查源代碼的 Simulink Code Inspector,這三個(gè)產(chǎn)品的結(jié)合為航空工程師們提供了一個(gè)適用于
基于模型的設(shè)計(jì)和 DO-178 開(kāi)發(fā)和驗(yàn)證的高度自動(dòng)化和靈活的環(huán)境。
MathWorks 航空航天和國(guó)防工業(yè)經(jīng)理 Jon Friedman 說(shuō):“開(kāi)發(fā)高完整性系統(tǒng)的航空工程師們不斷經(jīng)受著各種壓力,他們不但要滿足自己所設(shè)計(jì)的系統(tǒng)的嚴(yán)苛要求,而且還要適應(yīng)行業(yè)對(duì)開(kāi)發(fā)速度和品質(zhì)日益增強(qiáng)的要求。由于已經(jīng)建立基于模型的設(shè)計(jì)來(lái)做作為設(shè)計(jì)流程,這些工程師們將對(duì) MathWorks 工具的利用范圍擴(kuò)大到了要求認(rèn)證的項(xiàng)目和大型程序。Simulink Code Inspector 使工程師們能夠在減少認(rèn)證瓶頸和優(yōu)化認(rèn)證過(guò)程方面再次向前邁出了一大步?!?nbsp;
圖注:飛機(jī)自動(dòng)駕駛儀代碼檢查報(bào)告