论文部分内容阅读
模型驱动架构(MDA)提供了一种使用模型来指导系统的设计、开发和维护的方法,它特别关注与技术是否相关的概念间的分离,以提高软件的可重用性和可移植性。对象约束语言(OCL)被定义为UML标准的子标准,不仅可用于模型约束、查询,还可以用于定义模型转换规则和定义建模语言。 本文以MDA整体框架为起点,分类研究了现阶段各种模型转换方法和模型转换语言,结合OCL的特性分析了其在MDA框架中的应用,并在此基础上重点研究了以下三方面内容: 首先,根据OCL声明式语言的特点,选取三个角度对其进行扩展,从而设计产生了混合式模型转换语言Hybrid-OCL,详细定义了其语法和语义,并通过具体转换实例验证了这种扩展的可行性。Hybrid-OCL具备表述动态语义的能力;能够存储转换信息,实现对转换同步性的支持;Hybrid-OCL还支持完整转换程序框架的定义。 然后,把复用的思想融入到模型转换过程中,结合模式和领域工程理论,提出了转换规则库的概念,并针对可复用规则的领域特点,定义了一种特殊的数据结构——“规则树”。 最后,设计并实现了基于Hybrid-OCL的转换规则库管理原型系统,该系统可用于规则的管理、校验和检索,并为规则的复用提供了一个平台。针对“规则树”的特殊结构,定义了相应的规则检索、规则添加等算法,并提供了规则适配器、规则树组织优化等机制。本系统能较好的支持转换规则的复用,从而有效的提高模型转换的效率。