UML 建模语言
实验指导
周 景 编
长 沙 学 院 计 算 机 科 学 与 技 术 系
1
前 言
前 言
UML 建模语言用于对软件密集型系统进行可视化、详述、构造和文档化,也可以用于业
务建模及其他非软件系统的建模。目前,UML 已成为被广泛公认的工业标准,拥有越来越多
的用户。
继 Smalltalk-80 之后,20 世纪 80 年代有一大批面向对象编程语言问世,标志着面向
对象方法走向成熟和实用。面向对象方法也不再局限于面向对象编程,开始在系统设计阶段
延伸,出现一批早期的面向对象的设计方法。到 20 年代末期,面向对象方法的研究重点转
向面向对象的分析,并将 OOA 与 OOD 密切联系在一起,出现了一大批面向对象的分析和设计
方法。目前,大多数成熟的软件开始组织已经从分析、设计到编程、测试全面地采用面向对
象方法,是面向对象毋庸置疑地称为当前软件领域的主流技术。UML 是在多种面向对象分析
与设计方法相互融合的基础上形成的,UML 的出现使面向对象建模概念的表示法趋于统一和
标准化。所以学习 UML 建模语言,对于掌握和理解面向对象技术,学习面向对象分析、设计
和编程非常重要。为了达到这些目标,结合自己一些学习 UML 的教学经验,编写本教程。
本教程通过对一个餐馆系统进行面向对象分析、设计和实现的过程并在这个过程如何应
用 UML 进行了一个示范。实验内容共有 8 次,分别是建模工具的使用、系统的需求分析与用
况建模、建立系统的领域模型(分析类图)、建立系统的分析模型(交互图)、建立软件体
系结构、建立系统的设计模型(设计类图和交互图,分 2 次实验 4 个学时完成)、面向对象
系统的实现。整个开发过程采用迭代的开发过程。
因编者的经验、水平和写作时间限制,书中难免有疏漏、不妥和错误之处,欢迎读者批
评指正。祝学习愉快!
编者
2009 年 8 月
2
目 录
一 建模工具的使用............................................4
二 建立用况模型..............................................14
三 建立领域模型..............................................24
四 建立分析模型..............................................28
五 建立软件体系结构......................................31
六 建立设计模型..............................................32
3
一 建模工具的使用
1.实验目的
(1) 熟悉建模工具 staruml 的环境
(2) 使用建模工具建立简单的模型
2.实验类型:验证型
3.实验学时:2
4.实验原理和知识点
(1) 实验原理:StarUML(简称 SU),是一种创建 UML 类图,并能够自动生成 Java 的“stub
code” 的工具。SU 也可以做 JAVA 逆向工程,以产生相应的 UML 图表。在本次实验中,
我们将使用 SU 建立工程,设计一个 pizza 饼的模型,创建 UML 图。SU 可以生成反映类结
构的代码。
(2) 知识点:StarUML、JAVA、UML 图、工程、模型
5.实验环境(硬件环境、软件环境):
(1) 硬件环境:Intel Pentium III 以上 CPU,128MB 以上内存
(2) 软件环境:StarUML
6.实验内容:
(1) StarUML 安装、启动。
(2) 建立新工程和模型
(3) 创建 UML 图
(4) 创建类、属性、行为和关系
7.实验任务
1.综述:
StarUML 是一种生成类图和其他类型的统一建模语言(UML)图表的工具。这是一个用
Java 语言描述的创建类图的简明手册。 StarUML(简称 SU),是一种创建 UML 类图,并能
够自动生成 Java 的“stub code” 的工具。SU 也可以做 JAVA 逆向工程,以产生相应的 UML
图表。在本教程中,我们将使用 SU 设计一个 pizza 饼。执行下列步骤,可以创建如下面所
示的 UML 图。SU 可以生成反映类结构的代码,而不是任何对象的具体行动。因此,在使
用 SU 创建图表后,你会为此 stub code 添加剩余的功能性代码,填写每种方法本来应该做
的事。
4
2.安装:
首先,我们必须先安装将要使用的软件。StarUML ,是一个开放源码软件, 遵循 GPL
协议许可(GNU 公共许可证) ,并免费提供下载。
3.启动
安装以后就可以启动该程序。
4.添加新工程
然后,一个名叫:New Project By Approach 的对话框会弹出。选择“Empty Project”并
且按下"确定"。这里建议你不要勾选"设置为默认的做法" 复选框。
5
4.选择模型
在右边的“Model Explorer”框中选定“Untitled”模块。
5.添加模型
通过“Model”主菜单,或右击选定的模型,可以" Add/Design Model "
6
6.添加类图
通过“Model”主菜单,或右击选定模型,可以“Add Diagram/Class Diagram”:
7.设置 profile
通过“Model/Profile...”菜单去设置工程所需的 profile。这决定了工程所使用的规
则和约定。一定要包含"JAVA Porfile"这一项目。
7
8.保存工程
立即就保存工程,这样在出现问题的时候,您就不会丢失信息。 从“File ”菜单,选
择“Save” ,并选择一个地方以保存工程。你的 StarUML 项目现在应该看起来的是这样的:
9.创造图表
现在,开始真正创造图表,从默认就在屏幕的左边的“Toolbox”选择“类”图标,然后
左键单击 diagram 窗口的某处。这样就使用通用名字创造了一个新的类。双击,将类改名为
Circle。
10.添加属性
右击图中的目标,在弹出菜单中选择“Add”中的“Attribute”(被标示为绿色),为其添
加一个属性(或者域),填入期望的名字“_radius”。
具体的数据类型,在属性面板(右下侧的窗口) ,由双打字,在"类型"时段。 在窗体
右下边的 Properties 面板中,找到“Type”输入框,输入 double 作为_radius 属性的类型。
类的内部数据(域/属性)都是私有的,因为他们是严格由类内部使用的。所以,在
Properties 面板中将_radius 设置为“私有”。
11.继续进行设计
重复同样的过程,添加所谓的名字叫做 Rectangle 的类和 double 型的私有成员_width 和
_height。
8