模型驱动架构(MDA)是一种独立于特定平台和软件供应商的软件体系结构设计和开发方法,它适用于设计、部署、集成等软件开发的整个生命周期。MDA 遵循的是诸如统一建模语言(UML)、可扩展标记语言(XML)和公共对象请求代理体系结构(CORBA)等一系列业界开放标准。
MDA 建模是基于功能,而非基于特定语言、平台或实现技术,它可以简化系统集成、缩短开发周期和节省企业资源。
模型通常以图和文字的形式来描述一个系统及其环境。模型驱动的方法就是利用模型来引导系统的设计、开发和维护。而模型驱动架构即是用系统的模型来生成系统的体系结构。
MDA 有三个视图。第一个视图叫“计算无关视图(CIV)”,其作用就是将系统基本处理逻辑同平台相关的技术规范分离开来。CIV视图关注于系统的环境和需求,而系统的具体结构和实现是隐藏的。
第二个视图是“平台无关视图(PIV)”。该视图关注于系统的操作而隐藏了平台相关的细节,该视图可能用一种通用的、平台无关的建模语言如UML来描述。
第三个视图叫“平台相关视图(PSV)”。该视图关注特定平台的实现细节。
以上三个视图都有其各自相应的模型:
- 计算无关模型(CIM)通常由业务分析人员创建,展示了系统的业务模型。
- 平台无关模型(PIM)是系统功能的模型,通常由系统架构师创建。
- 平台相关模型(PSM)对一个或多个平台的PIM模型的具体实现建模。
MDA 的真正价值在于 CIM 模型可以通过简单的映射转换成 PIM 模型。同样的,PIM 模型也可以映射成 PSM 模型,而 PSM 模型则可以最终转换成具体的实现代码。
如下图所示,右上角的 CIM 模型是整个模型转换过程的起点。CIM 模型转换成 PIM 模型后,系统架构师和设计师即可以创建系统其余部分的模型。设计完成之后,PIM 模型就转换成了一个或多个 PSM 模型。
|