PowerDesigner 9.5配置指南

** PowerDesigner 9.5 **

** 配置指南 **


PowerDesigner 9.5 引入了更多强大功能,便于您根据需要,扩展基本元数据的定义。

使用 PowerDesigner 能够在现有概念的基础上扩展出新的概念定义,并为此概念添加特有的属性、约束、符号,并生成代码。

本文将以一个支持 Robustness 结构图的模块扩展来详细说明这一特性。

简介

Robustness 结构图应用于 Collaboration 结构图中。用户可使用三类对象: Boundary 、 Control 以及 Entity 。这些对象有一个特定的表现形式,并遵循下述规则:

· Actor 对象不能直接访问 Control 或 Entity 对象,必须以 Boundary 对象过渡。

· Boundary 对象之间不能彼此通信。并且 Boundary 对象保留为外部使用 (Actor 对象 ) 。

· Actor 对象或 Boundary 对象不能直接访问 Entity 对象,必须以 Control 对象过渡。 Entity 对象之间禁止相互访问。

下图中的文字描述了消息发送的整个过程。

![](http://dev.csdn.net/article/41/C:/Documents and Settings\cxh\My Documents\SYBASE专题\robustness cn.files\image002.jpg)

通过以下的 Robustness 结构图扩展配置指南,我们将向您展示 PowerDesigner 的这一特点。

Robustness 配置 : 对象扩展

我们所要实施的三类对象( Boundary 、 Actor 、以及 Entity )将由特定的 UML 对象原型来管理。

在配置文件定义(扩展模块定义)中,元类( metaclasses )树状图显示了 UML 对象元类下的三种原型。

![](http://dev.csdn.net/article/41/C:/Documents and Settings\cxh\My Documents\SYBASE专题\robustness cn.files\image004.jpg)

每一种都定义了自己独特的符号,来代表被请求的表单,在这里,还可以使用预定义的表单、位图、或元文件( metafile )。

![](http://dev.csdn.net/article/41/C:/Documents and Settings\cxh\My Documents\SYBASE专题\robustness cn.files\image007.jpg)

同时,每一类原型都有一个自定义的工具面板,以便快捷高效的访问新创建的概念。

![](http://dev.csdn.net/article/41/C:/Documents and Settings\cxh\My Documents\SYBASE专题\robustness cn.files\image009.jpg)

** Robustness ** ** 配置 ** ** : ** ** 链接检查 ** ** **

由于对对象的严格定义和控制,某些对象间是禁止链接的。

我们仅以第一个规则(即 Actor 对象不能直接访问 Control 或 Entity 对象)的实施为例来进一步说明。

在配置文件中,定义了快速链接( instance link )元类约束,从而确保了如果 Actor 对象出现在一端,则 Control 对象或 Entity 对象一定不会出现在另一端。该约束以 VBScript 编写。当用户运行约束模块时, VBScript 代码将针对每一个属于相应元类的对象而执行,此处即为快速链接。

任何一个链接,如果其源对象为 Actor ,同时目标对象为 Boundary ,则检查失败,另外,对保留对象的测试也会失败。

下图中简短的 VBScript 代码,能够确保用户执行所需的检查。在扩展模块定义的元类树状图中可以看到这段代码。

![](http://dev.csdn.net/article/41/C:/Documents and Settings\cxh\My Documents\SYBASE专题\robustness cn.files\image011.jpg)

** Robustness ** ** 配置 ** ** : ** ** 生成文本 ** ** **

最后需要说明的,就是针对每一个结构图生成的文本,它被用来验证所交换消息的有效性。配置文件使用模板生成语言( GTL )来生成基于模块数据的文本。

![](http://dev.csdn.net/article/41/C:/Documents and Settings\cxh\My Documents\SYBASE专题\robustness cn.files\image005.gif)

![](http://dev.csdn.net/article/41/C:/Documents and Settings\cxh\My Documents\SYBASE专题\robustness cn.files\image013.jpg)

GTL 的功能包括:通过 PowerDesigner 模块浏览所有集合和对象、测试某些属性、以及在需要时,生成结果文本。

下图中的 GTL 代码具有浏览结构图符号集合的功能。如果为消息符号,则另一个针对该消息定义的 GTL 模板将做为结果返回。

最后这部分代码将基于消息的控制和严格定义生成结果句。

![](http://dev.csdn.net/article/41/C:/Documents and Settings\cxh\My Documents\SYBASE专题\robustness cn.files\image014.jpg)

最终结果可以在模块或扩展生成的代码预览中看到,以下为生成文本举例:

_ <

 1<collaboration "ask="" "return="" "stock="" 'application="" 'customer'="" 'database="" 'internet="" 1)="" 2)="" 3)="" 4)="" 5)="" 6)="" _="" actor="" app="" browser'="" collaborationdiagram_1:="" db"="" from="" message="" object="" query"="" scenario="" sends="" server"="" server'="" to="" value="" value"="">&gt; _
 2
 3** 结论  ** ** **
 4
 5** **
 6
 7有了这一强大特性,我们能够为  Robustness  结构图方法提供全面的支持,扩展了对象的概念,并基于新的概念添加了新的符号和约束,尤其是特定的文字生成。 
 8
 9PowerDesigner  使您可以根据需要,快捷的对任何概念的元模型(包括  Entity  、  Table  、  Column  、  Process  、  Component  等)进行扩展。 
10
11马上行动,率先感受新的震撼吧!</collaboration>
Published At
Categories with 数据库类
Tagged with
comments powered by Disqus