基本介紹
- 中文名:模型在環
- 外文名:Model in the Loop
- 簡稱:MIL
- 領域:計算機
簡介,模型驅動工程,基於模型的測試,嵌入式系統,
簡介
嵌入式系統需和其運作的環境互動,一般會預期有合理的感測器信號為其輸入,也會依輸入及系統設計來驅動實體系統。為了使系統正常工作,需要將嵌入式系統的環境納入仿真考量範圍內。若嵌入式系統模型和環境模型連線,一起進行仿真,則即稱為模型在環模擬。
在不同開發階段中,會利用軟體在環(Software in the Loop、SIL)、處理器在環(Processor in the Loop、PIL)、硬體在環(Hardware in the Loop、HIL)的方式進行開發。嵌入式系統會和環境的模型一起進行仿真。
模型驅動工程
模型驅動工程(MDE,Model-Driven Engineering)是軟體工程的一個分支,它將模型與建模拓展到軟體開發的所有方面,形成一個多維建模空間,從而將工程活動建立在這些模型的映射和轉換之上。MDE的基本原則是將模型視為第一實體,將所有軟體產物當做模型或模型要素。
以UML為代表的軟體工程領域模型與建模方面的發展,也被借鑑到或啟發了傳統的系統工程(SE)領域。近年來基於模型的系統工程(MBSE)得到長足的發展,其基本思想和方法,與MDE有許多共同之處。作為一種系統工程方法,MBSE通過創造和利用模型作為工程師的基本交流手段,代替基於文檔的信息交流。基於模型的思想還有另一個基本的套用方向,就是模型驅動套用(MDApps)。與MDE/MDA/MDD著眼於開發過程的思路不同,MDApps將模型作為系統運行期的基本組件,使系統的功能或行為直接基於可以在運行期創建和改變的套用目標事物模型。
基於模型的測試
基於模型的測試(英語:Model-based testing)屬於軟體測試領域的一種測試方法。按照此方法,測試用例可以完全或部分的利用模型自動產生。以上所說的模型通常是指對被測系統(SUT,system under test)某些(通常是功能性的)方面的描述。
模型一般都是對被測系統預期行為動作的抽象描述。這些測試用例的集合就是抽象測試套件(abstract test suite)。抽象測試套件不可以直接執行於需測試的系統,因為,他們不在同一抽象級別。
測試套件(test suites)是由模型生成,而不是由原始碼生成。因此,基於模型的測試又常常被當作黑盒測試的一種形式。但從某種層面來說,這並不十分準確。畢竟,基於模型的測試是與原始碼級的測試覆蓋率,以及對代碼的功能測試都有著很大的關係。
對於複雜的軟體系統中,如何套用基於模型的測試還在探索中。