论文摘要
模型驱动架构(MDA)是一个可以从系统模型变换为实现代码的软件开发框架,模型在其中扮演了非常重要的角色。在MDA中,软件开发过程由模型驱动。开发者首先对系统的业务逻辑进行建模,建立的模型不具有任何技术平台的特性,被称为平台无关模型(PIM),和实现技术相关的业务逻辑模型则称为平台相关模型(PSM)。根据选择的实现技术,PIM通过映射机制变换为PSM,然后变换为代码。MDA就是包括一系列建模规范、变换规则和其他相关标准的体系结构。面向对象编程无法有效解决核心业务逻辑之外的关注点对模块封装的破坏,这些关注点包括安全性、数据持久性、日志、错误处理等,它们横切于核心业务逻辑所形成的类结构中,所以也被称作横切关注点。同样地,在MDA中建立的模型也会存在横切关注点。通过面向方面编程(AOP)可以解决面向对象所面临的难题,核心业务逻辑和横切关注点可以分别使用面向对象技术和面向方面技术独立进行开发,最后通过特定技术将这两部分编织在一起形成最终代码。基于以上背景,本文将探讨如何在MDA中应用面向方面技术进行软件开发。本文作者通过对MDA和面向方面技术的深入研究,提出了面向方面的MDA软件开发方法。模型是MDA的核心,因此需要针对面向方面的特性建立通用的面向方面PIM,以及和特定面向方面实现技术(本文选取AspectJ平台)相关的PSM。本文在遵循UML 2.0标准的基础上,使用UML扩展机制分别建立了面向方面PIM和AspectJ PSM的模型规范。通过这些规范,横切关注点和核心业务逻辑就可以相对独立地进行建模,从而分别形成面向方面PIM和面向对象PIM。然后,本文提出了面向方面PIM到AspectJ PSM的变换规则,并使用扩展的OCL语言定义了这些规则。通过这种变换,AspectJ PSM可以在平台相关模型这一层中继续保持与核心业务逻辑模型的独立。在文章的最后,通过对医疗设备物资管理系统的成功开发,验证了面向方面的MDA软件开发的可行性。
论文目录
摘要ABSTRACT第一章 绪论1.1 研究背景1.2 选题及其意义1.3 主要工作1.4 论文组织结构第二章 模型驱动架构2.1 传统软件开发存在的问题2.2 MDA 核心概念2.2.1 MDA 的模型2.2.2 平台无关模型(PIM)2.2.3 平台相关模型(PSM)2.2.4 代码模型2.2.5 模型变换2.3 MDA 核心技术规范2.3.1 元对象设施(MOF)2.3.2 统一建模语言(UML)2.3.3 XML 元数据交换(XMI)2.3.4 公共数据仓库元模型(CWM)2.3.5 对象约束语言(OCL)2.4 MDA 元建模框架2.5 MDA 开发过程2.6 本章小结第三章 面向方面的软件开发3.1 软件编程方法学的发展状况3.2 面向方面编程(AOP)3.2.1 AOP 简介3.2.2 AOP 的核心概念3.2.2.1 连接点3.2.2.2 切入点3.2.2.3 通知3.2.2.4 静态横切3.2.2.5 方面3.2.3 AOP 程序的开发过程3.2.4 AOP 的支持工具3.3 面向方面软件开发3.4 ASPECTJ 简介3.4.1 连接点(joint point)3.4.2 切入点(pointcut)3.4.3 通知(advice)3.4.4 类型间声明(intertype declaration)3.4.5 方面(aspect)3.5 本章小结第四章 MDA 的面向方面建模和模型变换4.1 建模语言的选择4.1.1 MOF 扩展4.1.2 UML profile4.1.3 两种扩展方式的比较4.2 面向方面建模的研究现状4.3 面向方面PIM4.3.1 面向方面PIM 的AO-PIM profile4.3.1.1 构造型AO-PointCut4.3.1.2 构造型AO-Introduction4.3.1.3 构造型AO-Advice4.3.1.4 构造型AO-Aspect4.3.1.5 构造型AO-CrossCuttingConcern4.3.2 面向方面PIM 建模4.4 面向方面PSM4.4.1 面向方面PSM 的AspectJ profile4.4.1.1 构造型PointCut4.4.1.2 构造型Introduction4.4.1.3 构造型Advice4.4.1.4 构造型Aspect4.4.1.5 构造型CrossCuttingConcern4.4.2 面向方面PIM 建模4.5 面向方面PIM 到面向方面PSM 的变换4.5.1 变换方式4.5.2 变换规则4.5.2.1 OCL 的基本语法介绍4.5.2.2 OCL 的扩展4.5.2.3 用自然语言描述的变换规则4.5.2.4 用扩展的OCL 描述的变换规则4.6 面向方面模型在MDA 中的编织时机4.7 面向方面的MDA 软件开发4.8 本章小结第五章 面向方面的MDA 在医疗设备物资管理系统中的应用5.1 医疗设备物资管理系统5.2 开发工具5.2.1 ArcStyler5.2.2 IBM Rational Software Architect5.2.3 OptimalJ5.3 系统实现5.3.1 业务建模5.3.2 核心业务PIM5.3.3 核心业务PIM 到PSM 的变换5.3.3.1 关系数据库PSM5.3.3.2 EJB PSM5.3.3.3 Web PSM5.3.4 核心业务PSM 到代码的变换5.3.5 面向方面PIM 到PSM 的变换5.3.6 最终代码的生成5.4 系统运行示例5.5 面向方面的MDA 软件开发方法的评价5.6 本章小结第六章 总结与展望6.1 论文总结6.2 工作展望致谢参考文献在学期间取得的研究成果
相关论文文献
标签:模型驱动架构论文; 平台无关模型论文; 平台相关模型论文; 变换规则论文; 面向方面论文;