iModel平臺包括業(yè)務(wù)建模工具與模型引擎,建模工具用于設(shè)計與維護業(yè)務(wù)的軟件模型,模型引擎用于加載運行模型和插件,并根據(jù)模型信息生成內(nèi)存對象與界面表現(xiàn)。iModel是一種分布式系統(tǒng),包括數(shù)據(jù)庫、服務(wù)端、客戶端。服務(wù)端引擎向客戶端提供模型和用戶數(shù)據(jù)并處理業(yè)務(wù)邏輯,客戶端調(diào)用服務(wù)端讀取模型和用戶數(shù)據(jù)自動生成生成軟件界面,并根據(jù)用戶的操作來訪問服務(wù)端服務(wù)實現(xiàn)業(yè)務(wù)處理,iModel平臺的基本模型包括:界面模型(控件定義,菜單定義),實體模型(業(yè)務(wù)對象定義,功能定義),輔助模型等,iModel的插件是一種可以增強和擴展iModel基本模型對象的標(biāo)準(zhǔn)組件,包含了插件及其參數(shù)的精確定義,iModel插件可以配置在相應(yīng)基本模型對象上,并可在運行態(tài)進行配置與調(diào)試,且能即時看到配置效果,iModel是一種可演進的原型增量設(shè)計系統(tǒng),軟件是在運行過程中進行增量設(shè)計與維護的,設(shè)計過程中就可以看到運行效果。
iModel除一般建模工具提供的功能之外,可對功能和操作模式進行建模描述,綜合模型編譯、模型解釋、代碼生成和模板四種技術(shù)的優(yōu)點,實現(xiàn)了可執(zhí)行模型。同時實現(xiàn)了模型繼承、模型接口等高級模型開發(fā)技術(shù)。
iModel平臺內(nèi)置了豐富的通用插件模型和插件實現(xiàn),覆蓋軟件界面、功能,結(jié)構(gòu),流程等各方面;通過基礎(chǔ)建模和大量插件的選擇組裝與集成可以實現(xiàn)軟件系統(tǒng)的復(fù)雜邏輯功能和豐富界面表現(xiàn)。用戶也可以很容易地在系統(tǒng)中增加插件模型及其實現(xiàn)完成對特殊需求的業(yè)務(wù)功能。