论文部分内容阅读
模型驱动体系结构(MDA, Model Driven Architecture)是OMG提出的软件开发过程中的模型组织管理框架,通过定义不同抽象级别的模型以及模型之间的转换实现系统的分析、设计与实现。MDA把系统划分为两种不同抽象层次的模型:平台无关模型(PIM)和平台相关模型(PSM)。MDA不仅能有效提高软件生产效率、增强系统移植性、降低文档维护费用、解决软件之间的互操作问题,还使得应用模型与领域模型在整个软件生命周期中得以复用。模型转换,特别是PIM到PSM的转换,是基于MDA进行软件开发的关键,目前还没有标准化。当前MDA范畴内存在多种模型转换方法,如基于模式及标记的模型转换方法,基于图文法的转换方法等,但对于工业界普遍应用的开源框架Spring依旧缺乏有效支持,尽管AndroMDA中支持由类图直接生成Spring的配置文件,但AndroMDA并没有考虑Spring AOP这个核心部分,仅仅支持Spring框架的部分IoC功能,且AndroMDA中缺少对PIM的构建。同时,在当前基于Spring框架的Web应用开发过程中,传统的开发方法不能有效保证系统的分析模型、设计模型以及代码间的一致性;由于缺乏描述Spring框架基本特征的建模语言,面向Spring框架的系统建模难以进行。本文提出一种面向Spring框架的MDA模型转换方法,以业务系统的领域对象类图作为研究起点,引入Web应用系统的层次结构模型对PIM进行精化,通过构建适合Spring框架的UML profile以及制定相应的转换规则完成精化后的PIM到基于Spring框架的Web应用系统PSM模型的转换,扩展RSA模型转换框架实现PSM模型到Spring配置文件的自动生成。最后结合一个应用实例,在IBM RSA开发环境中验证面向Spring框架的MDA模型转换方法的可行性以及基于MDA开发模式的优点。不仅能有效解决基于Spring框架的Web应用开发中所存在的问题,更是对MDA模型转换的一次探索与研究。相比国内外的相关工作,本文主要贡献在于:⑴提出一种将应用系统抽象层次的体系结构信息添加到PIM模型中的思想,引入Web应用系统层次结构模型对PIM进行精化;⑵构建了UML Profile for Spring framework,较全面的描述Spring框架的基本特征,使得面向Spring框架的系统建模得以进行;⑶设计并实现了UML to XML模型转换插件,完成Spring框架相关的PSM到Spring配置文件的自动生成。