使用Topcased改进EMF模型编辑视图2011-08-13 IBM 冯庆 于沛 王轩EMF 是 Eclipse 建模框架,它是 Eclipse MDA(Model Driven Architecture)的重要组成部分,其 元模型 ECore 是 MOF 的 Java 实现,根据 Java 语言特性对 MOF 适当简化并增加 Java 特性。EMF 主 要提供了元模型的创建,利用模型生成 java 代码,并且提供了一个基本的模型文件编辑环境。通过 EMF 可以自动生成模型的编辑视图。但 EMF 的默认编辑视图功能简单,用户界面不够灵活,难以满足大型业 务系统要求。Topcased 是一个开源的用于开发过程的建模工具。Topcased 构建于 Eclipse 平台之上, 并借助 EMF 和 GMF 技术,提供了元模型的定义,图形化编辑,代码生成等功能。它对 EMF 原有功能进 行扩充,提供了扩展的模型属性编辑视图,不但功能灵活,而且界面更加友好,给为项目开发提供带来极 大的便利。本文以一个图书管理系统演示 Topcased 的使用。简介EMF 全称 Eclipse Modeling Framework.,是 Eclipse 建模框架。它是 Eclipse MDA(Model Driven Architecture)的一个重要组成部分,其元模型 ECore 是 MOF 的 Java 实现,根据 Java 语言特性对 MOF 适当简化并增加 Java 特性。EMF 主要提供了元模型的创建,利用模型生成 java 代码,并且提供了 一个基本的模型文件编辑环境。下图是一个典型 EMF 提供的模型文件编辑环境。图 1. 模型文件编辑环境

从上图可以看到 EMF 虽然能够提供建模的能力,但是生成的编辑视图很简单,直接使用有时无法完全 满足项目要求。特别是在企业级的应用项目开发过程当中,属性往往需要进行分类或分组,而不是简单罗 列。在不同阶段或时机,对模型对象属性进行填充。通过属性分组,有利于开发过程当中需求分析人员、 概要设计人员、编码人员的分工协作。我们知道 GMF 虽然提供了建立复杂建模视图的能力,但是实现复 杂,在建模中成本过高,所以需要一种既可扩充 EMF 的模型视图编辑能力,又要简单方便的技术解决方 案。Topcased 开源项目很好的扩展了 EMF 模型文件编辑视图,加强了模型文件的编辑能力。Topcased 是 Airbus(空客)公司提出的开源项目,主要针对航空领域提供了一套开发软件工具包。 Topcased 构建于 Eclipse3.4 RCP 平台之上,并借助 EMF 和 GMF 技术,提供了元模型的定义,图形化 编辑,代码生成等功能。它对 EMF 原有功能进行扩充,提供了扩展的模型属性编辑视图,不但功能灵活 ,而且界面更加友好,给为大型项目开发提供带来极大的便利。