IBM Rational Software Architect 8.0 版本中对 UML 建模特性的改进,第 1 部分: 建模透视图、属性、导航,以及图表方面的改进

本文着重介绍了 IBM® Rational® Software Architect 8.0 版本中 UML 建模构件的一些新功能,并解释了怎样去使用这些最新添加的特性。本系列的第一篇文章描述了重新设计的建模透视图。新的 Properties 弹出窗口,简化的模型中的导航模式,以及图表方面的改进。

Wayne Diu, 软件开发人员, IBM

Wayne DiuWayne Diu 是一名 IBM Rational 软件开发人员。他在 Rational 建模平台上设计和开发了统一建模语言(UML)特性,例如服务器集成和模型搜索。此外,Wayne 是负责建立元模型集成框架平台的开发人员之一。Wayne 还开发了许多其它工具特性,例如打印、验证标记器改进,以及重构支持。


developerWorks 投稿作者

2011 年 1 月 17 日

下载 Rational® Software Architect 试用版  |  在线试用 Rational® System Architect
下载更多的 IBM 软件试用版,并加入 IBM 软件下载与技术交流群组,参与在线交流。

对 UML Modeler 构件的改进

UML 资源中心

欢迎访问 UML 资源中心。在这里您可以找到 developerWorks 上所有与统一建模语言(Unified Modeling Language,UML)相关的技术资源和最新的信息。

对于 IBM® Rational® Software Architect Standard Edition 版本 8,IBM® Rational® Software Modeler 是作为所谓 UML Modeler 的构件添加的。因此,原来曾经是两种产品,现在只剩下一种了。它提供了 BPMN 2(业务进程建模标记),UML 2(统一建模语言)建模,代码可视化,以及对 Java™,C# 和 VB.NET(Microsoft® Visual Basic® .NET)的建模支持。您可以使用一系列扩展的选项来调整这个基本平台,这些选项提供了从协作和模拟到部署建模或者集成式结构框架的使用的功能。IBM® Rational® Software Modeler 用户可以从这项改进中受益,因为现在您可以得到代码可视以及环形工程功能,作为转移至 Rational Software Architect 版本 8 的一部分。

本文描述了 UML Modeler 构件中所包含的许多改进项,它可以帮助您创建更加清晰地图表,预防或者解决问题,并与同事进行协作。


更清晰,更方便的视图

作为这项重大性改进的一部分,Modeling 透视图也得到了改进。

建模透视图

如果您从一个新工作区开始或者重启您的透视图(从 Window > Reset Perspective 进行操作),您就不会怀疑地意识到默认的 Modeling 透视图在 IBM Rational Software Architect 8.0 版本中被改动了。默认条件下,Modeling 透视图只包含有四个视图:

  • Project Explorer
  • Layers(新)
  • Outline
  • Properties

视图的其余部分(例如 Inheritance Explorer)可以通过点击程序窗口左下部的 Fast View,来打开 Fast 视图。

以前的视图被重命名为 Classic Modeling。它仍然出于一致性的考虑而存在,所以您最好使用新的名字。

属性

尽管旧有的 Properties 视图现在仍然支持,但是视图更加方便的类型可以从弹出窗口中得到,如图 1 所示。它能使您轻松访问选择元素的属性,而不用占用大部分的界面。为了访问新的视图,您可以从 Project Explorer 或者图表的元素的背景菜单中选择 Properties

在图 1 中的范例中,选择元素的 General 属性(Central System::Main)会显示出来。为了显示元素的其他属性,您可以使用标题栏左边或者右边的箭头以切换至属性页面。下拉箭头(在“General”附近)会显示一系列的属性页面,您可以从该页面中得到选择的元素,它对应于旧有 Properties 视图的属性项。

图 1. 显示 Project Explorer 中元素的属性
Properties 弹出窗口

图 1 的大图

属性以及简化的导航

您还可以使用简化导航的超链接,来访问 Properties 弹出窗口。您可以将鼠标停留在 图表中的 元素名 上,将会显示了带有一个或者多个超链接的弹出提示框(见于图 2)。点击超链接将会显示元素的属性。将鼠标停留在 属性 上,将会显示对属性本身和属性类型的连接(如果类型得到设置的话)。另外,有一些表格包含了您可以从中选择类型的列。这些列之中的单元包含了一个按钮,该按钮标有右向的箭头 ->。点击箭头按钮您还可以访问弹出窗口之中的属性;从这里,您可以跳至您所选择的类型的属性。

图 2. 弹出工具提示中的超链接
带有超链接提示的图表

图 2 的大图

除了简化对元素属性导航的简化之外,在 Project Explorer 中对元素的导航也得到了改进。除了能够导航至主要的元素,导航至特定的元素也是可能的。因为在软件以前的版本中,您可以使用元素内容菜单或者下拉菜单的 Navigate 子菜单来定位 Project Explorer 之中的元素。在序列图中,如果您选择了图表中的生命线,那么除了能够导航至 Project Explorer 中相应的生命线之外,您还可以导航至选择生命线的属性或者类型。对于 Behavior Execution Specification,您可以切换至引用的行为。在活动图上,您还可以切换至引用的元素,例如 Send Signal 操作(它会引用一个信号)以及 Call Behavior 操作(它会引用一个行为)。

您可以使用 Project Explorer 中的元素,而 Type 列(图 3)单元的箭头按钮 可以用来导航至类型的属性。

图 3. Attributes 属性页面
为解决元素类型所选择的箭头

图 3 的大图

通过实施 com.ibm.xtools.rmp.ui 中的公共 ILinkProvider and INavigationProvider 界面,您可以有计划地扩展该超链接功能。


图表改进

图表特性现在也可以更轻松地使用了,而许多的改进使得图表的外观变得更加美观和清晰。

主题

人们通常想要对图表上面的形状和联系应用特定的格式化形式。为了支持这种想法,UML Modeler 特性现在使用 主题 的概念:可重复使用的形式能够自动应用到形状和联系上。已存在的形状和联系可以拥有私人的形式。因此,对图表中的不同元素使用不同的主题现在也成为现实。

UML Modeler 包含了 10 个预定义的主题,您可以定制它们以创建您自己的版本。您可以按照下面的方式来创建您自己的主题,或者选择默认的主题:

  1. 从 Preferences 视图(从 Window 菜单中,点击 Preferences),选择 Modeling,然后点击 Appearance
  2. 在 Appearance 窗格之中,您可以看到一系列所有的默认主题,与您所添加的主题。在主题列表的结尾,您可以选择 New 选项来创建一个新的主题(见于图 4)。
图 4. Preferences 视图之中的 Appearance 窗格
Preferences 窗口

为了添加一个新的主题,您可以选择 Add 项目或者 Details 按钮。新主题是由定制一个已存在的主题来得到创建。因此,当 Theme Details 窗口出现时,它会显示一个已存在主题的具体信息。

图 5. Theme Details 视图显示了一个已存在主题的具体信息
列:Appearance,Element Type,Palette Drawer

Theme Details 视图每一行所列出的元素类型,就是应用特定形式的类型。底部的按钮属于全体的主题,而右边的按钮可以用来为特定的主题添加和删除形式。因此,例如,右边的 Delete 按钮可以用来删除与某个元素类型相关的外观,而底部的 Delete 按钮可以用来删除当前所显示的全部主题。

  1. 为了给尚未由当前主题定义的其他元素类型定制形式,您可以按照下述步骤进行操作:
  2. 点击右边的 Add 按钮。这将会打开 Element Types 向导。
  3. 选择应该给出特定外观的元素类型。选择给定相同外观,或者形式的外观和联系,是一个非常不错的注意。

在您选择元素类型并点击 Next 按钮之后,您可以选择一个已存在的外观,来应用至您所选中的元素类型。您有 48 个默认的形状和 12 个默认的联系可以进行选择,而且您可以添加自己的形状和联系。

  1. 为了定制外观,您可以选择列表中最后的项目:New
  2. 当 Shape Appearance Details 或者 Connector Appearance Details 窗口出现时,您可以为您的形状或者联系选择具体的信息。
  3. 确认您点击了屏幕下边的 Save As 按钮以保存您所定制的外观。
图 6. 使用 Element Types 向导来为形状和联系选择外观
选择的 Element Types 视图,默认的联系

图 6 的大图

对于其他的元素类型和不同的外观,您可以重复这个过程(只选择拥有给定相同外观形式的形状和联系,同样是一个不错的注意,然后您可以继续重复这个过程)。

在添加私人元素类型之后为了调整它们的外观,您有两个选择。

  • 第一个选择是从 Theme Details 选项中选择元素类型,然后点击 Delete 并使用 Add 按钮重新添加它。
  • 第二个选择是选择元素类型并点击出现的省略号()按钮。这将会显示出一个下拉菜单,它列出了所有的默认外观,以及您所定义的外观。

对图表元素应用主题

如果您想要对一个图表元素应用特定的外观,那么您有两种方式可以实现这一点。

  1. 从元素的背景菜单中(右击元素)选择 Properties,或者显示古典 Properties 视图来选择元素并显示其属性。接下来,您可以从属性中选择 Appearance 页面,并从 Select an existing appearance 下拉菜单中选择您对形状或者联系所应用的主题。
  2. 显示形状的背景菜单并选择 Appearance 菜单项。接着将会出现 Shape Appearance Details 对话框。您可以从对话框中,在应用外观之前作出一些定制操作。
图 7. 从 Shape Appearance Details 窗口之中选择梯度
Gradient Selection 弹出视图

图 7 的大图

进一步定制形状

当您在处理主题时,您可能已经注意到您可以从中选择的许多外观。对于形状,这些选项包括了透明度,改进的梯度,以及线宽方面的更多控制。同样,形状中的私人部件现在支持形状的边框样式,对于联系,它们包括圆角和线属性,包括线宽、线型及箭头类型的选择。

对形状的进一步定制可以从 Appearance 属性项里得到。设置线的宽度可以使用 Border 组中的 Line width 下拉菜单来完成,您还可以使用 Fill 组中的 Fill color 下拉菜单来选择一个渐变填充模式。

图 8 显示了与一个角色相重叠的类。当您安排有形状与其他性质相重叠时,能够调节透明性这一点特别有用。

图 8.与一个角色相重叠的类
图表与属性选择窗口

图 8 的大图

注意:
为了遵循 UML 规格,对于 UML 联系来说,不是所有的行参数都是可配置的。例如,使用一个点线来代表一种联系,可能会行不通。为了利用图表上的行改进,您可以使用 Geometric Shapes 配置板之中的 Geometric Shapes 折叠项。通过这种方式,您可以突破 UML 限制对您的束缚。

保存一个图表元素的外观

在您对定制的形状或者联系满意之后,您可能想要保存外观,这样对其他的形状或者联系您也可以应用该外观了。

  1. 为了获取一个形状或者联系的外观,您可以选择外观或者联系,并右击以显示形状的背景菜单,并选择 Add to Appearances
  2. 接下来,您要输入外观的名字。

外观会得到保存,现在可以对其进行再使用。

图 9. 使用 Add to Appearances 来保存一个图表元素的外观
图表的内容菜单

图 9 的大图

图标反馈

当您在设计一个形状和另一个形状之间的联系时,哪一个形状是起源,哪一个形状是目标,可能不容易看出。在一个拥有很多形状的拥挤图表上,这种情况更加明显。但是,现在,目标形状会强调显示出来,使得联系目标变得格外清晰。

与之类似,当您在点击联系时,标签会得到强调显示。这使得哪个标签属于哪一个联系变得更加明显。当许多联系在一起的时候,这一点非常有用。

另外,为什么联系没有像您预想的那样创建,可能尚不清楚。一个解释框会出现,向您展示为什么创建联系是不可能的。图 10 中的范例显示了创建一个包,从一个类导入到另一个类的尝试。当然,这是不可能的,因为导入的目标结尾必须是一个包。

图 10. 一条消息解释了为什么包导入不能得到创建
形状上的小工具提示

图 10 的大图

调整设置也是可能的,包括应该显示什么类型的信息,以及显示消息之前的延迟时间。为了实现该操作,您可以打开 Preferences 对话框并选择 Modeling > Appearance >Feedback

参考资源工具提示

如果您将鼠标停在一个图表元素上,那么就会出现一个工具提示告诉您关于此元素的信息。(这类似于当您将鼠标停留在 Eclipse 上 Java™ 文件中的方法上时)。另外,它提供了对相关元素及其父类的超链接。

图 11. 关于一个图表元素的工具提示
包含参考资源的工具提示

图 11 的大图

为了控制工具提示设置,例如透明度和延迟情况,您可以使用 Modeling > General 偏好页面。

图 12. General Preferences 页面视图可以用来控制工具提示的外观
General 对话框窗口中的 Preferences

富文本支持

富文本支持功能再次得到了改进,以使得它更加稳定。而且,注视和评论现在也已经完全支持富文本。除了能够使用富文本来编辑元素的参考资源,现在您还可以使用富文本来编辑注释或者评论的实际内容。

图 13. 编辑富文本之中的评论
富文本弹出框

图 13 的大图

偏好同样也被添加以控制富文本。但是重要的改进还是更改默认字体的功能。它使得您可以控制图表中的字体更加稳定,达到更美观的效果,而不用每次创建富文本时都需要更改设置。为了查看其他与文本相关的设置,您可以打开 Preferences 对话框并选择 Modeling > Text

图 14. 富文本偏好
Preferences 视图之中的文本窗格

如果只将您所感兴趣的元素显示出来,而隐藏剩下的图表,可以简化一个图表。例如,可能您只想显示程序系统的外部性部分。为了实现这一点,您可以将代表内部类的形状分隔为单独的层,然后立即隐藏层以简化图表。

如果您有已经存在的图表,或者如果您对处理层还不是很熟练,那么图表上的所有形状都位于 默认 层。该层不能被删除或者隐藏,它不能显示在 Layers 视图之中。

图 15. 默认条件下显示在左下角的 Layers 视图
只显示一个层的序列图

图 15 的大图

正如前面所提到的那样,Layers 视图默认条件下显示在 Modeling 透视图下。所有的层(除了默认的层)都是通过该视图进行控制的。为了添加一个层,您可以点击视图中的绿色加号按钮(如果您尚未向图表添加任何层的话,那么您还可以使用 点击这里以向图表添加一个新层 超链接)。

您可以在 Layers 视图中选择一个层来激活它。激活的 层会在视图中强调显示。当一个层被激活时,您在图表上所创建的新形状和连接器将会自动添加至层。为了向层添加已存在的形状和连接器,您可以选择图表元素并点击 Layers 视图中的 向层添加图表元素 按钮。

Layers 视图左边层上的三个框,可以用来控制(自左向右)层的可见性,锁定层,以及选择。如果层可见的话,那么在最左边的框中将会出现一只眼睛的图片。

注意:
当一个层被隐藏起来时,层中形状与层外形状之间的联系也会被隐藏起来。这就可以避免将一个形状与不存在的形状联系起来。

中间框会在锁定和解锁一个层之间进行切换。如果一个层被锁定的话,那么您就不能在图表上编辑层了,尽管档模型发生变化时,锁定层上的形状仍然可以进行更新。例如,如果形状的元素是一个类,而该类进行重命名时,图表元素中的名字将会得到自动更新。与之类似,如果类被删除的话,那么图表元素也会被删除掉。

最后,右边的框可以用来选择元素,并指示图表上的元素是否已经被选中了。点击选择框将会选择图表中层上的所有的框。与之类似,如果您在图表上选择了一个属于层的元素,那么选择框将会显示一个带有圆形的游标。您还可以双击一个层以选择该层上的所有元素。

提示:
在形状重叠非常厉害的拥挤图表上,快速排列形状在其他形状前面显示的顺序,是非常有用的。当您将一个形状置于层上时,那么最上层的层将会显示在图表前面,而最底层的层将会显示在图表的底部。如果从选择菜单中使用 Format>Order 指定顺序时,那么这种做法是值得肯定的,除非您执行的操作需要重新计算层的顺序(例如使用 Up 或者 Down 按钮来重新安排层的顺序)。

布局

形状在图表上安排的方式得到了非常大的改进。Rational Software Architect 现在使用 ILOG 集成所提供的更佳的布局逻辑规则。除了改进布局外,它还提供了更多的布局选择。您只需要点击几下您的鼠标,就可以将许多预定义布局配置上图表中的所有元素进行自动布局。

考虑一下图 16 中所提供的图。它只拥有五个元素,但是我仍然将其布置为一种完全混乱的局面。

图 16.布局糟糕图表中联系重叠的形状
图表范例

布局还可以得到进一步的改善。为了自动实现这一点,您可以选择图表表面并显示 Properties 弹出窗口。接下来,选择 Graph Layout 属性页面。从预定义的布局中进行选择,并点击 应用选择的图布局配置。您就可以让图表变得更加清晰,而不用付出很大的努力了!

图 17. 使用 Graph Layout 页面来控制图表的布局
Graph Layout 视图在右边显示了 Details

图 17 的大图

注意:
在图表处理过程中为了关闭动态功能,您可以打开 Preferences 对话框并选择 Modeling > Appearance。然后,您可以选中 Optimize layouts for performance 复选框。


接下来的内容

本文提供了 Rational Software Architect 8.0 版本中 UML Modeler 构件的新功能的概述。使用这些改进,您就能够更有效更快地建模了,它将重点放在精化图表,问题预防及解决,以及支持协作的工作流程之上。

本系列三篇文章所组成专题的下一篇文章,将会描述 UML 建模领域的其他改进,包括以下这些领域:

  • Project Explorer 视图
  • 搜索
  • 模型确认
  • 重构
  • 模型片段
  • 概述
  • UML 一致性
  • 观点与活性语言

致谢

作者谨感谢 Dusko Misic 与 Michael Hanner 对本文所作的评审,以及 Judith Broadhurst 对本文所作的编辑工作。

参考资料

学习

获得产品和技术

讨论

条评论

developerWorks: 登录

标有星(*)号的字段是必填字段。


需要一个 IBM ID?
忘记 IBM ID?


忘记密码?
更改您的密码

单击提交则表示您同意developerWorks 的条款和条件。 查看条款和条件

 


在您首次登录 developerWorks 时,会为您创建一份个人概要。您的个人概要中的信息(您的姓名、国家/地区,以及公司名称)是公开显示的,而且会随着您发布的任何内容一起显示,除非您选择隐藏您的公司名称。您可以随时更新您的 IBM 帐户。

所有提交的信息确保安全。

选择您的昵称



当您初次登录到 developerWorks 时,将会为您创建一份概要信息,您需要指定一个昵称。您的昵称将和您在 developerWorks 发布的内容显示在一起。

昵称长度在 3 至 31 个字符之间。 您的昵称在 developerWorks 社区中必须是唯一的,并且出于隐私保护的原因,不能是您的电子邮件地址。

标有星(*)号的字段是必填字段。

(昵称长度在 3 至 31 个字符之间)

单击提交则表示您同意developerWorks 的条款和条件。 查看条款和条件.

 


所有提交的信息确保安全。


static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=10
Zone=Rational
ArticleID=608414
ArticleTitle=IBM Rational Software Architect 8.0 版本中对 UML 建模特性的改进,第 1 部分: 建模透视图、属性、导航,以及图表方面的改进
publish-date=01172011