第9章 交互概况图和组合结构图
第9-7章 交互图
GO
7.1.2 顺序图的表示
(4)创建(Create)和销毁(Destroy)。 )创建( ) 销毁( )。 也就是创建 销毁一个对象。 创建和 一个对象 也就是创建和销毁一个对象。 创建对象通常是利用构造方法来实现的 通常是利用构造方法来实现的, 创建对象通常是利用构造方法来实现的, 对象一创建,生命线就开始; 对象一创建,生命线就开始; 生命终止符号用一个较大的叉形符号表示 用一个较大的叉形符号表示。 生命终止符号用一个较大的叉形符号表示。
GO
图7-3 消息表示法
10
7.1.2 顺序图的表示
将对象之间的消息分为五种类型: 将对象之间的消息分为五种类型: 消息分为五种类型 调用、返回、发送、创建和销毁。 调用、返回、发送、创建和销毁。 (1) 调用(call) 调用( ) 这是最常用的一种消息, 这是最常用的一种消息, 它表示调用某个对象的一个操作 格式为“对象名.成员方 调用某个对象的一个操作(格式为 它表示调用某个对象的一个操作 格式为“对象名 成员方 可以是对象之间 法”).可以是对象之间的调用, 可以是对象之间的调用, 也可以是对象本身 调用(局部调用)。 对象本身的 也可以是对象本身的调用(局部调用)。 我们采用图7-3所示的符号来表示 消息调用” 所示的符号来表示“ 我们采用图 所示的符号来表示“消息调用”, 并在该符号上标明顺序编号 消息的名称、参数。 顺序编号、 并在该符号上标明顺序编号、消息的名称、参数。
顺序图、通讯图、定时图、交互概观图。 顺序图、通讯图、定时图、交互概观图。
3
7.1 顺序图 .
锁车
7.1.1 顺序图的概念 顺序图的概念 1. 顺序图 顺序图也称为时序图, 也称为时序图 顺序图也称为时序图, 它描述了系统中,对象间通过消息进行的交互, 通过消息进行的交互 它描述了系统中,对象间通过消息进行的交互, 它强调了消息 时间轴上的先后顺序。 消息在 它强调了消息在时间轴上的先后顺序。 自动车锁系统中 实现“锁车”用例的顺序图。 图7-1是自动车锁系统中,实现“锁车”用例的顺序图。 2. 顺序图的作用 顺序图的作用 顺序图常用来描述用例 实现, 用例的 顺序图常用来描述用例的实现, 它表明了由哪些对象 通过消息相互协作来实现用例的功能 对象, 消息相互协作来实现用例的功能, 它表明了由哪些对象,通过消息相互协作来实现用例的功能 在顺序图中,标识了消息发生交互的先后顺序 消息发生交互的先后顺序。 在顺序图中,标识了消息发生交互的先后顺序。
软件工程---交互建模之交互图,顺序图与协作图
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):
每个对象都有自己的生命线,用来表示在该用例中一个对象在一段时 间内的存在
垂直的虚线 如果对象生命期结束, 则用注销符号表示 对象默认的位置在图 顶部,表示对象在交互 之前已经存在 如果是在交互过程中 由另外的对象所创建, 则位于图的中间某处。
顺序图
面向时间描述对象交互的图
协作图
交互图(序列+协作)
图书馆还书处理的序列图
协作图 Collaboration Diagram
协作:
在一定的语境中,一组用以实现某些行为的对象之间 的相互作用 它描述了若干对象为实现某种目的,而组成相互合作 的“对象社会”
协作图:表现对象协作关系的图
是对“对象图”的扩展(增加消息传递) 序列图和协作图可以相互转化 强调:参与交互对象的角色位置与组织关系
练习1:绘制序列图
练习2
为ATM存款用例绘制一个序列图
列转 图账
用 例 序
练习3
为选课系统中的选课用例绘制序列图。假设学生 已经成功登陆系统,选择的事件可以简化如下:
选课事件:
1.进入选课主界面。 2.点击选课。 3.系统显示所有课程信息。 4.学生选择课程。 5.系统验证课程是否可选。 6.系统提示课程选择成功,提示学生交费。 7.用例结束。
对象
对象的类型
Persistence(持续性)
Persistent(持续):对象能 够保存在数据库或其它持续存 储器中 Static(静态):保存在内存 中,直至程序终止才会销毁 Transient(临时):临时保 存在内存中
对象
对象的位置
对象置于顺序图的顶部:意味着在交互开始的时候对 象就已经存在 对象的位置不在顶部:表示对象是在交互的过程中被 创建的 主角:一个交互的发起对象,通常在最左边 反应系统角色:与主角交互的对象,通常在图的右边
Frequency(频率)
Periodic(定期):按照固定时 间间隔发送 Aperiodic(不定期):只发送一 次,或者在不规则的时间发送
不同类型的消息
序列图的绘制顺序
练习1:绘制序列图
仓库管理员处理产品入库工作流程,基本工作流 程如下:
第9章UML交互概况图
4
9.1 什么是交互概况图
对图9-1进行细化后的图,如图9-2所示。
5
9.2 交互概况图应用
交互概况图的绘制步骤为:首先决定选择哪一 种图形(顺序图或活动图)来绘制概要图;然后 用另一种图形对概要图进行细化。
下面通过一个生成订单汇总信息的例子来说明 交互概况பைடு நூலகம்的绘制过程。
(1) 根据应用要求选择绘制概要图的图形类别(顺 序图或活动图)。 (2) 生成订单汇总信息的要求:如果下订单的客 户是系统外的,则通过XML来获取信息;如果下订 单的客户是系统内的,则从数据库中获取信息。
6
9.2 交互概况图应用
其活动控制流涉 及一个分支,根 据客户数据是否 在系统内部选择 不同的获取方法, 然后生成汇总信 息。因此决定以 活动图来绘制概 要图,如图9-3所 示。
9
9.4 习
题
1.举例说明交互概况图 的两种形式。
2.对饮料机的售卖过程, 制作一张交互概况图(分 别用两种图绘制)。
7
9.2 交互概况图应用
假设需要对“获取外部数据”和“获取内部数 据”的细节进行描述,则用顺序图来描述这两 个活动的细节,如图9-4所示。
8
9.3 小
结
交互概况图有两种形式,一种 是以活动图为主线,对活动图 中某些重要活动节点进行细化; 另一种是以顺序图为主线,用 活动图细化顺序图中某些重要 对象的行为。
2
第9章 交互概况图
交互概况图是将活动图和顺序图嫁接 到一起的图。交互概况图中的所有组 成元素来自活动图和顺序图。交互概 况图的主要作用是演示用例之间的控 制流。
当我们把用例图中的每个用例表示为 一个顺序图时,顺序图之间的交互流 程就展示了用例之间的交互流程。
09-UML—CH9-构件图和配置图(YL)
上讲回顾
状态图的定义? 状态图的基本构成元素? 状态内部的动作通常有哪几种? 状态图中的状态有哪些种类? 如果一个组成状态的子状态对应的对象在其生命期内的 任何时刻都只能处于一个子状态,即多个子状态之间是 互斥的,不能同时存在,这种子状态称为 ? 子状态。 当E-mail程序中正在发送第一封邮件时,用户下达发送 第二封邮件执令就会被延迟,但第一封邮件发送完成后 ,这封邮件就会被发送。这种事件就属于 ? 事件。 自迁移和内部迁移的区别? 活动图与状态图的异同?
Fig1 presents an example component model, using the UML 2 notation, for the university system. Diagrams such as Figure 1 are often referred to as "wiring diagrams" because they show how the various software components are "wired together" to build your overall application. The lines between components are often referred to as connectors, the implication being that some sort of messaging will occur across the connectors.
2确定驻留构件3注明节点性质4确定节点之间的联系5绘制配置图图711销售管理子系统的配置图模型五配置图建模案例诊疗管理子系统的功能分析2构件图3配置图图712医院诊疗综合管理系统的用例图图713诊疗子系统的用例图图714诊疗管理子系统源代码到执行代码过程的构件图详细的构件图图715影像诊断用例的详细构件图图716诊疗管理子系统客户服务器式配置图图717影像诊断用例的配置图五本章小结本章小结
UML的几种图
1、用例图(use case diagram)用例图(Use Case Diagram)是被称为参与者(Actor)的外部用户所能观察到的系统功能的模型图列出系统中的用例和参与者显示哪个参与者参与了哪个用例的执行核心概念用例:系统中的一个功能单元,可以被描述为参与者与系统之间的一次交互作用参与者、参与者泛化用例与参与者之间的关系:关联UC01:“借书”用例文档用例名称:借书用例标识:UC01涉及的参与者:工作人员涉及的用例:无描述:工作人员利用该用例为读者完成借书过程前置条件:工作人员必须登录到当前系统涉众利益:用例之间关系:扩展、包括、泛化推荐使用场合 业务建模、需求获取、定义某图书馆管理系统:是一个基于Web 的计算机应用系统; 读者可以查询图书信息以及借阅信息;读者可以通过系统预约所需的图书; 图书馆工作人员利用该系统完成读者的借书、还书业务;图书馆工作人员可以对图书信息、读者信息等进行维护;对于到期的图书,系统会自动向读者发送催还信息;管理员会定期进行系统维护;…… 基本事件流: 后置条件:备选事件流 字段列表: 认为当天日期)、借阅天数以及归还日期。
业务规则 阅规则取决于读者的类型(非功能需求:设计约束:2、活动图(activity diagram)活动图(Activity Diagram)通过动作来组织,主要用于描述某一方法、机制或用例的内部行为核心概念状态、活动、组合活动、对象转移、分支并发、同步泳道推荐使用场合业务建模、需求、类设计3、静态结构图类、、框架、层、描述系统中某一)的内部结构,包括该部分与系统其它部分的交互部件、4、顺序图(Sequence Diagram )顺序图(SequenceDiagram )用于显示对象间的交互活动关注对象之间消息传送的时间顺序核心概念 对象、生命线、激活、交互、消息交互帧(InteractionFrame)推荐使用场合用例分析、用例设计“借书”用例实现的顺序图5、交互纵览图(Interaction Overview Diagram) 交互纵览图(Interaction Overview Diagram) 活动图和顺序图的混合物直观地表达一组相关顺序图之间的流转逻辑 核心概念交互帧分支、转移 推荐使用场合用例分析、用例设计交互纵览图组织多个顺序图6、通信图(Communication Diagram)通信图(Communication Diagram)UML 1.x 中称为协作图(CollaborationDiagram)表示一组对象间关系以及交互活动 核心概念对象、协作角色协作、交互、消息“借书”用例实现的通信图推荐使用场合 用例分析、用例设计7、时间图(Timing Diagram)时间图(TimingDiagram)一种交互图,展现消息跨越不同对象或角色的实际时间信息;具体描述单个或多个对象状态变化的时间点以及维持特定状态的时间段;顺序图是表示交互的主要手段,可以在顺序图中增加时间约束来表明对象状态变化的时间点以及维持特定状态的时间段。
UML的组合结构图
UML的组合结构图UML(Unified Modeling Language)是一种用于软件开发的标准化建模语言。
在软件开发中,UML能够帮助开发人员清晰地描述软件的结构和行为。
在UML中,结构图和行为图是两种基本的图形语言。
其中,结构图主要用于描述软件的静态结构,而行为图则主要用于描述软件的动态行为。
在结构图中,组合结构图是一种关键的图形语言,它能够帮助开发人员描述软件中的组件之间的关系。
下面就来详细介绍一下UML中的组合结构图。
一、组合结构图的基本概念组合结构图是UML结构图中的一种,它用于描述软件中的组件之间的关系,表示组件之间的合成关系。
在UML中,组合结构图可以描述任何类型的组件,包括类,对象,组件,节点等。
组合结构图是一种具体的类图,因为它描述的是软件中的实际组件,而不是抽象类或接口。
在组合结构图中,组件之间的关系可以使用连线表示,包括组合关系、聚合关系和关联关系。
组合关系(Composition)是一种强关系,表示一个组件包含着另一个组件。
在组合关系中,被包含的组件是整体(或容器),而包含的组件是部分(或成员)。
被包含的组件的生命周期和包含的组件的生命周期是一致的,当整体(或容器)被删除时,其包含的部分(或成员)也被删除。
聚合关系(Aggregation)是一种弱关系,表示一个组件包含着另一个组件。
在聚合关系中,被包含的组件是整体(或容器),而包含的组件是部分(或成员)。
被包含的组件的生命周期和包含的组件的生命周期是独立的,当整体(或容器)被删除时,并不会同时删除其包含的部分(或成员)。
关联关系(Association)是一种简单关系,表示两个组件之间的关系。
在关联关系中,两个组件是相互独立的,它们的生命周期是独立的。
关联关系可以是单向的、双向的,也可以是单重的、多重的。
二、组合结构图的元素组合结构图包括以下元素:1.组件(Component):组件是UML中的一个重要概念,它是一种独立的软件实体,可以承担特定的功能。
第9章交互概述图
123第九章 交互概述图交互概述图是将活动图和顺序图嫁接在一起的图。
交互概述图并没有引入新的建模元素,其所有的图示法都已经在顺序图和活动图中阐述过了。
9.1 交互概述图的概念1. 交互概述图交互概述图有两种形式,一种是以活动图为主线,对活动图中某些重要活动节点进行细化,即,用一些小的顺序图对重要活动节点进行细化,描述活动节点内部对象之间的交互;另一种是以顺序图为主线,用活动图细化顺序图中某些重要对象,即,用活动图描述重要对象的活动细节。
图9-1就是一个以活动图为主线的交互概述图。
图9-1用户订单处理的交互概述图绘制图9-1的交互概述图的步骤如下:(1) .首先绘制订单处理的活动图(2) .将活动”生成送货单”细化为顺序图2.交互概述图的组成元素交互概述图的组成元素包含活动图和顺序图两种元素。
9.2 如何绘制交互概述图交互概述图的绘制步骤为:决定绘制的策略,选择哪一种图为主线,然后再用另一种图来细化某些重要的节点信息。
9.2.1 策略选择交互概述图有两种形式:一种是以活动图为主线,然后,用顺序图对某些重要活动节点进行细化;另一种是以顺序图为主线,用活动图对某些重要对象的活动进行细化。
那么在实际应用中应该选择哪种策略呢?这取决于你的建模目的。
1.对工作流建模:如果是对工作流进行建模,那么应该先采用活动图来表示工作流的活动控制流,然后再通过顺序图来描述其中一些活动节点的对象控制流,阐述更多实现细节。
2.对操作建模:如果是在为代码的设计、实现进行建模,那么可以先通过顺序图描述对象之间的控制流;然后再通过活动图来描述对象中某些重要的方法、调用的算法流程。
9.2.2 选择绘制主线下面通过一个生成订单汇总信息的例子来说明交互概述图的绘制过程。
根据应用要求选择绘制主线:生成订单汇总信息的要求:如果下订单的客户是系统外的,则通过XML来获取信息;如果下订单的客户是系统内的,则从数据库中获取信息。
上述描述说明,其活动控制流涉及一个分支,根据客户数据是否在系统内部选择不同的获取方法,然后生成汇总信息。
交互作用图
: P rin terIn terface
: P rin tService
2 : create(P aych eck)
7 : b uildP rintIm age( )
: Paycheck
: P aycheckP rinterIm age
3 : getE m p loyee( ) 6: getA m ount( )
标记为“loop”。
12
13
通信图
与顺序图区分,通信图有两个特点:
有路径 有序列号
顺序图和通信图在语义上是等价的。
14P rຫໍສະໝຸດ n t C lient: P rin ter
1 : p rint(P aych eck, S trin g) 8 : p rint(theIm age)
9 : p rint( )
交互作用图
交互作用图
交互作用图描述了对象间的交互作用,由对象、对象 间的关系组成,并包含在对象间传递的消息。
顺序图 顺序图强调消息的时间顺序。
通信图 通信图强调发送和接收消息的对象的组织结构。
交互作用图的主要组成元素如下:
对象。 消息。 像其他的图一样,交互作用图中也可以有注释和约束。
(2)生存线:对象框下画的一条垂直虚线,称 为该对象的生存线,表示对象的生存时间。
(3)激活期:对象生存线上的一个细长方形 框,表示该对象的激活时间段,即活动期 间。
(4)消息:对象之间消息的发送和接收用两个 对象生存线(激活期)之间的消息箭头线。
5
顺序图
6
7
顺序图中的分支控制
8
顺序图中的约束标记
2
消息
(1)简单消息:表示控制流。 (2)同步消息:它是一种嵌套的控制流。 (3)异步消息:它是异步控制流。 (4)返回消息:表示控制流从过程调用的返回。
ppt教案第9章
2.单击这个响应图标上方的响应类型标记,设置有关参数。 2.单击这个响应图标上方的响应类型标记,设置有关参数。
第9章 交互结构的设计
在不同响应类型的交互响应属性对话框中,位于中间的主体部分都是两 个选项卡,其中一个是本响应类型所特有的属性;另外一个则是各种响应类 型所共有的属性,即关于响应本身的属性设置,名为“响应”。 “响应”选项卡中的各个选项。 1. 交互响应的作用范围设置:
[实例9.16] 美食博览 实例9.16]
多个菜系下拉菜单的建立,是靠构造多个交互结构实现的。
第9章 交互结构的设计
9.7 条件响应类型--百变控制秘籍 条件响应类型--百变控制秘籍 9.7.1条件响应类型的属性设置 9.7.1条件响应类型的属性设置
条件响应类型(Conditional)的匹配条件用变量或表达式指定,非 条件响应类型(Conditional)的匹配条件用变量或表达式指定,非 常灵活,得到了广泛的应用。
第9章 交互结构的计
9.8 文本响应类型--问卷调查 文本响应类型--问卷调查 9.8.1文本响应类型的属性设置 9.8.1文本响应类型的属性设置
文本响应类型(Text Entry)适用于希望用户回答文字信息来响应交互的场 文本响应类型(Text Entry)适用于希望用户回答文字信息来响应交互的场 合。
9.3 热区响应类型--方正矩形点热区 热区响应类型--方正矩形点热区 9.3.2热区响应的实现 9.3.2热区响应的实现 [实例9.7] 星座遭遇当机 实例9.7]
第9章 交互结构的设计
[实例9.7] 星座遭遇当机 实例9.7]
在按钮响应方式的属性设置对话框中,热区域选项卡 的选项如下:
第9章 交互结构的设计
第9章 交互结构的设计
高级软件工程(第九章) 软件体系结构(2017课件)
管道/过滤器体系结构风格
管道/过滤器风格也存在着一定的问题: 系统处理过程是批处理方式,过滤器具有很强 的独立性,对于每一个过滤器,设计者必须考 虑从输入到输出的转换过程,这种方式会造成 过滤器对输入数据的批量转换处理; 不适合用来设计交互式应用系统; 由于没有通用的数据传输标准,因此每个过滤 器都需要解析输入数据和合成数据,添加和去 除标记需要花费一定的时间,从而导致了系统 性能下降,增加了过滤器设计的复杂性。
管道/过滤器体系结构风格
管道/过滤器风格具有以下优点: 简单性,允许将系统的输入和输出看作是各个 过滤器行为的简单组合,独立的过滤器能够减 小构件之间的耦合程度; 系统具有可扩展性和可进化性,各个过滤器是 相互独立的,因此可以很容易地将新过滤器添 加到现有的系统之中,以扩展系统的业务处理 能力,原有过滤器可以很方便地被改进的过滤 器所替代;
12
分层体系结构风格
在分层风格中,系统将划分为一个层次结构; 每一层都具有高度的内聚性,包含抽象程度一 致的各种构件,支持信息隐藏; 分层有助于将复杂系统划分为独立的模块,从 而简化程序的设计和实现; 通过分解,可以将系统功能划分为一些具有明 确定义的层,较高层是面向特定应用问题的, 较低层更具有一般性。
数据共享体系结构风格
数据共享风格也称为仓库风格,有两种不同类 型的软件元素: 一种是中央数据单元,也称为资源库,用于 表示系统的当前状态,另一种是相互依赖的 构件组 中央数据单元和构件之间可以进行信息交换, 这是数据共享体系结构的技术实现基础; 根据所使用的控制策略不同,数据共享体系结 构可以分为两种类型: 一种是传统的数据库,另一种是黑板
13
分层体系结构风格
每层都为上层提供服务,同时又利用了下层的 逻辑功能; 每层只对相邻层可见,层次之间的连接件是协 议和过程调用,用以实现各层之间的交互; 上层通过下层提供的接口来使用下层的功能, 而下层却不能使用上层的功能; 良好的层次结构将有助于对逻辑功能实施灵活 的增加、删除和修改。
单项练习之交互概览图
单项练习——交互概览图
实验目的:
1.掌握交互概览图的涵义和内容
2.掌握交互概览图的绘制方法
3.掌握交互概览图的使用范围
实验内容:
画出下列描述的交互概览图:在在线销售系统中,用户可以把商品放入购物车,也可以继续查看商品。
用户购物车中的商品,可以查看,也可以下订单。
实验指导:
1.交互概览图的简介
交互概览图是活动图的一种形式,其中的节点代表着交互图。
交互图包括顺序图、通信图、交互概览图和时序图。
交互概览图的大部分符号都和活动图一样,它描述交互(特别是关注控制流),但是抽象掉了消息和生命线。
它使用活动图的表示法。
纯粹的交互概览图中所有的活动都是交互发生,那样在图上就根本不会有任何消息和生命线了。
在交互概览图在引入了两个新元素:交互事件和交互元素。
交互事件和交互元素都涉及到存在的交互图。
一个交互事件用一个引用框架展示。
引用框架是在一个框架的左上方有“ref”标记。
见图1. 交互元素和交互事件相似,都是在一个矩形框架中显示一个代表已经存在的交互图。
图1 message的引用
活动图中所有的控制符号(fork、join、merge等)都可以用在交互概览图上,它们用来控制低级的交互图的控制逻辑。
2 交互概览图示例。
最新UML课后习题答案
最新UML课后习题答案第1章UML概述2. 请指出三种以上现实生活中的常用模型,并说明它们分别在各自的领域中发挥了什么样的作用。
1)电路图:电子产品设计、生产、维修2)园区沙盘:直观、立体化地展示园区的景观、布局3)地图:导航、指路等4. 说明UML适用的建模领域,以及其作用和主要的参与人员。
业务建模,用来加强对业务领域的了解,以领域专家为主,需求分析人员是主力,系统分析员、架构师可参与。
需求模型,用来加强需求了解,便于技术决策,以需求分析人员为主,系统分析员是主力,领域专家提供指导,架构师和资深开发人员参与。
设计模型:包括高层设计模型和详细设计模型。
高层设计模型以架构师为主,系统分析员从需求方面提供支持,资深开发人员从技术实现方面提供支持。
详细设计模型则以资深开发人员为主,架构师提供指导。
实现模型:架构师、资深开发人员(设计人员);以资深开发人员(设计人员)为主,架构师提供总体指导。
数据库模型:架构师、数据库开发人员、资深开发人员(设计人员);以数据库开发人员为主,架构师提供指导,资深开发人员(设计人员)予以配合。
第2章UML世界的构成4.扩展关系,是关系构造块。
5. 可以包含其它事物构造块的构造块是什么?它属于什么类型的事物构造块?可以包含其它事物构造块的构造块是包,它属于分组事物构造块。
6. 在UML中定义了哪几种可见性规则?其中package的含义是什么?定义了public、private、protected、package,package是指只有声明在同一个包中的元素才能够看到该元素。
7. 规格描述是一种事物构造块吗?如果不是,它是什么?它的作用是什么?规格描述不是事物构造块,它是UML四种公共机制之一,用来对构造块的语法和语义进行文字叙述,使得可视化视图和文字视图的分离。
8. 标记值的作用是什么?它的表示法和约束的表示法有什么异同?在UML模型中如何区分它们?标记值是用来为事物添加新特性的。
交互设计和信息架构图示表
描述信息结构和交互设计的图示词汇表版本 1.1a (2001年9月17日) Jesse James Garrett (contact)翻译于 2002年2月 Arky Tan arky@英语原版: /ia/visvocab/目录:1.摘要2.版本信息3.先决条件4.设计概念5.基本元素:页面、文件和相关文件组6.创建关系:连接和箭头7.同时发生:并发事件组8.分解:链接点9.元素集合:区域和区域叠代10.可再用模块:流程和流程引用11.基本的条件元素12.作出选择:决策点13.尝试:条件连接和条件箭头14.单项选择:条件分支15.多项选择:条件选择器16.一个决策,多条路径:群组17.可能会涉及的限制:条件区域18.备注19.可以下载的图形库摘要图表是网络应用开发团队(Web development teams)在沟通信息架构和交互设计方面最基本的工具。
本文所讨论的是使用图表来描述系统时所要考虑的事宜、信息架构和用户交互设计时使用这些基本元素的要点,并且介绍这些元素的使用方法。
版本信息1.1aSC (2002年2月6日)简体中文译本1.1a (2001年9月17日)Macromedia FreeHand 新图形库添加PDF的图形模板1.1 (2001年1月31日)增加文件组元素增加条件选择器元素修改箭头元素,增加多箭头说明路径方向修改群组元素,说明其可作为条件分支或条件选择器的下游元素修改条件分支元素,增加其可能出现空结构的情况修改图形库中的一些元素增加Adobe InDesign 的图形库1.0 (2000年10月17日)首次发布先决条件图示词汇表是一套用于描绘某些事物(通常可能是一个系统、结构或过程)的符号库。
本词汇表可能在信息结构和交互设计方面,在一个宏观程度上描述网站中用户体验的结构抑或过程。
本文中的描述、图表适用于以下五点主要角色:•项目主持人和项目经理通过本文所描述的工具能够对项目的范围和形态有所了解。
组合结构图
组合结构图组合结构图1.概述UML中的组合结构图(Composite Structure Diagram)是一种静态视图,用来表示一个类元或协作的内部结构。
一个典型的组合结构图如图1所示,该图描述了一个船的内部构造,包含一个螺旋桨和发动机,两者之间通过传动轴连接。
图1. 组合结构图2.基本表示符号组合结构图的基本元素有部件、接口、端口以及连接器、协作和结构化类元。
2.1 部件(Part)部件是类元的结构化成员,它描述了一个实例在该类元实例内部所扮演的角色,是一个类或者构件内部的组成单元。
例如,如果一个图包含一组图形元素,那么,这些图形元素就可以作为该图的部件。
在UML中,部件符号表示为类元中的一个矩形,如图2所示:图2. 部件2.2 端口(Port)端口是类元与外部系统进行交互的纽带。
在UML中,端口符号表示为一个小长方形,如图3所示:图3. 端口2.3 接口(Interface)接口是一种类元,它定义了一组操作,以及一些公共属性。
UML 提供了多种方法表示接口,图4给出了接口的两种图形表示:图4. 接口用圆圈符号表示的接口,不显示任何接口操作。
类元所实现的接口,称为供给接口(Provided Interface)。
类元所需要的接口,称为需求接口(Required Interface)。
供给接口和需求接口如图5所示:图5. 供给接口和需求接口2.4 连接器(Connector)连接器是一种端口之间的关联。
基本的连接器有:装配连接器(Assembly Connector)和委托连接器(Delegate Connector)。
两个内部部件之间的连接器是装配连接器。
在UML中,装配连接器有两种表示方式:1)直接使用一条实线连接两个不同端口来表示;2)使用供应接口和需求接口的连接来表示。
装配连接器如图6所示:图6. 装配连接器委托连接器用于定义组件的外部端口和接口的内部运作,在UML 中,委托连接器表示为一个带有? delegate ?关键字的箭头,如图7所示:图7. 委托连接器2.5 协作(Collaboration)协作描述了一组结构,以及结构之间的交互。
交互作用图
sd 成绩转换 : Contrl : Transcript : Grade
1 : getgrade(studentID)
alt [grade>=90] 2 : setgrade(studentID,A)
[79<grade<90] 3 : setgrade(studentID,B)
[69<grade<80]
交互作用图
(顺序图和协作图)
1 交互图概述
交互图(interaction diagram)是用来描述对象之间以及对 象与参与者之间的动态协作关系以及协作过程中行为 次序的图形文档. 交互图通常用于描述一个用例的行为, 显示该用例中所 涉及的对象及对象之间消息传递情况. 交互图包括: (1)顺序图(sequence diagram), 描述对象按照时间顺序的 消息交换; (2)协作图(collaboration diagram), 描述系统成分如何协同 工作.
• 添加借阅者
• findTitle(isbn:String):OID • 返回指定ISBN的Title对象的 OID • getTitle(oid:OID):Title • 返回Title对象 • getAvaliableBook():OID • 返回第一个可借阅的Book对 象的OID
• 类Borrower • borrowerID:String • loans:OID[ ]
调用消息必有一个与之配对的返回消息, 但是可以不 用画出.
(1). 同步消 息 同步消息(synchronous message)代表一个操作调用的控制流。 同步消息的发送者把控制传递给消息的接收者,然后暂停活动,等 待消息接收者的应答,收到应答后才继续自己的操作。
(2).异步消息 异步消息(Asynchronous message)消息的发送者把控制传递给 消息的接收者,然后继续自己的活动,不需等待接收者返回信息或控 制。下面示例演示了如何在登录文件的情况下使用异步消息。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2010-11-6
16
假设更新类图以反映 Record 到 FieldType 的一个 引用,因为这对于其他对象而言, 引用,因为这对于其他对象而言,向 Record 对象请 对象会更方便。 求它所对应的 FieldType 对象会更方便。为了实现这 种情况, 种情况,首先需要在 FieldType 和 Record 类之间添 加关联, 加关联,添加关联后的类图效果如图 所示
如图所示
2010-11-6
5
2010-11-6
6
说明: 说明: 从初始节点开始, 从初始节点开始,控制流执行第一个顺序 图表示的交互, 图表示的交互,然后并行执行两个通信图表 示的交互,然后合并控制流, 示的交互,然后合并控制流,并在判断节点 处根据判断条件值执行不同的交互: 处根据判断条件值执行不同的交互:当条件 一个交互, 为真时执行通信图表示的下 一个交互,交互 完成后结束, 完成后结束,而条件为假时执行下一个顺序 图表示的交互, 图表示的交互,该交互在结束之前将循环执 行 5 次。
2010-11-6 9
对于交互“验证借阅者身份” 对于交互“验证借阅者身份”和“记录借阅信息” 记录借阅信息” 而言,消息的次序比任何其他因素都重要, 而言,消息的次序比任何其他因素都重要,因此对这 些交互使用顺序图。 些交互使用顺序图。此处可以重用建模顺序图中的相 关步骤, 所示。 关步骤,如图 所示。
2010-11-6 7
9.2 为用例建模交互概况图
在使用交互概况图为用例建模前, 在使用交互概况图为用例建模前 , 先 回顾一下活动图。活动图以活动、状态、 回顾一下活动图。 活动图以活动、 状态、 控制流等方式描述了系统的用例, 控制流等方式描述了系统的用例, 而交互 概况图是以顺序图、 概况图是以顺序图 、通信图和时序图描述 用例, 用例 ,这两者以不同的方式描述了相同的 内容。交互概况图以活动图的形式, 内容 。交互概况图以活动图的形式 , 交互 图的内容对用例进行描述。 图的内容对用例进行描述。
13
2010-11-6
14
9.3 组合结构图
组合结构图是一种高级视图,其显示了如下内容: 组合结构图是一种高级视图,其显示了如下内容: 内部结构: 显示包含在类里的各个成员, 内部结构: 显示包含在类里的各个成员,以及各 个成员之间的关系。 个成员之间的关系。 如何使用类: 显示类如何通过端口作用于系统。 如何使用类: 显示类如何通过端口作用于系统。 合作: 显示系统中一组对象共同协作完成某件事。 合作: 显示系统中一组对象共同协作完成某件事。
2010-11-6
12
9.2.2 组合交互
在分析交互概况图中的各个交互后, 在分析交互概况图中的各个交互后,下一步就是 将所有的交互根据操作步骤, 将所有的交互根据操作步骤,使用控制线将各个 交互连接起来形成一幅图——交互概况图 交互概况图。 交互连接起来形成一幅图——交互概况图。
2010-11-6
2010-11-6
10
为了使交互概况图中的交互多样化,“检验借阅者 为了使交互概况图中的交互多样化, 借阅的图书数目”和“检验借阅者是否有超期的借 借阅的图书数目” 阅信息”交互将以通信图表示,如图所示。 阅信息”交互将以通信图表示,如图所示。
2010-11-6
11
假设“获取借阅的图书信息”交互对时间非常敏感, 假设“获取借阅的图书信息”交互对时间非常敏感, 秒内完成。 它要求整个交互要在 1 秒内完成。这部分交互主要 关注时序, 关注时序,并且交互概况图能包含任何不同的交互 图类型, 图类型,因此这部分交互在交互概况图中可以用时 序图表示。 序图表示。
2010-11-6
15
9.3.1 内部结构
在介绍类图时,曾介绍类之间的关系, 在介绍类图时 , 曾介绍类之间的关系 , 包括关 联和组合。 联和组合 。 组合结构图提供了显示这些关系的 替代方式。描述了类图中的组合关系, 替代方式 。 描述了类图中的组合关系 , 通过组 合关系显示Table 包含 包含Record 和 FieldType类 合关系显示 Table包含 Record和 FieldType 类 型的对象。 型的对象。
2010-11-6
19
组合结构图显示类的内部结构
2010-11-6
20
组合结构图显示类的结构特性
组合结构图除显示成员之外,也可以显示特性。 组合结构图除显示成员之外,也可以显示特性。特性通过关 联被引用,可以为系统里的其他类所共享。 联被引用,可以为系统里的其他类所共享。特性使用虚线框 表示,而成员以实线外框表示。 显示一张类图, 表示,而成员以实线外框表示。图 8-13 显示一张类图,其 中 Frame 关联到 Button ,并显示 Button 是 Frame 内部 结构中的特性。 建模, 结构中的特性。该类图为一个 GUI 建模,其中 GUI 在面板 上显示了几个按钮。 上显示了几个按钮。
2010-11-6 3
9.1 交互概况图的组成
交互概况图不仅外观上与活动图类似,甚至在理解 交互概况图不仅外观上与活动图类似, 上也可以以活动图标准, 上也可以以活动图标准,只是以交互代替了活动图 中的动作。 中的动作。交互概况图中每个完整的交互都根据其 自身的特点,以不同的交互图来表示,如图所示。 自身的特点,以不同的交互图来表示,如图所示。
2010-11-689.2.1 交互以交互概况图为用例建模时, 以交互概况图为用例建模时,首先必须将用例分解 成单独的交互,并确定最有效表示交互的图类型。 成单独的交互,并确定最有效表示交互的图类型。 例如, 图书管理系统”中的借书用例 借书用例的基本操 例如,对“图书管理系统”中的借书用例的基本操 作流程而言,它可以分为如下几个交互: 作流程而言,它可以分为如下几个交互: 验证借阅者身份 检验借阅者是否有超期的借阅信息 获取借阅的图书信息 检验借阅者借阅的图书数目 记录借阅信息
2010-11-6 2
交互概况图和组合结构图
顺序图、 顺序图 、 通信图和时序图主要关注特定交互的 具体细节, 具体细节,而交互概况图则将各不同的交互结合 在一起, 在一起,形成针对系统某种特定要点的交互整体 图。 交互概况图的外观与活动图类似, 交互概况图的外观与活动图类似,只是将活动图 中的动作元素改为交互概况图的交互关系。 中的动作元素改为交互概况图的交互关系。如果 概况图内的一个交互涉及时序,则使用时序图; 概况图内的一个交互涉及时序,则使用时序图; 如果概况图中的另一个交互可能需要关注消息次 则可以使用顺序图。 序,则可以使用顺序图。交互概况图将系统内单 独的交互结合起来, 独的交互结合起来,并针对每个特定交互使用最 合理的表示法, 合理的表示法,以显示出它们如何协同工作来实 现系统的主要功能。 现系统的主要功能。
2010-11-6 24
回顾类图,类能实现接口。当类实现一个接口时,该接口称为此类的提 回顾类图,类能实现接口。当类实现一个接口时,该接口称为此类的提 供接口,一个提供接口可以使其他类通过该接口访问此类。 供接口,一个提供接口可以使其他类通过该接口访问此类。与提供接口 相反,类还可以有需求接口 需求接口是类运行的接口, 需求接口。 相反,类还可以有需求接口。需求接口是类运行的接口,即该类需要一 个实现该接口的类来为其提供服务。 个实现该接口的类来为其提供服务。如图 8 -17 所示的 Tabte 类实现了 updateable和 updateable和Viewable 接口,让其他类通过这些接口修改及查看Table 接口,让其他类通过这些接口修改及查看Table 这些接口与端口Userservices 关联; 类。这些接口与端口Userservices 关联;而 Maintenance 端口则与 Modifyable 接口和AddDataable接口关联,其中 Modifyable 接口是一 接口和AddDataable接口关联 接口关联, 个需求接口, 用于修改表结构的服务, 个需求接口,是Table 用于修改表结构的服务, AddDataable 接口是提 供接口, 供接口 以便管理向表中添加数据。 2010-11-6 ,以便管理向表中添加数据。 25
2010-11-6
4
交互概况图与活动图一样,都是从初始节点 交互概况图与活动图一样,都是从初始节点 开始,并以最终节点结束 最终节点结束。 开始,并以最终节点结束。在这两个节点之 间的控制通过两者之间的所有交互。并且, 间的控制通过两者之间的所有交互。并且, 交互之间不局限于简单按序的活动, 交互之间不局限于简单按序的活动,它可以 有判断、并行动作甚至循环, 有判断、并行动作甚至循环,
北方民族大学计算机科学与工程学院
课程名称: 课程名称:
UML建模技术 UML建模技术
第21-24讲 21-24讲 任课教师: 任课教师: E-mail:
2010-11-6
第 9章 交互概况 图和组合结构图
丁红胜 tsgding@
1
第8章 交互概况图和组合结构图
本章学习要点: 本章学习要点: 理解什么是交互概况图 了解交互概况图的优点 能够使用交互概况图为用例建模 理解组合结构图的作用 了解组合结构图描述的内容
2010-11-6
17
Record 对 FieldType 和 Table 之间的组合不敏 不能限制上述情况的发生。 感,不能限制上述情况的发生。即一个表格中的记 2010-11-6 录引用另一个表格中的字段类型。 录引用另一个表格中的字段类型。
18
而用户真正的意图是一个表格中的记录引用同一个 表格中的数据类型, 表格中的数据类型,如图 所示的对象结构图才是用 户真正想要的。 户真正想要的。
1. 2.
2010-11-6
用户查看及编辑此Table。 用户查看及编辑此Table。 管理员则可以修改数据、添加数据, 管理员则可以修改数据、添加数据,以及修改 Table结构 Table结构。 结构。
23 23