技术开发 频道

PowerDesigner 在MDA 领域的应用

【IT168 技术文档】

引言
    MDA提出已经有5,6年的历史了,它的出现正不断地改变着软件工程领域的现状和编程习惯,同时,业务模型、领域模型的不断变更以及新框架的出现,也使得MDA得以大展身手。本文将通过Sybase PowerDesigner工具带领大家认识、了解MDA,并且使您更容易地实现软件系统的集成与开发。

1. 一个经典案例引发的问题

    在MDA前,我们想象一种场景:项目经理定制项目计划以及各个里程碑,然后然后交付给软件架构师对其不同模块进行UML建模,然后打印并分发给开发人员,根据模型的要求完成代码开发和测试。很不幸的是,该项目是一个遗留的系统,而且是面向过程的,甚至部分语法都是定制的,头疼的是客户要求你把这个系统转换为面向对象的java语言。

这是一种比较传统的软件管理方法。然而这样的弊端是:
1)一切都不是那么同步,例如,代码发生的变化,模型势必要进行修改,反之亦然,当然也包括文档的同步等等,采用前者的管理方法,往往会使得项目进度拖延甚至失败。
2)模型描述的不够详细,以至于开发人员不完全按照架构师的设计方案开发。
3)代码重复过多,成本消耗过大。
4) 进度不容易控制,模型无法有效管理等等。
5)没有一种有效的方法来检测架构师的设计正确性。
6)不同模型以及语言转换复杂。

MDA正是为了解决这些问题提出的一种新的开发方法。

2.MDA的基本概念

MDA是一种基于模型驱动架构技术的开发方法,它是一种方法学,基于它,我们能实现如下功能:
• 能方便地在模型或者元模型上定义应用需求、逻辑结构以及行为方式,甚至修改元模型结构以适应实际需求。
• 增强了模型的语义逻辑。
• 能快速生成应用程序原型代码,使得用户可以验证或者为开发者生成API。
• 迭代式的设计、生成、开发和测试。

当然,PowerDesigner就是这样一款集UML、数据模型、业务模型等于一体的企业建模工具。

MDA的主要标准包括MOF,UML(OCL),XMI和CWM四大核心。需要指出的是,MDA正处于发展阶段,现在有三大阵营,即UML PIM阵营、MOF阵营以及可执行的UML阵营。所谓UML PIM,即使用UML来建立PIM,然后利用模型转换来生成PSM,最后用PSM生成代码。目前该阵营的人居多,因为大家了解最多的还是UML,兼容性以及推广程度都较其他阵营更好。PowerDesigner也是该阵营的拥护者。

MDA要致力解决以下问题:
1) 实现与平台无关的特性,设计人员只需关注模型即可。
2) 不同模型之间的无缝转换,例如:OO模型与数据库模型的无缝转换,同时能方便的定制转换规则。
3) 模型的事先检测,这样就可以有效分析出架构的正确与否。
4)能自定义与平台相关的语言模型和扩展模型。
0
相关文章