自己最近在學(xué)習(xí)MDA,在看一本名為MDA Explained:The Model Driven Architecture:Practice and Promise,以下是自己的總結(jié),如有不對,請厲聲指出。
1.什么是MDA?
MDA是軟件開發(fā)的一個(gè)框架,由OMG(Object Mangemnet Group)定義。對于MDA的重點(diǎn)是軟件開發(fā)過程中的各個(gè)模型。在MDA中,軟件開發(fā)過程是以對系統(tǒng)建模為驅(qū)動(dòng)的。
2.MDA開發(fā)的生活周期如下圖所示
3.MDA中的三個(gè)重要的模型
(1)PIM(platform independent model):對系統(tǒng)的高層次的抽象,獨(dú)立于任何的實(shí)現(xiàn)技術(shù)
(2)PSM(platform specific model):系統(tǒng)相關(guān)的模型,系統(tǒng)架構(gòu)由特定的技術(shù)實(shí)現(xiàn),PIM可以轉(zhuǎn)換成一個(gè)或多個(gè)PSM
(3)Code,對系統(tǒng)的一個(gè)源碼級的描述(規(guī)范),每個(gè)PSM都被會(huì)轉(zhuǎn)換成Code
在傳統(tǒng)的開發(fā)過程中,模型到模型的轉(zhuǎn)換,或是模型到代碼的轉(zhuǎn)換都是人工做的,而MDA中的轉(zhuǎn)換都是通過工具自動(dòng)來實(shí)現(xiàn),包括PIM到PSMs的轉(zhuǎn)換。