2024年5月26日发(作者:)

杨教授大学堂 精心创作的优秀程序员 职业提升必读系列资料

1.1 跟我学UML建模工具StarUML(第2部分)——StarUML工具软件

的主要功能界面和UML图的创建示例

1.1.1 StarUML工具软件的功能界面

1、程序的主窗口及相关的功能菜单

StarUML工具软件程序的主窗口中间为绘图区域,左下角选择所要拖放的UML图的类

型的各种选项,而右边为对应的编辑按钮。上面为各种下拉菜单。整个程序软件的使用界

面很简洁和易用,很容易上手。

在界面的左下角为建模符号区,是构成UML模型的基本要素;中间为建模区,相当于

一张图纸,从左侧区域选择建模符号,在此绘制模型即可;左上角为模型的浏览区,分为

用例模型、分析模型、设计模型、实现模型、部署模型五部分;右下角为属性浏览区,当

选中某一模型或模型元素时,它的所有属性都在这里展示,可以修改对应的属性。

杨教授大学堂,版权所有,盗版必究。 1/13页

杨教授大学堂 精心创作的优秀程序员 职业提升必读系列资料

在StarUML工具软件中如果完成了相关的UML图的设计,可以保存设计结果。而当

完成UML的绘制后,可以保存为StarUML模型的格式文件,而这些不同格式的输出结果

文件都可以通过文件菜单项目中的对应的子菜单实现。

也可以导出为PNG、JPEG、SVG等图片格式。

杨教授大学堂,版权所有,盗版必究。 2/13页

杨教授大学堂 精心创作的优秀程序员 职业提升必读系列资料

只需要设置对应的目标图片的文件名称

也可以导出HTML格式的页面文件:

杨教授大学堂,版权所有,盗版必究。 3/13页

杨教授大学堂 精心创作的优秀程序员 职业提升必读系列资料

也可以保存为模型片段(Model Fragments),而模型片段是保存为单独文件的项目的部

分。只有模型、子系统和包等这些项目才能构成模型片段。模型片段文件以“.MFG”扩展

名保存。为方便其他用户访问或为了重用,一个项目的部分可以保存为单独的模型片段文

件。

杨教授大学堂,版权所有,盗版必究。 4/13页

杨教授大学堂 精心创作的优秀程序员 职业提升必读系列资料

StarUML不仅可以导出或者输出不同格式的文件,也可以将其它文件直接导入到本项

目文件中:

2、StarUML工具软件所支持的各种模板类型

其中的“4+1 View Model”为软件架构 "4+1" 视图模型,该模型包含五个主要的视图:

1) 逻辑视图(Logical View),设计的对象模型(使用面向对象的设计方法时);

2) 过程视图(Process View),捕捉设计的并发和同步特征;

3) 物理视图(Physical View),描述了软件到硬件的映射,反映了分布式特性;

4) 开发视图(Development View),描述了在开发环境中软件的静态组织结构;

杨教授大学堂,版权所有,盗版必究。 5/13页

杨教授大学堂 精心创作的优秀程序员 职业提升必读系列资料

5) 场景(Scenarios)

下图为创建“4+1 View Model”项目后的结果界面,在右端自动地出现软件架构 "4+1"

视图模型中的五个主要的视图元素,在项目中可以直接编辑这些视图元素,从而可以快速

地创建基于软件架构 "4+1" 视图模型的UML文件:

而Rational类型的项目菜单,则是可以直接创建出兼容于Rational UML工具软件的

UML设计结果的项目文件——用例视图、逻辑视图、组件视图和部署视图。

杨教授大学堂,版权所有,盗版必究。 6/13页

杨教授大学堂 精心创作的优秀程序员 职业提升必读系列资料

1.1.2 StarUML工具软件所支持的UML图及如何创建项目

1、StarUML工具软件所支持的各种UML图类型

如果需要绘制相关的UML图,只需要在“Model”菜单中的“Add Diagram”子菜单中

选择对应的UML图子菜单项目。

(1)类图(Class Diagram)

类图是各种类相关的元素静态关系的可视表示。类图不仅包含类,而且还包含接口、

枚举、包和各种关系、实例及其联系。

(2)用例图 (Use Case Diagram)

杨教授大学堂,版权所有,盗版必究。 7/13页

杨教授大学堂 精心创作的优秀程序员 职业提升必读系列资料

用例图是特定系统或对象中用例及外部角色间关系的可视表示。用例表示系统功能以

及系统如何同外部角色交互的。

(3)顺序图(Sequence Diagram)

顺序图表示实例的交互。它是 InteractionInstanceSet的直接表示,

CollaborationInstanceSet 是InteractionInstanceSet内实例交互的集合。而顺序角色图是面向

-ClassifierRole表达式的。顺序图是面向实例表达式的。

(4)协作图(Collaboration Diagram)

协作图表示实例间的协作,它是CollaborationInstanceSet内部的实例的协作模型的直接

表示。协作角色图是面向类元角色(ClassifierRole)的表示法,而协作图是面向实例的表

示法。

(5)状态图(Statechart Diagram)

状态图是通过状态及其转换表示的特定对象的静态行为。尽管一般地说状态图用于表

示类的实例的行为,但它还可以用于表示其他元素的行为。

(6)活动图(Activity Diagram)

活动图是状态图的一种特殊形式,适合于表示动作执行流。活动图通常用于表示工作

流,常用于象类、包和操作等对象。

(7)构件图(Component Diagram)

构件图表示软件构件之间的依赖。组成软件构件的那些元素和实现软件的那些元素都

可以用构件图来表示。

(8)部署图(Deployment Diagram)

部署图表示表示物理计算机和设备硬件元素和及分配给它们的软件构件、过程对象。

(9)组合结构图(Composite Structure Diagram)

组合结构图是一种表示类元内部结构的图。它包含在在系统于其他部分的交互点。

2、区分模型、视与图(Model, View and Diagram)等相关的概念

在StarUML中清晰地区分了模型、视与图(Model, View andDiagram)的概念,其中的

模型是包含软件模式信息的元素,而视则是模型中信息的可视表达法,图则是表示用户特

定设计思想的可视元素的集合。

3、理解StarUML中项目的含义

(1)在StarUML中的项目是基本的管理单位

在StarUML中的一个项目可以管理一个或多个软件模型,它是在任何软件模型中都存

杨教授大学堂,版权所有,盗版必究。 8/13页

杨教授大学堂 精心创作的优秀程序员 职业提升必读系列资料

在的顶级的包。一般地说,一个项目保存在一个文件中。

(2)项目结构

一个项目包含并管理下列子元素:

项目子元素

描述

模型(Model) 管理一软件模型的元素。

管理表示子系统的模型的元素。

管理元素所需的最一般的元素。

子系统(Subsystem)

包(Package)

(3)项目文件

项目文件以XML格式、.UML为扩展名保存。在StarUML中,所创建的全部的模式、

视、图都保存在一个项目文件中。一个项目也可以分开来保存在多个不同的单元中。项目

文件中包含下列信息:项目中所用的UML轮廓(profiles)、项目所引用单元文件 、项目

中包含的所有模块的信息、项目中包含的所有视与图信息。

(4)新建项目文件

每次启动StarUML时将自动地创建一个默认的项目,当然也可以点击文件菜单中的新

建子菜单创建一个新的项目文件。然后在该项目中添加所需要的各种模型和视、图等UML

元素,最终将项目文件保存。

4、新建一个UML Conventional(常规的UML)类型的模板项目示例

只需要点击“文件”菜单中的“New From Template”子菜单项目中的“UML Conventional”

下级子菜单项目。

杨教授大学堂,版权所有,盗版必究。 9/13页

杨教授大学堂 精心创作的优秀程序员 职业提升必读系列资料

将自动地创建出一个空的项目

5、保存所创建出的模板项目

选择文件菜单中的“Save as”子菜单项目,将可以保存所创建出的模板项目文件。

杨教授大学堂,版权所有,盗版必究。 10/13页

杨教授大学堂 精心创作的优秀程序员 职业提升必读系列资料

输入文件名称为“社区信息管理系统用例包”,然后保存该模板项目文件。

下次如果需要加载该模板项目文件,可以直接双击该“社区信息管理系统用例包”文

件,将自动启动StarUML软件工具并加载模板模板项目文件。

杨教授大学堂,版权所有,盗版必究。 11/13页

杨教授大学堂 精心创作的优秀程序员 职业提升必读系列资料

6、UML 轮廓(profile)

由于UML是标准和统一的,从而可以应用UML来表示任何的思想和观念。也许这也

是UML的弱点之一,因为当将UML应用到特定领域时的观念将不容易详细表述。

为克服这个弱点,StarUML提供了UML 轮廓(profile)来扩充UML。通过在UML轮

廓中直接应用这些概念,StarUML可轻松支持UML的扩充。

杨教授大学堂,版权所有,盗版必究。 12/13页

杨教授大学堂 精心创作的优秀程序员 职业提升必读系列资料

杨教授大学堂,版权所有,盗版必究。 13/13页