论文部分内容阅读
模型驱动架构(MDA)是一个软件开发框架,是继CORBA、UML之后由OMG推出的重要的软件开发方法学。OMG对MDA的构想是将软件系统的开发行为提升到对更高的抽象层级的关注,通过模型的变换来驱动系统的开发,在兼容已有技术的条件下使模型价值最大化。 虽然构建平台模型方面业内已经建立了相关标准,但模型间的相互转换技术尚处在探索阶段。MDA的核心问题是模型转换,模型转换技术上的一点突破,都会对代码的自动化生成、异构平台的集成与互操作以及软件面对不断涌现出的新技术和新平台的自洽性等方面都有着巨大的影响。目前的研究大都局限于某一具体领域或平台,虽然提出了很多转换方法和提案,却没有形成统一的标准,商业化更是奢谈。 针对模型转换规范匮乏的问题,经过对业内主流的模型转换方法及模型转换特征模型的分析,模型转换问题主要表现在:转换方法较为繁杂、转换技术可复用性和通用性较差及缺少统一的规则语义,这些都给模型转换带来了极大的困难。鉴于此,本文提出基于转换规则的模型转换引擎MTE,从规则及其语义层面以及转换通用性方面探索转换问题。首先讨论了转换中源和目标模型关系及其形式化表示;然后着重分析了转换规则的语义、定义了转换规则和给出了MTE规则库的组织形式,并对MTE的主要部件和工作原理作了详细的阐述。最后应用实例对MTE作了验证。 本文的主要内容如下: 1)把目前关于模型转换已有的经典提案和主要模型转换方法进行了归并与分类,对各个分类进行了评述。 2)设计了基于XMI的模型转换原型,采用XMI bus将MOF和XML很好的结合在一起,方便处理异构数据格式、数据交换和通信等。给出了实际应用,讨论了该转换方法的优缺点。 3)提出了基于转换规则的模型转换引擎MTE。定义MTE包括三个主要部件:转换规则库、转换调度器和转换过程管理。分析了转换规则语义和详细讨论了转换引擎的工作原理、组织结构、相关性质以及转换过程的管理和保存等。最后应用MTE思想完成了一个模型转换的实例,实例的转换规则的定义是用RDL语言完成的。 4)文章最后进行了展望,对模型转换的发展趋势大胆地做了一个预测。