版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
MDA:ModelDriven
Architecture荊玲MF0933014Summary1.Introduction2.MDAOverview3.DevelopinginMDA4.Prosvs.Cons1.IntroductionAheterogeneousworld…Programminglanguages:~3millionCOBOLProgrammers~1.6millionVBProgrammers~1.1millionC/C++ProgrammersOperatingsystems:Unix,MacOS,Windows(3.1->XP),PalmOSEmbeddeddevicesNetworks:Ethernet,IP,USB,
FireWireBluetooth,802.11b,
HomeRFDomainFacilitiesModel6millionVBProgrammersWecanagreeatanhigherlevelDifferentimplementationofmappingscangenerateverydifferentcodeormodelsWhatistheMDA?PlatformIndependentModels(PIM)PIM:anexampleWhatistheMDA?TheObjectManagementGroup(OMG)CWM(公共倉庫元模型)提供了一種數(shù)據(jù)格式變換的手段,在任意級(jí)別的模型上都可以使用CWM來描述兩種數(shù)據(jù)模型之間的映射規(guī)則,比如將數(shù)據(jù)實(shí)體從關(guān)系數(shù)據(jù)庫變換為XML格式。WhatistheMDA?Wherecanweagree?HetereogenityhindersthedevelopmentofenterprisedistributedsystemsTherewillnotbeconsensusonHardwareOperatingsystemsNetworkprotocolsProgramminglanguagesWecanagreeatanhigherlevelMiddlewareMiddlewareAsoftwarelayerthatmaskshetereogeneityPlacedbetweenoperatingsystemsandapplicationcomponentsMiddlewareproliferation Middlewareitselfhasproliferated:CORBACOM/DCOM/MTSJava/EJBXML/SOAPC#/.NETNoneofthemprevailsovertheothersTheproblemremainsSolution Isolateinformationandprocessinglogicfromtechnologyspecifics.Buildplatformindependentmodels:UMLisindependentofCORBA,COM,EJB,XML,etcthusiswell-suitedasalanguagefordescribingMapthesemodelstospecificplatformsMaintaintheseparationattheimplementationlevel2.MDAOverviewDevelopinginMDAMDAapplication-modelingtoolscontainrepresentationsofPervasiveServicesandDomainFacilitiesallowingthemtobeusedand/orincorporatedintheapplicationviaamenuselectionPlatformIndependentModel(PIM)OperatingsystemsMiddlewareitselfhasproliferated:DevelopinginMDAMaintaintheseparationattheimplementationlevelDevelopinginMDA–Step3:
GeneratingApplication(2/2)DevelopinginMDA–Step1:
thePIM(2/2)1millionC/C++Programmers1->XP),PalmOSOperatingsystems:MDA:ModelDriven
ArchitectureTheObjectManagementGroup(OMG)Anopenmembershipandno-profitconsortiumProducesandmantainscomputerindustryspecificationsforinteroperableenterpriseapplicationsSomeoftheOMGmembers:AT&TBEABorlandBoeingCACitigroupCompaqEricssonFordFujitsuGlaxoHPHitachiHyperionIBMIONAioSoftwareKabiraKCJohnDeereMicrosoftMITREMSCSoftNASANECNetGenicsNTTOASISOraclePfizerRationalSAGASAPSASSecantSiemensSprintSunUnisysVertelWhatistheMDA?AnapproachtoITsystemspecificationthatseparatesthespecificationofsystemfunctionalityfromthespecificationoftheimplementationofthatfunctionalityonaparticulartechnologyplatform“Designonce,builditonanyplatform”SomeKeyTermsModelPlatformPlatformIndependentModel(PIM)PlatformSpecificModel(PSM)ModelAmodelisaformalspecificationofthefunction,structureand/orbehaviourofasystemExamples:SourcecodeisamodelAnUML-basedspecificationisamodelModelsofdifferentsystemsarestructuredexplicitlyinto:PlatformIndependentModels(PIM)PlatformSpecificModels(PSM)PlatformTechnologicalandengineeringdetailsthatareirrelevanttothefundamentalfunctionalityofasoftwarecomponentDevelopinginMDAAnMDAtoolgeneratesallormostoftheimplementationcodeforthedeploymenttechnologyselectedbythedeveloperVerticalDomainsXMI是基于XML的元數(shù)據(jù)交換。PIMcanbemappedeithertoasingleplatformortomultipleplatformsDevelopinginMDA–Step2:
thePSM(1/2)1->XP),PalmOSAllMDAdevelopmentprojectsstartwiththecreationofaPIMPIM:anexampleUnix,MacOS,Windows(3.第二,模型可以使用圖形化的工具維護(hù)模型了。TheObjectManagementGroup(OMG)1millionC/C++ProgrammersPlatformIndependentModel(PIM)DomainFacilitiesModel11b,HomeRFPlatformIndependentModel(PIM)A“formal”specificationofthestructureandfunctionofasystemthatabstractsawaytechnicaldetailExpressedusingUMLPIM:anexamplePlatformSpecificModel(PSM)SpecifieshowthefunctionalityspecifiedinaPIMisrealizedonaparticularplatformExpressedusingUMLextendedwithplatformspecificUMLprofilesPSM:anexampleBasicmodelingtechnology(1/2)UML–unifiedmodelinglanguage
UML被MDA用來描述各種模型。它并不是為MDA而生,但是作為目前最為風(fēng)行的建模語言,UML已經(jīng)占據(jù)了全球建模語言領(lǐng)域90%的市場份額,成為了建模語言事實(shí)上的標(biāo)準(zhǔn),因此OMG將它作為MDA技術(shù)的基礎(chǔ)是自然而然的明智選擇。它是MDA的基礎(chǔ),也是MDA最有力的武器。MOF–metaobjectfacility
MOF是比UML更高層次的抽象,它的目的是為了描述UML的擴(kuò)展或者其它未來可能出現(xiàn)的類UML的建模語言。由此我們可以看到OMG的"野心",雖然MOF也不是為MDA而生的,但是我們可以體味到OMG的工程師們良苦的用心和長遠(yuǎn)的目光。Basicmodelingtechnology(2/2)XMI–XMLmetadatainterchange
XMI是基于XML的元數(shù)據(jù)交換。它通過標(biāo)準(zhǔn)化的XML文檔格式和DTDs(DocumentTypeDefinitions)為各種模型定義了一種基于XML的數(shù)據(jù)交換格式。這使得作為最終產(chǎn)品的模型可以在各種不同的工具中傳遞,這一點(diǎn)是非常重要的,它保證了MDA不會(huì)在打破了一種束縛之后再被加上一層新的束縛。CWM–commonwarehousemetamodel
CWM(公共倉庫元模型)提供了一種數(shù)據(jù)格式變換的手段,在任意級(jí)別的模型上都可以使用CWM來描述兩種數(shù)據(jù)模型之間的映射規(guī)則,比如將數(shù)據(jù)實(shí)體從關(guān)系數(shù)據(jù)庫變換為XML格式。在MOF的框架下,CWM使得通用的數(shù)據(jù)模型變換引擎成為可能。MDAinaSnapshotCoreTechnologiesCoreTargetPlatformsPervasiveServicesVerticalDomains3.DevelopinginMDADevelopinginMDA–Step1:
thePIM(1/2)AllMDAdevelopmentprojectsstartwiththecreationofaPIMPIMatthislevelrepresentsbusinessfunctionalityandbehaviour,undistortedbytechnologydetailsMDAapplication-modelingtoolscontainrepresentationsofPervasiveServicesandDomainFacilitiesallowingthemtobeusedand/orincorporatedintheapplicationviaamenuselectionDevelopinginMDA–Step1:
thePIM(2/2)PIMPervasiveServicesModelCallsDomainFacilitiesModelCallsDevelopinginMDA–Step2:
thePSM(1/2)Oncethefirstiterationiscomplete,thePIMisinputtothemappingstepwhichwillproduceaPSMCodeispartiallyautomaticandpartiallyhand-writtenPIMcanbemappedeithertoasingleplatformortomultipleplatformsDevelopinginMDA–Step2:
thePSM(2/2)PIMCORBAModelMapstoJava/EJBModelMapstoOtherModel…MapstoDevelopinginMDA–Step3:
GeneratingApplication(1/2)AnMDAtoolgeneratesallormostoftheimplementationcodeforthedeploymenttechnologyselectedbythedeveloperRe-integrationonnewplatformscanbedonebyreverseengineeringtheexistingapplicationintoamodelandredeployDevelopinginMDA–Step3:
GeneratingApplication(2/2)PIMCORBAModelMa
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 冀教版四年級(jí)下冊(cè)數(shù)學(xué)教案
- 農(nóng)村環(huán)境整治與生態(tài)建設(shè)
- 焊接作業(yè)工藝流程標(biāo)準(zhǔn)化與優(yōu)化方案
- 生產(chǎn)的火災(zāi)危險(xiǎn)性分類標(biāo)準(zhǔn)
- 高一化學(xué)教案:專題第二單元第二課時(shí)乙酸酯
- 2024屆遼寧省大連海灣某中學(xué)高考仿真卷化學(xué)試卷含解析
- 2024高中物理章末質(zhì)量評(píng)估四含解析新人教版選修1-1
- 2024高中語文略讀課文第8課楊振寧:合璧中西科學(xué)文化的驕子課堂練習(xí)含解析新人教版選修中外傳記蚜
- 2024高中語文第五單元散而不亂氣脈中貫自主賞析祭十二郎文學(xué)案新人教版選修中國古代詩歌散文欣賞
- 2024高中語文精讀課文二第5課1達(dá)爾文:興趣與恒心是科學(xué)發(fā)現(xiàn)的動(dòng)力一作業(yè)含解析新人教版選修中外傳記蚜
- 《世界史通史溫習(xí)》課件
- 第2課 各種各樣的運(yùn)動(dòng)(說課稿)-2023-2024學(xué)年三年級(jí)下冊(cè)科學(xué)教科版
- 股權(quán)質(zhì)押權(quán)借款合同模板
- 2025年中國社區(qū)團(tuán)購行業(yè)發(fā)展環(huán)境、運(yùn)行態(tài)勢(shì)及投資前景分析報(bào)告(智研咨詢發(fā)布)
- 建材行業(yè)綠色建筑材料配送方案
- 使用錯(cuò)誤評(píng)估報(bào)告(可用性工程)模版
- 放射性藥物專題知識(shí)講座培訓(xùn)課件
- 山西省2023年中考道德與法治真題試卷(含答案)
- 國貨彩瞳美妝化消費(fèi)趨勢(shì)洞察報(bào)告
- 云南省就業(yè)創(chuàng)業(yè)失業(yè)登記申請(qǐng)表
- UL_標(biāo)準(zhǔn)(1026)家用電器中文版本
評(píng)論
0/150
提交評(píng)論