uml建模第七章 交互图

合集下载

软件工程---交互建模之交互图,顺序图与协作图

软件工程---交互建模之交互图,顺序图与协作图

2.5 消息
格式
[前缀][守卫条件][顺序表达式][返回值:=]消息名([参数列表])
例:
2: display ()
简单消息
1.3.1: p:=find()
带返回值的嵌套消息
[x<0] 4: invert(x, color) 条件消息
3.1 *[x = 1..10] : update() 循环消息
[ 条件子句 ] 条件子句一般用来表示分枝而不是用作守卫条件[x<0]是两个可
以用来分枝的条件子句这两个条件只能有一个为真因而只有一 个分枝被执行(即发送与分枝有关的消息) 条件子句和循环子句都可以用伪代码或真正的编程语言来表示 序列表达式用冒号结束
返回值、消息名和参数表
返回值表示一个操作调用(即一个消息)的结 果
顺序图中消息编号可显示,也可不显示。 协作图中必须显示Procedure Call) 异步(Asynchronous) 返回(Return) 自关联消息(Self Message)
2.5 消息
UML三种消息:
调用(Procedure Call) 发送者把消息发送后,等待直到接收者返回控制, 可以表示同步(synchronous message); 实心箭头符号
包括对象名和类名 类名(匿名对象) 对象名(不关心类)
2.3 生命线
生命线(Lifeline):
每个对象都有自己的生命线,用来表示在该用例中一个对象在一段时 间内的存在
垂直的虚线 如果对象生命期结束, 则用注销符号表示 对象默认的位置在图 顶部,表示对象在交互 之前已经存在 如果是在交互过程中 由另外的对象所创建, 则位于图的中间某处。
顺序图
面向时间描述对象交互的图
协作图

第七章 包图-UML面向对象分析、建模与设计-吕云翔-清华大学出版社

第七章 包图-UML面向对象分析、建模与设计-吕云翔-清华大学出版社
包图
包图的基本概念
包图是用来描述模型中的包和所包含元素的组织方式的图,是维护 和控制系统总体结构的重要内容。包图能够组织许多UML中的元素, 不过其最常用的用途是用来组织用例图和类图。
在UML 1.X规范中,虽然没有明确规定包图属于一种图类型,却可以 使用包及包的关系来表示系统的结构,包图作为实际上存在并经常被 使用的一种图出现在UML中。最新的UML 2规范中已经明确定义了包 图。
元素的分包原则
元素不能“狡兔三窟”:树形结构的一个节点不能同时拥有两个父 节点,一个元素也不允许在两个包中重复出现。
相同包内元素不能重名:包所具有的命名空间的作用要求用一个包 中的同种类元素名称必须是唯一的。
包内元素要紧密联系:分在同一个包中的元素应该具有某些相同的 性质,即包的高内聚性。
包与包尽可能保持独立:包和包之间需要尽可能减少耦合度,要求 包内元素与外部元素有尽可能少的依赖关系。
DataType
+ Intege 元素的分包原则
包的概念
pkg Logical View
包是用于把模型本身组织成层次结构的通用机制, PackageName 它不能执行。
PackageName
+ ContentA + ContentB
包名:与类图相似,包有简单名与路径名两种命 pkg Logical View
PackageB
包的依赖关系
容易出现的问题:循环依赖
pkg Logical View PackageA
循环依赖的出现是令人困惑、也是非常容易
产生错误的。尤其是当依赖关系表示包的引 pkg Logical View PackageA
入时,循环依赖会导致将模型转化成代码后

UML基础及Rose建模实用教程课后习题及答案

UML基础及Rose建模实用教程课后习题及答案

UML根底与Rose建模实用教程课后习题及答案第1章面向对象概述1. 填空题〔1〕软件对象可以这样定义:所谓软件对象,是一种将状态和行为有机结合起来形成的软件构造模型,它可以用来描述现实世界中的一个对象。

〔2〕类是具有一样属性和操作的一组对象的组合,即抽象模型中的“类〞描述了一组相似对象的共同特征,为属于该类的全部对象提供了统一的抽象描述。

〔3〕面向对象程序的根本特征是抽象、封装、继承和多态。

2. 选择题〔1〕可以认为对象是ABC。

〔A〕某种可被人感知的事物〔B〕思维、感觉或动作所能作用的物质〔C〕思维、感觉或动作所能作用的精神体〔D〕不能被思维、感觉或动作作用的精神体〔2〕类的定义要包含以下的要素ABD。

〔A〕类的属性〔B〕类所要执行的操作〔C〕类的编号〔D〕属性的类型〔3〕面向对象程序的根本特征不包括B。

〔A〕封装〔B〕多样性〔C〕抽象〔D〕继承〔4〕以下关于类与对象的关系的说法不正确的选项是A。

〔A〕有些对象是不能被抽象成类的〔B〕类给出了属于该类的全部对象的抽象定义〔C〕类是对象集合的再抽象〔D〕类用来在存中开辟一个数据区,并存储新对象的属性3. 简答题〔1〕什么是对象?试着列举三个现实中的例子。

对象是某种可被人感知的事物,也可是思维、感觉或动作所能作用的物质或精神体,例如桌子.椅子.汽车等。

〔2〕什么是抽象?抽象是对现实世界信息的简化。

能够通过抽象将需要的事物进展简化、将事物特征进展概括、将抽象模型组织为层次构造、使软件重用得以保证。

〔3〕什么是封装?它有哪些好处?封装就是把对象的状态和行为绑在一起的机制,使对象形成一个独立的整体,并且尽可能地隐藏对象的部细节。

封装有两个含义;一是把对象的全部状态和行为结合在一起,形成一个不可分割的整体。

对象的私有属性只能够由对象的行为来修改和读取。

二是尽可能隐蔽对象的部细节,与外界的联系只能够通过外部接口来实现。

通过公共访问控制器来限制对象的私有属性,使用封装具有以下好处:防止对封装数据的未授权访问、帮助保护数据的完整性、当类的私有方法必须修改时,限制了在整个应用程序的影响。

UML语言简述课后答案

UML语言简述课后答案

3.简答题(1)UML中的模型元素主要有哪些?答:UML语言中的模型元素包括事物和事物之间的联系。

一、事物UML语言中事物可以分为结构事物、动作事物、分组事物和注释事物。

1、结构事物结构事物分为:类、接口、协作、用例、活动类、组件和节点(1)类。

类是对具有相同属性、方法、关系和语义的对象的抽象,一个类可以实现一个或多个接口。

类用包括类名、属性和方法的矩形表示。

(2)接口。

接口是为类或组件提供特定服务的一组操作的集合。

(3)协作。

协作定义了交互操作。

一些角色和其他元素一起工作,提供一些合作的动作,这些动作比元素的总和要大。

UML中协作用虚线构成的椭圆表示。

(4)用例。

用例描述系统对一个特定角色执行的一系列动作。

在模型中用例通常用来组织动作事物,它是通过协作来实现的。

UML中,用例用标注了用例名称的实线椭圆表示。

(5)活动类。

活动类是类对象有一个或多个进程或线程的类。

在UML中活动类的表示法和类相同,只是边框用粗线条。

(6)组件。

组件是实现了一个接口集合的物理上可替换的系统部分。

(7)节点。

节点是在运行时存在的一个物理元素,它代表一个可计算的资源,通常占用一些内存和具有处理能力。

一个组件集合一般来说位于一个节点,但也可以从一个节点转到另一个节点。

2、动作事物UML语言中动作事物是UML模型中的动态部分,它们是模型的动词,代表时间和空间上的动作。

交互和状态机是UML模型中最基本的两个动态事物元素。

(1)交互。

交互是一组对象在特定上下文中,为达到某种特定的目的而进行的一系列消息交换组成的动作。

在交互中组成动作的对象的每个操作都要详细列出,包括消息、动作次数(消息产生的动作)、连接(对象之间的连接)。

(2)状态机。

状态机由一系列对象的状态组成。

3、分组事物分组事物是UML模型中组织的部分,分组事物只有一种,称为包。

4、注释事物注释事物是UML模型的解释部分。

二、UML语言中的关系1、关联关系关联关系连接元素和链接实例,它用连接两个模型元素的实线表示,在关联的两端可以标注关联双方的角色和多重性标记。

uml建模第七章 交互图

uml建模第七章 交互图
ref login
图7-13 ref操作符
7.1 顺序图——顺序图的深入
顺序图中使用其它的技术: 1、使用注释 2、使用约束 3、使用状态
7.1 顺序图——顺序图建模
1. 为每一个用例编写事件流,包括一个基本事件 流和若干可选事件流或异常流; 2. 识别事件流中参与交互的对象; 3. 为每个事件流绘制顺序图,包括为每个对象设 置生命线,即确定哪些对象存在于整个交互过 程中,哪些对象在交互过程中被创建和撤销; 4. 从引发这个交互过程的初始消息开始,在生命 线之间自顶向下依次画出随后的各个消息; 5. 如果需要,可以画上交互片段、交互引用和约 束等。
7.2 通信图
三、组成元素 1、对象
(2)主动对象(活动对象) 一组属性和一组方法的封装体,其中至少有一 个方法不需要接收消息就能主动执行(称作主 动方法)。
UML中
Rose中
7.2 通信图
三、组成元素 2、链


用来连接对象,消息显示在链的旁边,一个链 上可以有多个消息。 在顺序图中不使用链,只有协作图中才使用链 的概念。
图7-5 嵌套编号
Rose中的消息
7.1 顺序图——顺序图的深入
顺序图中,对象的行为有循环和分支两
种方式,为了表示这两种行为,引入了 交互片段、区域和操作符的概念。
7.1 顺序图——顺序图的深入
每个交互片段都有一个操作符,操作符
决定了交互片段的执行方式。
1、表示分支的操作符

alt:支持多条件
表7-2常用迭代表达式
迭代表达式 [i:=1..n] [I=1..10] [while(表达式)] [until(表达式)]
语义 迭代n次
I迭代10次 表达式为true时才进行迭代 迭代到表达识为true时,才停止迭代 在对象集合上迭代

uml动态建模-交互模型

uml动态建模-交互模型

06
UML交互模型案例研究
案例一:银行ATM机交互模型
总结词
简单、高效、安全
详细描述
银行ATM机交互模型是一个典型的UML交互模型案例。通过使用UML,可以清晰地描 述ATM机与用户、银行系统之间的交互关系。该模型强调简单、高效和安全,为用户
提供便捷的自助服务,同时保障银行资金的安全。
案例二:网上购物系统交互模型
交互模型可用于验证系统的功能 和行为,以及进行系统测试,确 保系统的正确性和可靠性。
交互模型的历史与发展
历史
UML交互模型起源于早期的面向对象分析和设计方法,如Booch方法和OMT方 法。随着UML的发展,交互模型逐渐成为UML的重要组成部分。
发展
随着软件工程领域的发展,UML交互模型也在不断演进和完善。新的UML规范 和扩展不断涌现,以满足不同领域的建模需求。同时,UML交互模型与其他建模 方法的集成也在不断发展,如与工作流、活动图等方法的集成。
总结词
便捷、丰富、互动
VS
详细描述
网上购物系统交互模型展示了用户如何通 过网站或APP进行商品浏览、选择、下单 和支付等操作。该模型强调便捷的购物流 程、丰富的商品选择以及用户与商家之间 的互动,使用户能够轻松完成购物,提高 用户满意度。
案例三:智能家居系统交互模型
总结词
智能、舒适、节能
详细描述
智能家居系统交互模型描述了家庭中的各种 智能设备如何相互连接和协同工作。该模型 强调智能化的家居管理、舒适的生活环境和 节能环保,通过UML交互模型,可以更好 地理解智能家居系统的工作原理和功能需求。
顺序图
01
顺序图是UML动态建模中用于描述对象之间交互顺序的模型元素。
02

交互图知识点总结归纳

交互图知识点总结归纳

交互图知识点总结归纳交互图是一种用于描述系统中对象之间交互关系的图形表示方法。

它可以帮助软件开发人员更好地理解系统中对象之间的交互关系,从而更好地进行系统设计和开发。

在软件工程中,交互图是一种重要的分析和设计工具,它能够帮助开发人员更好地理清和把握系统中对象之间的交互关系,从而更好地进行系统分析、设计和实现。

在软件开发过程中,交互图主要包括时序图、协作图和状态图这三种不同类型的图。

每种交互图都有其特定的用途和应用场景,可以帮助开发人员更好地理解系统中对象之间的交互关系,从而更好地进行系统设计和开发。

时序图是一种描述系统中对象之间交互关系的图形表示方法。

它能够清晰地显示对象之间的消息交换和时序关系,从而帮助软件开发人员更好地理解系统中对象之间的交互关系,从而更好地进行系统分析、设计和实现。

时序图主要用于描述系统中对象之间的消息交换和时序关系,可以帮助开发人员更好地理解系统中对象之间的交互关系,从而更好地进行系统设计和开发。

协作图是一种描述系统中对象之间协作关系的图形表示方法。

它能够清晰地显示对象之间的协作关系和信息流动,从而帮助软件开发人员更好地理解系统中对象之间的协作关系,从而更好地进行系统分析、设计和实现。

协作图主要用于描述系统中对象之间的协作关系和信息流动,可以帮助开发人员更好地理解系统中对象之间的协作关系,从而更好地进行系统设计和开发。

状态图是一种描述系统中对象状态和状态转换的图形表示方法。

它能够清晰地显示对象的状态和状态转换规则,从而帮助软件开发人员更好地理解系统中对象的状态和状态转换规则,从而更好地进行系统分析、设计和实现。

状态图主要用于描述系统中对象的状态和状态转换规则,可以帮助开发人员更好地理解系统中对象的状态和状态转换规则,从而更好地进行系统设计和开发。

总的来说,交互图是一种非常重要的软件工程分析和设计工具,它能够帮助开发人员更好地理解系统中对象之间的交互关系,从而更好地进行系统设计和开发。

软件工程动态设计交互图

软件工程动态设计交互图
互的消息;
4.建立顺序图 ① 从用例中识别交互过程; ② 识别参与交互过程的对象; ③ 为每一个对象设置生命线,并确定对象的存在期限; ④ 从引发交互的初始消息开始,在对象生命线上依次画出交
互的消息; ● ⑤如果需要,可以给消息增加时间约束,以及前置条件和后置
条件。
登录顺序图
用例名 用例描述 参与者 前置条件 ห้องสมุดไป่ตู้本路径
添加用户
管理员添加省队用户信息
赛艇协会管理员
点击“用户管理”
1. 点击“添加” 2. 从下拉列表中选择用户类型(本科生、硕士研究生、博士研
究生)。 3. 输入用户信息(用户名,真实姓名,密码,提示问题,答案,
联系电话,备注) 4. 点击“添加”按钮 5. 显示添加成功
其他路径 异常事件 后置条件
4 b)点击取消,返回到用户信息页面 无 无
类图 类 操作
时序图 对象 消息
类图描述系统的静态结构,时序图描述系统的动态行为
若出现了一个新的消息(不是类中的操作),则需要为类 添加一个新的操作。
需要在类C中添加操作“K”
小结:时序图的作用 用对象间的交互来描述用例 寻找类的操作
时序图描述了对象之间传递消息的时间顺序,它用来表 示用例的行为顺序。
方法2:新建对象,然后给该对象指定一个类 a.通过工具栏的对象按纽在时序图中添加一个对象
b.双击对象,给该对象指定一个类或新建一个类
四、添加消息 1、添加简单消息 a.使用此按纽在两个对象之间拖动
b.双击消息,在弹出的窗口中设置消息的名称
2、添加同步消息 方法:双击简单消息,在弹出的对话框选择“detail”选
(2)取消或隐藏消息的编号
选择菜单【 Tools->Options 】,弹出以下对话框,选择 Diagram选项卡,选中或取消Sequence numbering
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

7.1 顺序图——顺序图的表示

自调用
例:
表示某对象调用自己的操作。
UML标记
ROSE标记
7.1 顺序图——顺序图的表示
(4)创建 通常利用构造方法来实现,对象一创建, 生命线就开始了。
图:创建消息示例
7.1 顺序图——顺序图的表示
(5)销毁 生命终止符号用一个较大的叉形符号表示。
client:Client systemMenu:SystemMenu
7.1 顺序图——顺序图的深入
6、par
par是用来表示“并行”的,也就是用来表 示两个或多个并发执行的子片段。
7.1 顺序图——顺序图的深入
par
图7-12 par操作符
7.1 顺序图——顺序图的深入
7、ref
7.1 顺序图——顺序图的表示
1、对象

参与者实例也是对象;
顺序图中水平方向为对象维;
一般参与者和对象按从左到右顺序排列在顺序 图的顶部;
7.1 顺序图——顺序图的表示
1、对象 对象的命名方式有三种: 显示对象名和类名 只显示类名(匿名对象) 只显示对象名(不关心类)
7.1 顺序图——顺序图的表示
图7-7
顺序图中的循环表示
7.1 顺序图——顺序图的深入
3、break
用break定义一个含有监护条件的子片段。

如果监护条件为“真”则执行子片段,而且 不执行子片段后面的其他交互; 如果监护条件为“假”,那么就按正常流程 执行。

7.1 顺序图——顺序图的深入
图7-10 break操作符
7.1 顺序图——顺序图的深入
7.1 顺序图——顺序图的表示
(1)消息编号

顺序编号 ——在每个消息的前面加上一个用冒号隔 开的顺序号来表示其顺序。
7.1 顺序图——顺序图的表示
图7-4 将订单生成送货单
7.1 顺序图——顺序图的表示
(2)消息编号

嵌套编号 ——把属于同一个对象发送和接收的消息 放在同一层进行编号。
7.1 顺序图——顺序图的表示
7.1 顺序图——顺序图的表示
(1)调用消息


发送者把消息发送后,等待,直到接收者返回 控制。 可表示同步。
图:同步消息
7.1 顺序图——顺序图的表示
(2)发送消息

消息发送后,发送者继续操作,不等待。 常用于表示并发。
图:异步消息
7.1 顺序图——顺序图的表示
(3)返回消息

表示消息的返回。一般同步的返回不需画出, 直接隐含,而异步返回则可用它。
2、生命线

表示对象存在的时间。 如果对象生命期结束,则用注销符号表示。
7.1 顺序图——顺序图的表示
3、控制焦点(激活期)

对象执行某个动作的时期。
7.1 顺序图——顺序图的表示
4、消息

对象间交互信息的方式

UML中5种消息: 调用(同步消息) 发送(异步消息) 返回 创建 销毁
图7-5 嵌套编号
Rose中的消息
7.1 顺序图——顺序图的深入
顺序图中,对象的行为有循环和分支两
种方式,为了表示这两种行为,引入了 交互片段、区域和操作符的概念。
7.1 顺序图——顺序图的深入
每个交互片段都有一个操作符,操作符
决定了交互片段的执行方式。
1、表示分支的操作符

alt:支持多条件
UML2.0 可以帧化顺序图,即用一个边框包围他并在左上 角添加一个间隔区,间隔区中包含了识别该顺序图的信息。 (例,sd:表示该图是顺序图;login:顺序图名)
7.1 顺序图——顺序图的表示
三.组成元素

对象-- Object 生命线-- Lifeline 消息-- Message 控制焦点(激活)-- Activation
1: logOut 2: logOut 3: delete server:Server
图:销毁消息示例
7.1 顺序图——顺序图的表示
5、消息的格式 UML中规定的消息语法格式如下:

举例 2:display(x,y) 简单消息 1.3.1:p:=find(specs) 嵌套消息 [x<0] 4:invert(x,color) 条件消息 3.1 * :update() 循环消息
目录
7.1 顺序图 7.2 通信图 7.3 绘制交互图
7.4 顺序图与通信图的关系
7.5 定时图
7.1 顺序图
一.顺序图的概念

也称时序图,Sequence Diagram
描述了系统中对象之间传送消息的时间顺序。
二.顺序图的作用

用来描述用例的实现
7.1 顺序图
图:即时通信系统中对象server和对象Database的交互

opt:支持单条件
7.1 顺序图——顺序图的深入
图7-5
顺序图中的分支表示(1)
7.1 顺序图——顺序图的深入
图7-7
顺序图中的分支表示(2)
7.1 顺序图——顺序图的深入
2、表示循环的操作符:loop 说明该片段将可以执行多次,而具体 的次数由循环次数和监护条件表达式来 说明。
7.1 顺序图——顺序图的深入
第7章 交互图





Interaction Diagram 交互图是用来描述对象之间以及对象与参与者之 间的动态协作关系以及协作过程中行为次序的图 形文档。 用来描述一个用例的行为,显示该用例中所涉及 的对象和这些对象之间的消息传递情况。 包括顺序图、通信图(协作图)、定时图和交互 概观图四种形式。 一个用例需要多个顺序图或通信图,除非特别简 单的用例。
4、assert、consider、ignore

assert是用来表示执行过程中,那个时刻的行为是唯 一有效的。 consider包含一个子片段和一个消息类型列表。只有 列表中的消息类型可以出现在子片段中,其他类型可 以出现在实际的系统中,但是交互会忽略它们。 ingore也包含一个子片段和一个消息类型列表。列表 中的消息类型可以出现在子片段中,但交互会忽略它 们。它的含义与consider刚好相反。


7.1 顺序图——顺序图的深入
图7-9 consider和assert操作符
7.1 顺序图——顺序图的深入
5、critBiblioteka calcrtical表示子片段是“临界区域”,在临界 区域中,生命线上的事件序列不能和其他区域 中的任何其他事件交错。
7.1 顺序图——顺序图的深入
图7-11 操作符crtical
相关文档
最新文档