MDA驱动的J2EE平台应用开发方法

更新时间:2024-01-05 作者:用户投稿原创标记本站原创 点赞:3359 浏览:8573

OMG 提出的MDA将业务逻辑设计与具体实现技术分离,并通过模型的转换产生最终的设计实现.MDA能带来快速开发、可移植性、代码一致性和可维护性等方面的好处.

对于PIM到P的转换,目前的研究人员提出了一些方法.基于ATL(Atlas Tranormation Language) 的模型转换方法,用UML 建立的PIM模型转换为用于Web Service 的JWSDP 目标平台模型.ODAC方法可实现从EDOC profile 到CORBA profile 映射,将PIM 和平台描述模型PDM(Platform Description Model)的信息融合在一起实现到P 的转换.MIDAS采用了一种基于PIM分层(概念层、导航层、表示层)的结构映射方法,该方法对目标系统的实现技术作了较强的限制.其它的方法诸如:基于过程图的转换方法、基于模式的转换方法和基于关系代数的转换方法等,都只是提出了一个转换框架,模型转换自动化程度较低,而且目标应用系统大多局限于特定的应用领域.

针对以上问题,本文首先对源模型系统(ASLP模型)做了进一步的整理、归纳,然后对J2EE平台下广泛使用的多种应用框架进行提取和抽象分析,提出了目标模型系统(CTL-P目标平台模型),最后对比了以上两种模型组成元素及其语义,定义了映射规则,再通过辅助工具自动完成模型转换.

一、平台无关源模型描述

(一)ASLP模型概述

平台无关的ASLP模型是由4个部分组成:体系结构模型(Architecture),静态视图(Static),逻辑视图(Logic)和界面展示视图(Presentation).其中逻辑视图又包括功能视图、工作流视图和行为视图.如图1所示.

(二)体系结构模型描述

体系结构模型是在体系结构层面描述系统组成和构件之间的交互关系,同时反映系统的非功能性需求,包括构件、连接器、系统.其中构件由构件接口和构件内部实现模块组成;连接器是实现构件与构件之间信息交换和行为联系的特殊构件;系统代表软件系统中构件和连接器之间组合配置的拓扑结构和约束.

(三)构件的模型描述

ASLP以静态视图、功能视图、工作流视图、行为视图和界面展示视图来对构件统一建模.这5个视图分别表示系统的不同方面.

静态视图:是UML中包图和类图的综合,主要描述功能视图中每个用例的分析类以及这些类之间的联系.

功能视图:描述了体系结构模型中构件的功能、系统与外部以及系统的各组成功能间进行信息交互的情况.

工作流视图:用来建模各种个体的行为,或者定义实体之间的交互和协作.

行为视图:使用扩展的UML协作图对一系列对象的行为进行描述.

界面展示视图:是对行为视图中用户与系统的交互行为和边界对象的直观展示.它提供了界面展示元素与行为视图中可见元素的绑定关系.

二、CTL-P目标平台模型

本文通过对当前J2EE平台(例如Struts, J, Spring等)应用框架的总结和分析,可以发现它们都是依据MVC模式将应用系统的展示部分与业务逻辑部分相分离,以任务处理作为系统业务流程的主线.本文提取并抽象了J2EE平台下应用框架的共同特性,建立了Concept Task and layOut-oriented P模型(CTL-P).

CTL-P模型是一个三元组:<概念模型,任务模型,展示模型>.

a) 概念模型

概念模型描述如图2所示.整个概念模型继承于Ja的ModelElement;抽象元类Clasier是对Class、Interface和DataType的概括;Class可以实现Interface.

概念模型主要包括Ja应用中的类(JaClass)、接口(JaInterface)、属性(Attribute)、方法(Method)以及类之间的各种关系(继承、关联、聚合).

b) 任务模型

CTL-P的任务模型以系统的任务处理为核心,从动态层面反映系统的信息.其模型构成如图3所示.主要由行为元素、行为参数对象、行为目标对象、导航目标和关联关系等组成.

①系统行为元素(Action)是整个行为事件的开始.分为两种:一种是系统与用户交互的接口,用户可以直接触发;另一种是系统内部行为元素,由第一种行为元素间接触发.

②行为参数对象(Parameter)代表在系统进行某种行为处理的过程忠需要引入的参数对象.

③行为目标对象(DataObject)表示行为处理的过程中需要进行操作的对象集合.

④导航信息作为业务流程的主线贯穿系统与用户交互的全部过程,导航目标(WebPage)代表功能请求处理完成后系统的进一步动作.

⑤导航关联(Nigation)表示导航源到目标端的关联关系.

⑥调用关联(Invoke)是行为处理过程中对实体对象方法的调用关系.

c) 展示模型

展示模型通过树型层次关系反映Web应用所特有的界面元素之间的关系.通过对一般Web界面的分析,可以抽象出五类界面元素:数据对象、数据汇集、查询条件对象、控制参数对象和行为触发对象.


①数据对象主要用于数据的输入和输出,一般为自由格式.

②数据汇集是指对数据对象集合集中进行展示的形式和操作,主要包括自由格式、表格形式、树型形式、图表形式和对象组形式.

③查询条件对象是指用于生成查询条件的对象,展示形式为简单控件组,通常有确认按钮或超链接与之组合.

④控制参数对象是指用于生成控制参数的数据对象,展示形式为下拉列表框、复选框和单选框等简单控件组.

⑤行为触发对象代表和执行者相关的功能操作,其展示形式为普通按钮、图片按钮、菜单和超链接等.

CTL-P展示模型定义如图4所示.一个Web页面可以抽象成一棵展示树(WebAreaTree),它包含多个展示区域(WebAreaNode),并含有布局策略(LayoutStrategy),用户可以在区域中嵌套划分子区域.每个展示区域又包含若干界面展示部件(WebUIComponent),如表单、数据表格、图形、自由格式、对象组等.界面展示部件还指定了其与数据元素及行为触发点的绑定关系,它是由不同的界面控件元素(UIElement)组成的,如自由格式一般由Text、Radio、Combox、Button等组成.

三、模型转换:ASLP-PIM到CTL-P的映射方案

ASLP-PIM到CTL-P的整体映射方案如图5所示.源模型ASLP静态视图中的实体对象映射为目标模型CTL-P的EntityBean,控制对象映射为SessionBean,边界对象映射为P任务模型中的行为参数对象或行为目标对象以及展示模型中的展示控件.PIM工作流视图和行为视图中的信息映射为P展示模型的信息.

结束语

本文通过对当前J2EE平台应用框架的总结和分析,提出了以任务为核心的CTL-P模型,同时提出了从ASLP-PIM到该模型的映射方法.这种方法支持模型间的自动转换,由于受目标系统的应用领域和特定技术的限制相对较小,所以该方法具有良好的通用性.在此基础上,随着模型转换理论的不断发展,该方法将对模型驱动的Web应用开发和转换规则技术的提高起到一定的促进作用.


本文为全文原貌 未安装PDF浏览器用户请先下载安装 原版全文

相关论文范文