支持转换引擎与映射规则相分离的模型转换装置及其方法制造方法及图纸

技术编号:2831323 阅读:283 留言:0更新日期:2012-04-11 18:40
本发明专利技术公开了一种支持转换引擎与映射规则相分离的模型转换框架及其方法,该框架包括模型提取器,还包括:目标平台管理器、代理规则管理器、映射规则查询引擎、映射规则库、映射规则编辑器、映射规则执行引擎、脚本合并器、脚本解释器及公共数据区;代理规则将模型元素传给映射规则查询引擎,映射规则查询引擎根据模型元素查询映射规则库得到与模型元素对应的映射规则,代理规则再将模型元素和映射规则交给映射规则执行引擎进行处理;映射规则执行引擎将处理得到的目标脚本文件送至脚本合并器进行合并处理,生成一个目标脚本文件;脚本解释器对目标脚本文件进行解释生成目标模型或代码。采用本发明专利技术实现了模型转换引擎与映射规则的分离。

【技术实现步骤摘要】

本专利技术涉及计算机软件开发
,特别是涉及一种基于模型驱动架构MDA (Model Driven Architecture)的支持转换引擎与映射规则相分离的模型 转换框架和方法。
技术介绍
对象管理组织(Object Management Group, OMG)于2002年底提出了新 的系统软件开发方法学一模型驱动架构MDA。该架构的核心思想是将系统的 业务功能逻辑与实现平台技术相分离,避免造成业务逻辑和实现技术的紧耦 合,同时,MDA通过模型转换技术可以将平台独立的系统功能模型映射到不 同的实现平台模型上,最终实现到具体代码的转换。从而使软件系统的移植性、 互操作性和可重用性都可以长期保持,能够应对未来的技术变化,延长了软件 的生命期。目前,基于MDA的软件开发—MDD (Model Driven Development, 模型驱动开发)已经引起了学术界和工业界的高度关注和重视。模型转换技术是基于MDA的软件开发的关键技术之一,它是保持MDA 中不同抽象层次模型间联系的纽带。利用模型转换技术,可以实现平台独立模 型(Platform Independent Model, PIM)到平台相关模型(Platform Specific Model, PSM)的转换,以及平台相关模型PSM到实现代码的转换。OMG为 了成功推广MDA,正力图使模型转换规范化,于2002年3月发布一个名为 QVT (MOF Queries, Views and Transformations)的意见征求稿,其中MOF (Meta Object Facility)为元对象设施。于2005年11月,确定了最终版本的 规范提案,目前正处于最后的表决阶段。由于模型转换还没有形成一套规范的方法,缺乏规范来支持模型转换的标 准化,导致模型转换的技术都依赖于具体厂商的MDA工具。大多数的现有 MDA工具对模型转换的支持程度都不完善,仍有许多技术问题需要解决。 目前的MDA工具提供的转换引擎(实现模型转换的功能)大多实现了源模型提取器,支持对模型的扫描和访问;也定义了一些通用的转换规则机制来 支持特定模型间的转换。但对特定领域相关的模型的转换,支持力度不够或没 有提供支持。在特定领域中,UML (Unified Modeling Language,统一建模语 言)的语义往往不能完整表达需求,所以需要对UML进行扩展, 一般利用 UML的Profile (扩展集)机制,采用版类(Stereotype)、标签值(TaggedValue) 和约束(Constraint)的方式来扩展已有的UML元素,引入新的模型元素。利 用UML的Profile扩展机制,用户可以自定义一些领域相关的建模元素,来表 达特定领域中的某种确切语义。如果源模型含有UML Profile中定义的新的扩 展建模元素,则需要对每种新模型元素进行相应的转换。在现有的MDA工具 的转换机制下,则需要加入新的转换规则或修改已有的转换规则来实现对新模 型元素的转换。因此,针对具体的或领域相关的软件开发活动,经常需要对已 有的转换引擎进行扩展,加上特定的转换规则来完成相应的模型转换。目前的转换引擎在不同程度上提供了对扩展的支持。但转换引擎与转换规 则通常是绑定在一起的, 一个转换引擎通常只有一种同一规则集,即所有的转 换规则都是处理相同的源元模型和相同的目标元模型。如果新加的规则和转换 引擎中的规则同属于一个规则集,则可以比较方便的对转换引擎进行扩展。如 果不属于同一个规则集,则往往需要开发一个新的转换引擎。这种模式不仅增 加了模型转换引擎开发的技术难度和成本,而且大大降低了模型转换引擎中大 部分通用功能的重用性,阻碍了 MDA在具体的或领域相关的软件开发活动中 的应用和推广。相关的现有技术包括2006年6月15日公开的公开号为US2006/0130011 Al的美国专利Extending Existing Model-To-Model Transformations(扩展 现有的模型到模型的转换)和2006年6月15日公开的公开号为 US2006/0130008 Al的美国专利Model-To-Model Transformation By Kind (基于模型元素类型的模型到模型的转换),以及2006年6月15日公开的公 开号为US2006/0130009 Al的美国专利Dynamically Configurable Model-To-Model Transformation Engine(动态可配置的模型到模型转换引第0130011、 0130009、 0130008号美国专利存在以下不足这三个专利都 是针对同一种转换引擎的不同技术方面的说明,其主要的不足是转换引擎与转换规则是绑定在一起的,该模型转换技术只实现了同一规则集(即一个转换引 擎中所有的转换规则都是处理相同的源元模型和相同的目标元模型)上的重 用,而要将基于相同的元模型的源模型转换为基于不同元模型的目标模型时, 则必须重新开发一个新的转换引擎和相应的转换规则。
技术实现思路
本专利技术所要解决的技术问题在于提供一种支持转换引擎与映射规则相分 离的模型转换框架和方法,用于实现模型转换引擎与映射规则的分离。为了实现上述目的,本专利技术提供了一种支持转换引擎与映射规则相分离的 模型转换框架,包括模型提取器,用于提取源模型中的模型元素,其特征在于, 还包括 一目标平台管理器、 一代理规则管理器、 一映射规则査询引擎、--映 射规则库、 一映射规则编辑器、 一映射规则执行引擎、 一脚本合并器、 一脚本 解释器及一公共数据区;所述目标平台管理器处理代理规则与同一目标平台的映射规则之间的关 系;所述代理规则管理器根据所述模型元素的类型査找与所述模型元素对应的 代理规则;所述映射规则编辑器通过一可视化方式编辑生成映射规则,并存放 于所述映射规则库;所述公共数据区用于存放模型转换所需数据;所述代理规则将所述模型元素传给所述映射规则査询引擎,所述映射规则 查询引擎根据所述模型元素査询所述映射规则库得到与所述模型元素对应的 映射规则,所述代理规则再将所述模型元素和所述映射规则交给所述映射规则 执行引擎进行处理;所述映射规则执行引擎将处理得到的目标脚本文件送至所述脚本合并器 进行合并处理,生成一个目标脚本文件;所述脚本解释器对所述目标脚本文件 进行解释生成目标模型或代码。所述的支持转换引擎与映射规则相分离的模型转换框架,其中,所述映射 规则库又分为版类包、评测包、语句包及规则包。所述的支持转换引擎与映射规则相分离的模型转换框架,其中,所述映射 规则又包括版类结点、评测结点、分支及语句结点;其中,所述版类结点是 对版类的引用,所述评测结点是对评测的引用,所述语句结点是对语句的引用, 所述分支用于连接所述评测结点与所述语句结点。所述的支持转换引擎与映射规则相分离的模型转换框架,其中,所述映射 规则中,所述版类结点、所述评测结点的个数为一个,所述分支结点、所述语 句结点的个数为一个或多个。所述的支持转换引擎与映射规则相分离的模型转换框架,其中,同一个所 述版类、所述评测或所述语句包含于多个所述映射规则中, 一个所述分支仅包 含于一个所述映射规则本文档来自技高网
...

【技术保护点】
一种支持转换引擎与映射规则相分离的模型转换框架,包括模型提取器,用于提取源模型中的模型元素,其特征在于,还包括:一目标平台管理器、一代理规则管理器、一映射规则查询引擎、一映射规则库、一映射规则编辑器、一映射规则执行引擎、一脚本合并器、一脚本解释器及一公共数据区;所述目标平台管理器处理代理规则与同一目标平台的映射规则之间的关系;所述代理规则管理器根据所述模型元素的类型查找与所述模型元素对应的代理规则;所述映射规则编辑器通过一可视化方式编辑生成映射规则,并存放于所述映射规 则库;所述公共数据区用于存放模型转换所需数据;所述代理规则将所述模型元素传给所述映射规则查询引擎,所述映射规则查询引擎根据所述模型元素查询所述映射规则库得到与所述模型元素对应的映射规则,所述代理规则再将所述模型元素和所述映射规则交给 所述映射规则执行引擎进行处理;所述映射规则执行引擎将处理得到的目标脚本文件送至所述脚本合并器进行合并处理,生成一个目标脚本文件;所述脚本解释器对所述目标脚本文件进行解释生成目标模型或代码。

【技术特征摘要】
1、一种支持转换引擎与映射规则相分离的模型转换框架,包括模型提取器,用于提取源模型中的模型元素,其特征在于,还包括一目标平台管理器、一代理规则管理器、一映射规则查询引擎、一映射规则库、一映射规则编辑器、一映射规则执行引擎、一脚本合并器、一脚本解释器及一公共数据区;所述目标平台管理器处理代理规则与同一目标平台的映射规则之间的关系;所述代理规则管理器根据所述模型元素的类型查找与所述模型元素对应的代理规则;所述映射规则编辑器通过一可视化方式编辑生成映射规则,并存放于所述映射规则库;所述公共数据区用于存放模型转换所需数据;所述代理规则将所述模型元素传给所述映射规则查询引擎,所述映射规则查询引擎根据所述模型元素查询所述映射规则库得到与所述模型元素对应的映射规则,所述代理规则再将所述模型元素和所述映射规则交给所述映射规则执行引擎进行处理;所述映射规则执行引擎将处理得到的目标脚本文件送至所述脚本合并器进行合并处理,生成一个目标脚本文件;所述脚本解释器对所述目标脚本文件进行解释生成目标模型或代码。2、 根据权利要求1所述的支持转换引擎与映射规则相分离的模型转换框 架,其特征在于,所述映射规则库又分为版类包、评测包、语句包及规则包。3、 根据权利要求2所述的支持转换引擎与映射规则相分离的模型转换框 架,其特征在于,所述映射规则又包括版类结点、评测结点、分支及语句结 点;其中,所述版类结点是对版类的引用,所述评测结点是对评测的引用,所 述语句结点是对语句的引用,所述分支用于连接所述评测结点与所述语句结 点。4、 根据权利要求3所述的支持转换引擎与映射规则相分离的模型转换框 架,其特征在于,所述映射规则中,所述版类结点、所述评测结点的个数为一 个,所述分支结点、所述语句结点的个数为一个或多个。5、 根据权利要求3或4所述的支持转换引擎与映射规则相分离的模型转 换框架,其特征在于,同一个所述版类、所述评测或所述语句包含于多个所述 映射规则中, 一个所述分支仅包含于一个所述映射规则中。6、 根据权利要求1、 2或4所述的支持转换引擎与映射规则相分离的模型 转换框架,其特征在于,所述映射规则査询引擎还包...

【专利技术属性】
技术研发人员:李晓峰董振江沈蓓洁乔秀全宋小兵杨勇吴豫宁滕广松
申请(专利权)人:中兴通讯股份有限公司北京邮电大学
类型:发明
国别省市:94[中国|深圳]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1