浅议有关MDA模型转换工具.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
浅议有关MDA模型转换工具.doc

  浅议有关MDA模型转换工具 --摘 要  模型驱动架构MDA (ModelDriven Architecture)是由OMG提出的,用于解决企业间应用集成问题的软件开发方法。自提出以来,MDA方法得到很多软件供应商和研究人员的强力支持,在工业界和学术界出现了很多支持MDA开发方法的模型转换工具。这些工具使用了不同技术和实现方法,各有千秋。这些工具的出现有力地促进了MDA开发方法的发展。从模型描述方法、模型转换方法和模型转换工具在软件生命周期中的位置等三个方面分析比较了当前流行的MDA模型转换工具。根据这些分析结果,进一步讨论了MDA模型转换工具的发展前景,并指出了进一步改进MDA模型转换工具的研究方向。 关键词  MDA MDA工具 模型转换 0 引 言 在信息技术高速发展的今天,人们需要开发的系统日益复杂,而且牵涉到的领域也越来越广。开发者必须掌握许多不同的技术、架构和协议,通过复杂的实现,才能将来自于业务领域的需求转换成为最终解决方案。如何最大限度地降低开发风险、提高效率、快速实现不同应用系统之间的互操作是当今软件开发面临的问题。而将业务逻辑模型与底层实现平台分离是解决这个问题的可行思路,同时也将成为一种趋势[ 1 ]。 MDA模型驱动体系架构正是OMG组织为了应对业务和技术的快速变化提出的一种开放的、供应商中立的软件开发方法[ 2 ]。MDA将业务/应用逻辑和底层实现平台分开,将应用系统使用结构化的方法定义成:计算无关模型(CIM) 、平台无关模型( P IM)和平台相关模型( PSM) 。开发者可以针对不同实现技术与平台制定多种映射规则,然后使用这些映射规则及辅助的模型转换工具在不同层次的模型之间进行转换,不断求精直至形成最终代码。本论文由.51luneation Language) [ 10 ]的子项目。ATL 是根据MOF /QVF标准制定的模型间转换语言。它是一种说明式( declarative[ 4 ] )和命令式( imperative[ 4 ] )混合的转换语言。 利用EMF、M2T、M2M,用户可以快速地构建模型,同时这个框架也提供了一部分模型查询、模型转换和验证的功能。除了需求分析阶段, Eclip seModeling Project中的各个工具基本上实现了对于整个软件生命周期的支持。 2. 2 AndroMDA AndroMDA[ 11 ]是一个开源的代码生成框架MDA工具。最新的版本中, AndroMDA 以插件的形式集成在Eclip se中,所以AndroMDA中模型和元模型的管理采用了Eclip se的EMF。同时这个工具支持以XM I的标准格式导入和导出模型。 AndroMDA中,模型到模型转换采用了Eclip se的ATL来描述转换规则,而模型到代码转换采用MOFScrip t描述( Eclip se开源社区下的GMT[ 12 ]项目。该项目已经提交给了OMG组织,成为元模型到代码转换的RFP的候选方案之一) 。在代码生成过程中,AndroMDA采用了具有可扩展能力的Cartridges[ 11 ] 。用户可以通过丰富的Cartridges,生成Java、J2EE、. Net等平台上的代码,也可以用Cart --ridges创建自己的代码转换规则。 AndroMDA的主要功能在模型到代码的转换和对模型的验证,不支持需求分析和模型设计方面的功能。 2. 3 OpenArch itectureF的方式存储模型数据,也可以导入各种UML建模工具生成的模型数据。 OpenArchitecture I的格式存储模型,也支持各种UML模型的导入和导出。在Op timalJ中,模型被精确定义成三个层次,分别是领域模型、应用模型和代码模型,分别对应于P IM、PSM和生成代码。Op timalJ 是按照J2EE平台建模的,转换目标平台为J2EE。本论文由.51lunalJ 采用模板模式语言TPL ( Temp late Pattern Language) [ 15 ]来描述转换,其中模型到模型的转换通过technology pattern实现,而模型到代码的转换通过imp lementation pattern实现。用户也可以通过TPL自己编写转换规则。Op timalJ的一个很大的特点是支持代码和模型的同步,确保了模型和代码的一致性。 从某种意义上说, Op timalJ 可以对软件生命期的验证阶段提供部分支持。但和上面很多工具一样,它不支持需求分析阶段的设计。 2. 6 IBM Ra tiona l Softain2Specific Language)并用于定义领域相关模型。同时随着Eclip se的发展和流行,越来越多的模型驱动工具(特别是开源工具)选择Eclip se作为IDE,或者集成到Ec

文档评论(0)

ggkkppp + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档