UmlPPT 课件 ch19
合集下载
UML培训教材ppt课件
对另一端的类呈现的职责。当一个类处于 关联的某一端时,该类就在这个关系中扮 演了一个特定的角色。 2)多重性:在关联的另一端的类的每个对 象要求在本端的类必须有多少个对象。
25
关系之二:关联(续二)
例如下图: 一个人对公司来讲的角色是employer,而公司
对于人来讲的角色是employee; 一个人只能就职于一家公司,但一家公司会有
ClassB
30
关系之二:关联(续七)
组合是一种更强形式的关联,整体与部分之间具有强 的拥有关系,整体与部分的生命周期是一致的。画成 一端为实心菱形的实线。组合类包含另一个类实例。
class ClassA {
ClassB the_class_b;
};
class ClassB {
ClassA *the_class_a;
够使用这个特性,用"-"号做前缀表示。
12
结构事物之二:类 (继二)
例如:一个人的名字 谁都可以叫(name); 但只有他的孩子可以 继承他的模样 (face_like);有多少 钱只有他一个人知道 (how_much_money)。
person
+ name() # face_like() - how_much_money()
ClassB
29
关系之二:关联(续六)
聚合是一种强关联,它描述了整体和部
分之间的结构关系,画成一端为空心菱 形的实线。聚合类包含另一个类的指针。
class ClassA {
ClassB *the_class_b;
};
class ClassB {
ClassA *the_class_a; };
ClassA
参与者实际上是构造型为actor的类,画成一个小人。
25
关系之二:关联(续二)
例如下图: 一个人对公司来讲的角色是employer,而公司
对于人来讲的角色是employee; 一个人只能就职于一家公司,但一家公司会有
ClassB
30
关系之二:关联(续七)
组合是一种更强形式的关联,整体与部分之间具有强 的拥有关系,整体与部分的生命周期是一致的。画成 一端为实心菱形的实线。组合类包含另一个类实例。
class ClassA {
ClassB the_class_b;
};
class ClassB {
ClassA *the_class_a;
够使用这个特性,用"-"号做前缀表示。
12
结构事物之二:类 (继二)
例如:一个人的名字 谁都可以叫(name); 但只有他的孩子可以 继承他的模样 (face_like);有多少 钱只有他一个人知道 (how_much_money)。
person
+ name() # face_like() - how_much_money()
ClassB
29
关系之二:关联(续六)
聚合是一种强关联,它描述了整体和部
分之间的结构关系,画成一端为空心菱 形的实线。聚合类包含另一个类的指针。
class ClassA {
ClassB *the_class_b;
};
class ClassB {
ClassA *the_class_a; };
ClassA
参与者实际上是构造型为actor的类,画成一个小人。
UML教程精ppt课件
UML教程
版本 号
日期 2006-0531
拟制/修 改人
版本修订记录
修改记录
1.0
郭天良
课程安排
面向对象的理论 UML语言 利用UML进行面向对象的建模
课程安排
面向对象的理论 UML语言 利用UML进行面向对象的建模
面向对象设计的学习路线
OO
OOA
: :
OOD DP
:
:
:
UML
… Case-Study …
重点要介 绍内容
…… …… …… ……
学习线路图
议程
面向对象的理论 UML语言 利用UML进行面向对象的建模
面向对象的理论
面向对象技术概述 面向对象技术发展 面向对象与结构化 转化到面向对象
面向对象技术
是一种看待计算机软件系统的观点 是一种系统分析和设计的思想 是一种编程方法 是一组设计模式 是一种编程语言设计思路 是实践者的日常工作
自然语言 结构化分析 分析与设计的鸿沟 结构化设计 编程语言
面向对象 VS 过程
数据流图 数据字典 自然语言 OO方法
面向对象的方法
问题域
需求工程
需求模型 对象模型
OO建模语言 OOA&D 模块和过程 OO编程语言
结构化编程,如C语言 测 试 计算机系统
OOP,如Java语言 测 试 计算机系统
传统结构化方法
分析模 型
设计模 型
实施模 型 测试模 型
功能模块(SC图),模块之间 类和对象实现,类/对象的关联、聚集、继 的连接/调用是模块的附属形 承等连接、连接规范和约束作为显式定 式 义 体系结构设计 根据文档进行单元测试,集成 测试,确认测试 组件图,配置图 单元测试采用类图,集成测试用实现图 和交互图,确认测试采用用例图
版本 号
日期 2006-0531
拟制/修 改人
版本修订记录
修改记录
1.0
郭天良
课程安排
面向对象的理论 UML语言 利用UML进行面向对象的建模
课程安排
面向对象的理论 UML语言 利用UML进行面向对象的建模
面向对象设计的学习路线
OO
OOA
: :
OOD DP
:
:
:
UML
… Case-Study …
重点要介 绍内容
…… …… …… ……
学习线路图
议程
面向对象的理论 UML语言 利用UML进行面向对象的建模
面向对象的理论
面向对象技术概述 面向对象技术发展 面向对象与结构化 转化到面向对象
面向对象技术
是一种看待计算机软件系统的观点 是一种系统分析和设计的思想 是一种编程方法 是一组设计模式 是一种编程语言设计思路 是实践者的日常工作
自然语言 结构化分析 分析与设计的鸿沟 结构化设计 编程语言
面向对象 VS 过程
数据流图 数据字典 自然语言 OO方法
面向对象的方法
问题域
需求工程
需求模型 对象模型
OO建模语言 OOA&D 模块和过程 OO编程语言
结构化编程,如C语言 测 试 计算机系统
OOP,如Java语言 测 试 计算机系统
传统结构化方法
分析模 型
设计模 型
实施模 型 测试模 型
功能模块(SC图),模块之间 类和对象实现,类/对象的关联、聚集、继 的连接/调用是模块的附属形 承等连接、连接规范和约束作为显式定 式 义 体系结构设计 根据文档进行单元测试,集成 测试,确认测试 组件图,配置图 单元测试采用类图,集成测试用实现图 和交互图,确认测试采用用例图
UML概述ppt课件精选全文
用于表示从同步消息激活的动作返回到调用 者的消息
注释体 用于对UML实体进行文字描述
注释连接
注释连接将注释体与要描述的实体相连。说 明该注释体是对该实体所进行2-
协作图(通讯图)
协作图表示一组对象间关系以及交互活动
协作图可以认为是对象图的扩展,它增加了一些符号用于表 示对象间的交互。协作图和顺序图具有同构性。
指向源同步 消息
表示对象间从目的对象向源对象发送同步消息
指向目的的 同步消息
表示对象间从源对象向目的对象发送同步消息
注释体
注释连接
-35-
示例:协作图
-36-
活动图
活动图:通过动作来组织,主要用于描述某一方法、机制或 用例的内部行为
主要使用场合:业务建模、用例分析
-37-
活动图元语-1
活动 组合活动
1997.1公布 UML 1.0 合作伙伴
业
公
意见
众 1996.6和1996.10 UML 0.9&0.91
化
反
馈 OOPSLA95 Unified Method 0.8
标
准
Booch93 OMT-2
化
Booch91 OOSE
OMT-1 其他方法 统
一
UML基本图
静态模型 (系类统图结 构) class diagrams
转移
用于说明两个对象间存在某种关系,如满足某 个条件并当某一事件发生时,对象将从一个状 态变迁到另一个状态并同时执行一些活动
注释体
注释连接
示例:状态图
顺序图
顺序图:主要用于显示对象间的交互活动,但没有明确的交 互环境和对象状态
主要使用场合:系统分析(用例分析)、设计
注释体 用于对UML实体进行文字描述
注释连接
注释连接将注释体与要描述的实体相连。说 明该注释体是对该实体所进行2-
协作图(通讯图)
协作图表示一组对象间关系以及交互活动
协作图可以认为是对象图的扩展,它增加了一些符号用于表 示对象间的交互。协作图和顺序图具有同构性。
指向源同步 消息
表示对象间从目的对象向源对象发送同步消息
指向目的的 同步消息
表示对象间从源对象向目的对象发送同步消息
注释体
注释连接
-35-
示例:协作图
-36-
活动图
活动图:通过动作来组织,主要用于描述某一方法、机制或 用例的内部行为
主要使用场合:业务建模、用例分析
-37-
活动图元语-1
活动 组合活动
1997.1公布 UML 1.0 合作伙伴
业
公
意见
众 1996.6和1996.10 UML 0.9&0.91
化
反
馈 OOPSLA95 Unified Method 0.8
标
准
Booch93 OMT-2
化
Booch91 OOSE
OMT-1 其他方法 统
一
UML基本图
静态模型 (系类统图结 构) class diagrams
转移
用于说明两个对象间存在某种关系,如满足某 个条件并当某一事件发生时,对象将从一个状 态变迁到另一个状态并同时执行一些活动
注释体
注释连接
示例:状态图
顺序图
顺序图:主要用于显示对象间的交互活动,但没有明确的交 互环境和对象状态
主要使用场合:系统分析(用例分析)、设计
UML流程图(PPT 41张)
• 结点 • 连接
部署图
老师在线答疑系统部署图
课后练习
老师在线答疑系统的网络白板需求描述: 1、同时使用白板的用户必须是2个,一个老师和一个学生 2、使用白板的2个用户是对等的,两个用户看到的内容是一 样的
3、用户可以在上面写文字和作图,后者包括:直线,圆, 椭圆和矩形
4、用户可以增删,选择,移动上面的文字和图形标记
活动图
老师登陆系统
活动图
练习 1、学生第一次开学入学,首先正确填写表格, 如果表格不正确,那么必须获得帮助以正 确填写它们。接着办理大学的入学手续。 但是,在大学里成功入学后,必须参加指 定的概况介绍,还要至少登记一个研习班 并交付一部分的学费。使用活动图来表达 该流程
顺序图
顺序图用来描述对象之间动态的交互关系, 着重体现对象间消息传递的时间顺序。 • 对象 • 消息
状态图
状态图表示某个类所具有的不同状态和状态 转移时的触发条件。 • 状态 • 转移
状态图
• 老师在线状态图
状态图
练习
1、汽车有向前行驶,向后行驶和停止3种状
态,请使用UML图将3种状态之间的转移关
系表达出来
活动图
活动图用来描述工作的流程,对并行的工 作流程能很好的支持。 • 活动 • 转移的功能单元。 • 参与者 • 用例 • 关联关系 • 依赖关系 • 继承关系
用例图
老师在线答疑系统需求描述 • 他是一个用于老师和学生之间进行即时沟通的系统。 • 系统由老师使用的老师端,学生使用的学生端和一个有公 网地址的登陆服务端组成。 • 老师登陆系统后会在老师列表中出现,并显示出他的专业、 姓名、专长和状态是否忙等信息。也可以看到其他所有登 录的老师的信息。 • 学生登陆后可以看到所有已经登录的老师列表。 • 学生可以选择一个不忙的老师进行问题咨询,和选择的老 师建立连接后就可以通过语音加白板和老师进行交流。此 时其他学生将看到该老师处于忙的状态。
UML类图详细教程PPT课件
第2页/共109页
二、UML类图中的符号
(一)类
类(Class)在UML中通常以实线矩形框表示,矩形框中含有若干分隔框,分别 包含类的名字、属性、操作、约束以及其他成分等,如下图所示。
类的图形表示和示例
第3页/共109页
在类图中,根据建模的不同景象,类图标中不一定列出全部的内容。如在建立分析 模型或设计模型时,甚至可以只列出类名,在图中着重表达的是类与类之间的联系; 在建立实现 模型时,则应当在类图标中详细给出类的属性和方法等细节。
displays
1
Administrator
OnlineUser
WebSite
use
+ UserName : String = ""
# Password : String = ""
+ Logon() + View()
第44页/共109页
练习: 建模一个类图 在这个练习中,将会从用例图建模一个类图。读者应该遵循前面介绍的步骤来建模
存在,而只是表示类图不需要该细节。
第43页/共109页
最后,为属性和操作提供参数、数据类型和初始值。如下图所示:
Teacher
1 maintains
1..*
ReportCard
+ Generate()
contains
1..*
1
Grades
1..*
generates
+ RecordGrades(in student : String, in assignment : String, in grade : Integer) + UpdateGrades(in student : String, in assignment : String, in grade : Integer) + Distribute() - SaveGrades() - LoadGrade(argname)
二、UML类图中的符号
(一)类
类(Class)在UML中通常以实线矩形框表示,矩形框中含有若干分隔框,分别 包含类的名字、属性、操作、约束以及其他成分等,如下图所示。
类的图形表示和示例
第3页/共109页
在类图中,根据建模的不同景象,类图标中不一定列出全部的内容。如在建立分析 模型或设计模型时,甚至可以只列出类名,在图中着重表达的是类与类之间的联系; 在建立实现 模型时,则应当在类图标中详细给出类的属性和方法等细节。
displays
1
Administrator
OnlineUser
WebSite
use
+ UserName : String = ""
# Password : String = ""
+ Logon() + View()
第44页/共109页
练习: 建模一个类图 在这个练习中,将会从用例图建模一个类图。读者应该遵循前面介绍的步骤来建模
存在,而只是表示类图不需要该细节。
第43页/共109页
最后,为属性和操作提供参数、数据类型和初始值。如下图所示:
Teacher
1 maintains
1..*
ReportCard
+ Generate()
contains
1..*
1
Grades
1..*
generates
+ RecordGrades(in student : String, in assignment : String, in grade : Integer) + UpdateGrades(in student : String, in assignment : String, in grade : Integer) + Distribute() - SaveGrades() - LoadGrade(argname)
uml建模PPT课件
需求分析
对收集到的需求进行整理、分类和细化,形成详细的需求规格说 明书。
静态建模
定义类和对象
根据需求分析结果,确定系统中的类和对象,以及它 们之间的关系。
建立类图
使用UML类图表示类和对象及其关系,包括继承、聚 合、关联等。
定义属性
为每个类和对象定义必要的属性和方法,描述其特征 和行为。
动态建模
UML建模PPT课件
目录
• UML建模概述 • UML基本元素 • UML图示 • UML建模过程 • UML建模实践
01
UML建模概述
UML的定义与特点
总结词
UML是一种用于对软件密集系统进行可视化建模的统一建模 语言。它通过统一的符号和工具,为软件开发人员提供了一 种通用的建模语言,以简化复杂软件系统的设计和开发过程 。
详细描述
UML是一种基于图形化表示的建模语言,使用统一的符号和 图形来表示系统中的元素、关系和结构。它支持面向对象的 分析和设计,通过可视化的方式帮助开发人员更好地理解和 管理复杂的软件系统。
UML的历史与发展
总结词
UML起源于1990年代,由Grady Booch 、Jim Rumbaugh和Ivar Jacobson三位 面向对象专家共同开发。经过多年的发 展,UML已经成为软件开发领域的标准 建模语言之一,并不断演进和完善。
VS
详细描述
UML的发展历程可以分为三个阶段:初 始阶段、标准化阶段和推广应用阶段。在 初始阶段,UML由Grady Booch、Jim Rumbaugh和Ivar Jacobson等面向对象 专家共同开发,并逐渐受到业界的关注。 在标准化阶段,UML经过规范化和标准 化过程,成为OMG(Object Management Group)标准之一。在推 广应用阶段,UML被广泛应用于各种软 件开发生命周期中,成为软件开发领域的 标准建模语言之一。
对收集到的需求进行整理、分类和细化,形成详细的需求规格说 明书。
静态建模
定义类和对象
根据需求分析结果,确定系统中的类和对象,以及它 们之间的关系。
建立类图
使用UML类图表示类和对象及其关系,包括继承、聚 合、关联等。
定义属性
为每个类和对象定义必要的属性和方法,描述其特征 和行为。
动态建模
UML建模PPT课件
目录
• UML建模概述 • UML基本元素 • UML图示 • UML建模过程 • UML建模实践
01
UML建模概述
UML的定义与特点
总结词
UML是一种用于对软件密集系统进行可视化建模的统一建模 语言。它通过统一的符号和工具,为软件开发人员提供了一 种通用的建模语言,以简化复杂软件系统的设计和开发过程 。
详细描述
UML是一种基于图形化表示的建模语言,使用统一的符号和 图形来表示系统中的元素、关系和结构。它支持面向对象的 分析和设计,通过可视化的方式帮助开发人员更好地理解和 管理复杂的软件系统。
UML的历史与发展
总结词
UML起源于1990年代,由Grady Booch 、Jim Rumbaugh和Ivar Jacobson三位 面向对象专家共同开发。经过多年的发 展,UML已经成为软件开发领域的标准 建模语言之一,并不断演进和完善。
VS
详细描述
UML的发展历程可以分为三个阶段:初 始阶段、标准化阶段和推广应用阶段。在 初始阶段,UML由Grady Booch、Jim Rumbaugh和Ivar Jacobson等面向对象 专家共同开发,并逐渐受到业界的关注。 在标准化阶段,UML经过规范化和标准 化过程,成为OMG(Object Management Group)标准之一。在推 广应用阶段,UML被广泛应用于各种软 件开发生命周期中,成为软件开发领域的 标准建模语言之一。
UML设计模式ppt课件
– 1995年,PLoP‘95 仍在伊利诺伊州的Allerton Park举行 ,“四人组” 出版了《设计模式:可复用面向对象软件的基础》(Design Pattern s: Elements of Reusable Object-Oriented Software)一书,本书 成为1995年最抢手的面向对象书籍,也成为设计模式的经典书籍。
前提条件
关联解法
解法
效果/优缺点/已知应 用
10
其他相关模式
设计模式的诞生与发展
• 软件模式
– 软件模式与具体的应用领域无关,在模式发现 过程中需要遵循大三律(Rule of Three),即只 有经过三个以上不同类型(或不同领域)的系 统的校验,一个解决方案才能从候选模式升格 为模式。
11
设计模式的诞生与发展
18
设计模式的定义与分类
• 设计模式的分类
– 根据范围,即模式主要是用于处理类之间关系 还是处理对象之间的关系,可分为类模式和对 象模式两种:
• 类模式处理类和子类之间的关系,这些关系通 过继承建立,在编译时刻就被确定下来,是属 于静态的。
• 对象模式处理对象间的关系,这些关系在运行 时刻变化,更具动态性。
23
设计模式的优点
• 设计模式是从许多优秀的软件系统中总结出的成功 的、能够实现可维护性复用的设计方案,使用这些方 案将避免我们做一些重复性的工作,而且可以设计出 高质量的软件系统。
• 设计模式的主要优点如下:
– 设计模式融合了众多专家的经验,并以一种标准的形 式供广大开发人员所用,它提供了一套通用的设计词 汇和一种通用的语言以方便开发人员之间沟通和交流, 使得设计方案更加通俗易懂。对于使用不同编程语言 的开发和设计人员可以通过设计模式来交流系统设计 方案,每一个模式都对应一个标准的解决方案,设计 模式可以降低开发人员理解系统的复杂度。
前提条件
关联解法
解法
效果/优缺点/已知应 用
10
其他相关模式
设计模式的诞生与发展
• 软件模式
– 软件模式与具体的应用领域无关,在模式发现 过程中需要遵循大三律(Rule of Three),即只 有经过三个以上不同类型(或不同领域)的系 统的校验,一个解决方案才能从候选模式升格 为模式。
11
设计模式的诞生与发展
18
设计模式的定义与分类
• 设计模式的分类
– 根据范围,即模式主要是用于处理类之间关系 还是处理对象之间的关系,可分为类模式和对 象模式两种:
• 类模式处理类和子类之间的关系,这些关系通 过继承建立,在编译时刻就被确定下来,是属 于静态的。
• 对象模式处理对象间的关系,这些关系在运行 时刻变化,更具动态性。
23
设计模式的优点
• 设计模式是从许多优秀的软件系统中总结出的成功 的、能够实现可维护性复用的设计方案,使用这些方 案将避免我们做一些重复性的工作,而且可以设计出 高质量的软件系统。
• 设计模式的主要优点如下:
– 设计模式融合了众多专家的经验,并以一种标准的形 式供广大开发人员所用,它提供了一套通用的设计词 汇和一种通用的语言以方便开发人员之间沟通和交流, 使得设计方案更加通俗易懂。对于使用不同编程语言 的开发和设计人员可以通过设计模式来交流系统设计 方案,每一个模式都对应一个标准的解决方案,设计 模式可以降低开发人员理解系统的复杂度。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
19.4 活动图
19.4.1 什么是活动图
活动图(Activity Diagram)是一种用于描述系统行为的模型视图。与 状态图不同的是,它用来描述动作和动作导致对象状态改变的结果, 而不用考虑引发状态改变的事件。活动图可用来记录单个操作或方法 的逻辑、单个用例或商业过程的逻辑流程。 右图描述了用户登录图书管理系统后的活动图:
19.1 顺序图
19.1.2 详解顺序图
在顺序图中常见的符号有: 1. 对象。 顺序图中的对象可以是系统的参与者或者任何有效的系统对象。对象 的表示形式如下: 2. 生命线(Lifeline)。
生命线是一条垂直的虚线,位于每个对象的底部中心的位置。生命线 是一个时间线,越往下,表示时间越靠后,表现了对象存在的时段。
19.2 协作图
19.2.1 什么是协作图
所谓协作(Collaboration),是指在一定的语境中用以实现某些行为的 一组对象间的相互作用。协作图(Collaboration Diagram)描述了在 这组对象为实现某种目的而相互合作的情况。因此,协作图是表现对 象协作关系的图。 图19-11中所示的就是查询操作对应的协作图:
19.2 协作图
19.2.2 详解协作图
3. 链。 协作图中的链是两个或多个对象之间的独立连接。在协作图中,链的 表示形式为一个或多个相连的线或弧。在自身相关联的类中,链是两 端指向同一对象的回路。如图所示:
19.2 协作图
19.2.3 用RationalRose画协作图
打开Rational Rose,右击主界面左侧的“Logical View”节点,选择 “New”,选择“Collaboration Diagram”,可以建立协作图。双击打开所 建立的协作图,可以看到工具条。可以根据提示进行协作图的描绘。 选择菜单上的“File”-“Save”命令,可以将图保存为mdl文件。
打开Rational Rose,右击主界面左侧的“Logical View”节点,选择 “New”,选择“Statechart Diagram”,可以建立状态图。双击打开所建 立的状态图,可以看到工具条。可以根据提示进行状态图的描绘。选 择菜单上的“File”-“Save”命令,可以将图保存为mdl文件。
19.5 小结
本章介绍了顺序图、协作图、状态图和活动图的定 义和介绍,同时也介绍了用RationalRose描绘这些 图。
19.2 协作图
19.2.2 详解协作图
2. 消息。 协作图通过一系列的消息来描述系统的动态行为。在协作图中,消息 使用带有标签的箭头来表示,它附在连接发送者和接收者的链上。
链连接了发送者和接收者,箭头指向接收者。每个消息包括一个顺序 号以及消息的名称。如图所示:
在RationalRose中,可以双击图形界面中画出的箭头,设定该消息的 类型。如设定为Return,则显示为虚线。
19.3 状态图
19.3.2 详解状态图
3. 状态。 状态用于对实体在其生命周期中的各种状况进行建模,状态由一个带 圆角的矩形表示。如图所示: 4. 转换箭头。 转换用带箭头的直线表示,指向目标状态。转换还可以标注与此转换 相关的选项,如事件、动作等,如果转换上没有标注触发转换的事件 ,则表示此转换自动进行。图所示:
19.4 活动图
19.4.2 详解活动图
在活动图中常见的符号有: 1. 初始状态。 活动图都有一个初始状态,它代表活动图的起始位置。一个活动图只 能有一个初始状态,用一个实心的圆表示: 2. 终止状态。 终止状态是一个活动图的终点,一个活动图可以拥有一个或者多个终 止状态。用一个实心的环形圆表示:
19.1 顺序图
19.1.1 什么是顺序图
很显然,可以比较清楚地从图片中看出登录的流程。 顺序图是一个二维图,可以用来描述一个事务的历史过程。其中,纵 向是时间轴,时间沿竖线向下延伸。横向代表了在协作中各独立对象 的角色。顺序图中的消息使用从一个对象的生命线到另一个对象生命 线的箭头表示,箭头以时间顺序在图中从上到下排列。
19.3 状态图
19.3.2 详解状态图
在状态图中常见的符号有: 1. 初始状态。 状态图都有一个初始状态,它代表状态图的起始位置。一个状态图只 能有一个初始状态,用一个实心的圆表示: 2. 终止状态。
终止状态是一个状态图的终点,一个状态图可以拥有一个或者多个终 止状态。用一个实心的环形圆表示:
打开Rational Rose,右击主界面左侧的“Logical View”节点,选择 “New”,选择“Sequence Diagram”,可以建立顺序图。双击打开所建立 的顺序图,可以看到工具条。可以根据提示进行顺序图的描绘。选择 菜单上的“File”-“Save”命令,可以将图保存为mdl文件。
19.4 活动图
19.4.3 用RationalRose画活动图
打开Rational Rose,右击主界面左侧的“Logical View”节点,选择 “New”,选择“Activity Diagram”,可以建立活动图。双击打开所建立的 活动图,可以看到工具条。可以根据提示进行活动图的描绘。选择菜 单上的“File”-“Save”命令,可以将图保存为mdl文件。
19.4.2 详解活动图
6. 分叉与结合。 分叉用来表示将一个控制流分成两个或者多个并发运行的分支,用一 条线段来表示。如图19-33所示:
19.4 活动图
19.4.2 详解活动图
7. 泳道(Swimlane)。 泳道用于对活动的职责进行组织,将活动状态分为不同的组。每个泳 道代表特定含义的状态职责的部分。泳道表示了哪些活动是由哪些对 象进行的,一个活动只能属于一个泳道,对象动作或拥有的状态按照 发生的事件顺序自上而下的排列在泳道内。如图19-34所示:
19.1 顺序图
19.1.2 详解顺序图
6. 销毁对象。 如果要表示对象被销毁,则在对象的生命线上画大×。如图19-7所示 :
7.注释
在顺序图中,为了更加清楚地描述某些对象或操作,会使用到注释。 注释如下图所示:
19.1 顺序图
19.1.3 用RationalRose画顺序图
19.4 活动图
19.4.2 详解活动图
3. 活动。 活动是原子性的动作或操作的执行,不能被外部事件的转换中断,由 一个带圆角的矩形表示。如图所示: 4. 连接箭头。 活动的先后顺序用带箭头的直线表示。如图所示:
5. 判定。
有些活动图中还会遇到判定,此时用菱形表示:
19.4 活动图
19.2 协作图
19.2.2 详解协作图
在协作图中常见的符号有: 1. 对象。 协作图中会出现为了完成某个目标而共同工作的一组对象。协作图中 对象的表示形式和顺序图中的对象的表示方式一样,使用包围名称的 矩形框来标记,所显示的对象及其类的名称带有下划线,二者用冒号 隔开,使用“对象名:类名”的形式,与顺序图不同的是,对象的下部没 有一条被成为“生命线”的垂直虚线,并且对象存在多对象的形式。对象 的表示形式如下:
19.3 状态图
19.3.2 详解状态图
5. 判定。 有些状态图中还会遇到判定,此时用菱形表示:
6. 同步。 同步条是为了说明并发工作流的分支与汇合,同步用一条线段来表示 。如图19-23所示: 同步线段除了有垂直的,还有水平的:
19.3 状态图
19.3.3 用RationalRose画状态图
19.1 顺序图
19.1.2 详解顺序图
3. 激活(Activation)框。 激活表示对象操作的执行,表示对象实际进行操作的过程。它对执行 的持续时间和执行与其调用者之间的控制关系进行建模。激活框在顺 序图中用一个细长的矩形框表示,它的顶端与激活时间对齐而底端与 完成时间对齐。如图19-4所示对象下方的矩形方框,就是激活框:
19.3 状态图
19.3.1 什么是状态图
所谓状态(State)指的是对象在其生命周期中的一种状况,处于某个 特定状态中的对象必然会满足某些条件、执行某些动作或者是等待某 些事件。状态图(State Diagram)就是为了描述某个操作过程中状态 的转换。 右图描述了用户账户在透支情况下的状态图:
19.1 顺序图
19.1.2 详解顺序图
4. 消息箭头。 消息(Messages)是从一个对象(发送者)向另一个或几个其他对象 (接收者)发送信号,由发送者指向接收者,并可用文字进行描述。 如图19-5所示: 5. 返回箭头。
返回箭头从最后一个执行者指向最终的对象,用一个虚线箭头表示, 并可用文字进行描述。如图19-6所示
第19章
顺序图、协作图、状态图 和活动图
19.1 顺序图
19.1.1 什么是顺序图
对于某些复杂的用例,需要进行详细的描述,此时我们可以使用顺序 图(Sequence Diagram)。 顺序图表示了对象之间传送消息的时间顺序。常用来表达用例内部的 行为顺序。图19-2中所示的就是登录操作对应的顺序图: