论文部分内容阅读
计算机网络已经成为很多应用软件的基础计算平台,开放化、互联化、标准化、组件化已经成为应用软件的根本要求,网络的异构性、复杂性成为软件开发所必须考虑的因素。在这样的背景之下,为了简化分布式应用程序的开发,人们开发了软件中间件技术。但是随着越来越多中间件的出现,如EJB、COM/DCOM、CORBA、Web服务等,基于不同的中间件平台之上的软件系统之间的集成(互操作)成为一个很难解决的问题。针对这个问题,OMG(对象管理组织)提出了MDA(模型驱动的体系结构)的框架和概念。
MDA通过提供开放的、语言中立、厂商中立并且中间件中立的标准来解决集成问题。MDA的基础是OMG制定的一系列建模规范,包括MOF、UML、CWM、XMI等。MDA中最重要的两个基本概念是:模型(model)和平台(platform)。模型指的是对系统的功能、结构和/或行为的表示;而平台指的是那些与软件组件的基本功能无关的技术细节和f程细节。基于模型和平台这两个概念,MDA将软件开发过程中的模型划分为两个主要的抽象级别,即平台无关模型(platformindependentmodels,简称PIM)和平台相关模型(platformspecificmodels,简称PSM)。PIM提供了关于软件系统的结构和功能的形式化描述,而不涉及与具体平台相关的技术细节;PSM是PIM在具体的平台之上的系统实现,并且PSM可以通过应用一些转换规则从PIM中推导出。MDA框架支持四种类型的模型转换:PIM到PIM、PIM到PSM、PSM到PSM、以及PSM到PIM。
MDA框架下包含两个最为关键的要素,一是如何描述PIM,二是如何实现PIM到PSM的自动转换。本文的工作正是针对这两个问题展开研究的。
UMLProfileforEDOC是一个已经被OMG吸收的关于描述PIM的建模规范,在本文的工作中,我们使用的PIM描述方法是在对UMLProfileforEDOC中的实体Profile和业务过程Profile进行简化的基础上做了一些扩充。我们使用“实体模型”来描述系统的静态特征,使用“业务过程模型”来描述系统的动态特征。进而,我们研究了从PIM到J2EE平台之上的PSM的转换规则。这些规则包括从实体模型到数据库的转换规则、从实体模型到实体Bean的转换规则、从业务过程模型到会话Bean的转换规则以及从业务过程模型到JSP页面的转换规则。在这两方面工作的基础上,我们设计并实现了MDA支撑工具MAST。MAST可以实现从PIM到J2EE平台之上的PSM的自动转换。该工具生成的PSM包括源程序代码和用UMLProfileforEJB描述的UML模型两方面的内容。并且,工具生成的PSM体现了J2EE平台之上应用程序的多层体系结构(JSP页面—会话Bean—实体Bean—数据库)。本文中,我们还通过一个实例应用程序说明了如何描述系统的PIM和与之相对应的PSM。