mda综述文档.doc

  1. 1、本文档共8页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
mda综述文档

MDA新一代软件开发方法的发展研究 S 贾格 jg4012@163.com 1 MDA综述 1.1 OMG/MDA体系结构简介 MDA指模型驱动的架构(Model Driven Arichitecture),它是一种对业务逻辑建立抽象模型,然后从抽象模型自动产生最终的完备的应用程序的方法论。MDA致力于提高软件开发行为的抽象级别,倡导将业务逻辑定义为精确的高层抽象模型,让开发人员从繁琐的重复的低级劳动中解脱出来,去更多的关注业务逻辑层面。它代表了OMG组织定义的互操作性规范的一个革命性进步。 MDA将软件系统的模型分为平台无关模型PIM(plat-form-independent model)和平台相关模型PSM(platform-specific model),同时又能通过转换规则将他们统一起来,以这样的方式来解决需求变更所带来的问题。平台无关模型PIM是对工作流程的高层次抽象,其中不包括与实现技术相关的信息;平台相关模型PSM是跟特定平台相关的模型。 遵循MDA的开发过程如上图所示,最上层的是业务逻辑,首先要使用平台无关的建模语言,来针对业务过程中搭建平台无关的模型PIM,然后自动将PIM转换生成平台相关的模型PSM,之后根据特定平台和实现语言的映射规则,自动生成应用程序代码和测试框架。 MDA的体系架构,其核心是OMG的一些列标准: a.UML(Unified Modeling Language)---统一建模语言:UML被MDA用来对应用建模,它是MDA的基础。 b.MOF(Meta Object Facility)---元对象设施:它是MDA的核心部分。和以往进行数据格式统一管理的思路不同,MDA允许使用不同格式(不同数据描述)的数据同时存在,并为这些描述这些数据的语言提供了统一的定义语言(即MOF)。它是比UML更高层次的抽象,可以描述UML的扩展或者其他未来可能出现的类UML的建模语言,这体现了OMG的长远眼光。 c.CWM(Common Warehouse Meta-Model)---公共数据仓库元模型:提供了一种数据格式变换的手段吗,在各级的模型上都可以使用CWM来描述两种数据模型之间的映射,比如将数据实体从关系数据库变换为XML格式。在MOF的框架下,CWM使得通用的数据模型变换引擎成为可能。 d.XMI(XML Metadata Interchange)---XML元数据变换,他是基于XML的元数据交换。他通过标准化得XML文档格式和文档类型定义DTD(Document Type Definitions),为各种模型定义了一种基于XML的数据交换格式,这使得模型可以在各种不同的工具中传递,能够实现不同模型之间的相互理解。 下面详细介绍一下MOF,他是一种面向对象的元—元模型,为面向对象元模型定义了一种公共的抽象语言。MOF为模型的转换和映射提供了基础和支持,使得MDA可以处理由风格迥异的语言描述的模型,只要有了这种语言的MOF元模型。MOF用来定义面向对象元模型的基本元素、语法和结构。元模型可以通过交换元数据来实现互操作。下图表示了四层元数据结构,数据的语义由模型来描述,模型的语义由元模型来描述,元模型的语义由MOF来描述,MOF则有自描述的能力,所以可以使用它来建立一种建模语言的模型。 综上而言,MDA有以下特点: MDA是一个开放的、中立于软件商的架构、能支持异构系统之间的互操作。他从系统模型层次上来解决互操作性的问题。互操作性能够实现的一个重要的原因就是设立了元模型的规则,元模型在规范中、建模技术中和元数据中都是主要的活跃元素。互操作性最终都是通过共享的元数据和理解元数据的策略来实现的。 MDA是需求和技术之间的杠杆和纽带。PIM是对需求的建模,其意义就是使用平台无关的语言进行业务流程描述,使得它和具体的平台以及实现技术分离,PSM是应用具体技术后的模型,同时可以根据各种具体平台的映射关系来生成各种实现代码。他们各自的改变都可以是相互独立的,商业逻辑和实现技术是松耦合的,同时MDA又可以通过模型建立和模型转换来沟通他们之间的鸿沟,MDA开发方式使我们的系统能够灵活的实现、集成、维护和测试。互操作性和可用性是长期保持的,能够应对变化的形势。 1.2 当前MDA应用水平 MDA的基本方法其实已经被使用了很多年了,在“MDA”这个词出现之前它应用于嵌入式和实时系统。基于Schlaer-Mellor的系统用于为多种的电子设备生成嵌入式代码,从抽象模型产生数百万行C/C++代码来完成复杂的电信交换,目前MDA的应用已经进入众多IT组

文档评论(0)

xcs88858 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档