论文部分内容阅读
模型驱动架构(Model-Driven Architecture, MDA)是OMG定义的、基于UML以及其他工业标准的一个软件开发框架,它支持软件设计和模型的可视化、存储和交换。MDA能够创建出机器可读和高度抽象的模型,这些模型独立于实现技术,以标准化的方式储存。MDA的基本思想是:一切都是以模型为主。软件的生命周期就是以模型为载体并由模型转换来驱动的过程。模型构造、模型映射与模型精化技术是MDA的核心。面向方面编程(Aspect Oriented Programming,AOP)这种新的开发范式使开发者能更好地将那些本不应该纠缠在一起的任务(横切关注点)分离开,从而为程序提供更好的封装性和互操作性,有效地解决了传统面向对象开发方法中遇到的“代码混乱”和“代码分散”问题。目前MDA主要在面向对象领域发展,仍然面临着面向对象难以解决的横切关注点问题。针对该问题,本文将面向方面的思想融入到MDA框架中,以此来有效地处理横切关注点,以获得更加清晰的结构,共享面向方面的易理解性、易重用性、易扩展性等优点。在早期的PIM建模阶段使用方面,使得设计人员可以在开发过程的早期阶段检查和解决冲突、清晰划分可重用的业务规则,将面向方面的好处应用到整个开发过程。本文旨在通过扩展UML语言来表现方面的特性,使用对象约束语言OCL对模型进行约束,针对MDA不同层次的横切特性使用相对应的方面来表达,为模型转换的具体实现提供可行的方法。最后结合具体实例,验证本方法的可行性。