基于模型转换的WEB 代码自动生成
2013-08-29张海滨
张海滨
(中国海洋大学,山东 青岛 266100)
1.引言
软件开发从本质上讲就是一个从模型到最终代码的实现的过程[1]。自OMG 组织提出MDA 框架以来,基于MDA 的模型转换及代码的自动生成大大减轻了程序员手工开发代码的工作[2-3]。目前国内外的开发人员也就在基于MDA 框架下的各种应用进行了可行性研究[4-5],主要集中在从一个平台无关模型到平台相关模型的转换,而平台相关模型是对一个具体平台进行的一个抽象,其所抽象的层度取决于各研究开发人员对PSM 的定位,往往PSM 也只起了一个概念描述性的作用,本文提出了一种基于FMP-PIM 模型到J2EE 平台JSF 框架的映射关系,详尽描述了FMP 模型中各个模块到JSF 框架各组成部分的映射关系。
2.MDA 概述
MDA(Model Driven Architecture)是OMG 提出的模型驱动软件体系结构,MDA 一改以前的诸如OMA(对象管理体系结构)和CORBA(公共对象请求代理体系结构)的分布式系统架构,而是以模型驱动为核心,通过模型转换提高软件开发的效率。
MDA 的提出是基于系统的具体实现技术无关的功能规范与系统在特定平台上的实现相分离的思想,其核心思想是模型转换,该方法最重要之处是系统规范与实现技术或平台的分离,再通过形式化映射到具体的平台基础(例如Java,XML,SOAP 等)。MDA 定义了3 种模型:①CIM(Computation Independent Model):即计算无关模型,关注系统的需求和环境,不展示系统的架构细节,是独立于软件的模型。②PIM(Platform Independent Model):即平台无关模型,以与平台无关的观点描述系统,是具有高度抽象层次的模型。③PSM(Platform Specific Model):平台相关模型,关注某种特定实现技术,由系统的数据、处理进程等平台相关的信息组成。……
