统一建模语言(UML),第4章 顺序图与协作图,4.1 交互图概述,Interaction diagram,是描述对象之间的关系和对象之间的信息传递的图; 通常用来描述一个用例的行为,实现一个用例,完成对系统的动态行为建模; 包含两种: 顺序图(或时序图,sequence diagram) 协作图(
统一建模语言UML第3章 用例图Tag内容描述:
1、消息的结构化视图,4.2 顺序图,按照时间顺序显式对象之间交互的图,4.2.1 顺序图的组成,活动者(actor)或者 对象(object) 生命线(lifeline) 激活(activation)/ 控制焦点(focus of control) 消息(message),4.2.2 活动者或对象,活动者和对象按照从左到右的顺序排列 一般最多两个活动者,他们分列两端。
启动这个用例的活动者往往排在最左边;接收消息的活动者则排在最右端; 对象从左到右按照重要性排列或按照消息先后顺序排列。
,4.2.2 活动者或对象,对象的命名方式有三种: 包括对象名和类名 类名(匿名对象) 对象名(不关心类),4.2.3 生命线,生命线(Lifeline): 每个对象都有自己的生命线,用来表示在该用例中一个对象在一段时间内的存在 垂直的虚线 如果对象生命期结束,则用注销符号表示 对象默认的位置在图顶部,表示对象在交互之前已经存在 如果是在交互过程中由另外的对象所创建,则位于图的中间某处。
,4.2.4 激活期,激活期(activation)/控制焦点(focus of control) 对象在一段时间内获。
2、员不直接参与系统的分析和设计,然而他们对系统的理解直接影响到系统文档的质量,而组件图是帮助他们理解系统的有力工具。
,9.1.1 组件图元素,构成组件图的元素包括: 组件(component) 接口(interface) 关系(relationship) 还可以包括包(package)和子系统(subsystem) 它们有助于将系统中的模型元素组织成更大的组块。
,9.1.1 组件图,1组件(Component) 组件是定义了良好接口且提供实现的一个物理部件 是指类的物理实现,表示将类、接口等逻辑元素打包而形成的物理模块。
它具有很广泛的定义,以下的一些内容都可以被认为是组件:程序源代码、子系统、动态链接库等。
组件的图形表示法是把组件画成嵌套了两个小矩形标签的大矩形。
,9.1.1 组件图,组件在许多方面都与类相同: 二者都有名称; 都可以实现一组接口; 都可以参与依赖、泛化和关联关系; 都可以被嵌套; 都可以有实例; 都可以参与交互。
组件和类之间也有一些显著的差别: 类表示逻辑抽象,而组件表示存在于计算机中的物理抽象。
组件表示的是物理模块而不是逻辑模块,与类处于不同的抽象级别。
类。
3、述一个操作执行过程中所完成的工作(动作),这是活动图最常见的用途。
描述对象内部的工作。
显示如何执行一组相关的动作,以及这些动作如何影响它们周围的对象。
显示用例的实例如何执行动作以及如何改变对象状态。
说明一次业务流程中的人(参与者)和对象是如何工作的。
,存款,8.1.1 基本概念,动作状态 活动状态 转换 分支分叉和汇合 同步 泳道 对象流,1. 状态,State 状态是指在对象的生命周期中满足某些条件、执行某些活动或等待某些事件时的一个条件或状况。
活动图中的状态包括动作状态和活动状态。
动作状态 对象的动作状态是活动图中最小单位的构造块,表示原子动作。
动作状态有三个特性: 原子性; 不可中断性: 瞬时性:,活动状态 表示的是可以分割的动作 特点是:它可以被分解成若干活动状态或动作状态,它能够被中断,占有有限的时间。
活动状态可以理解为一个组合,它的控制流由其他活动状态或动作状态组成。
动作状态和活动状态使用带圆端的方框表示,活动图中也有初态和终态 初态表示一个工作流程的开始,用实心圆点来表示 终态表示了一个活动图的最后和终结状态,用实心圆点外加一个小圆圈来表示,转换。
4、有的元素:在包中可以拥有各种其它元素,包括类、接口、构件、节点、协作、用例,甚至是其它包或图,对包中的元素也可以进行可见性的控制。
公有元素,任何导入此包的包中,都可以引用公有元素 保护元素,只有此包的子包才可以引用保护元素 私有元素,只有在此包中才可以引用私有元素,对外一律不可见。
Rose2003中画可见性 如,画一个,class,并设置其specification中的export control 右击目标package,选择slect compartment items,6.2 包的版型, 表示正在建模的整个系统 表示正在建模的系统中某个独立的部分 虚包,只是某个其它包的视图,主要用于为其它一些复杂的包提供简略视图 是一个代理包,通常应用于分布式系统的建模中 用来表示一个主要由模式组成的包,框架是一个领域内的应用系统提供可扩充模板的体系结构模式,最流行的三种分布式结构CORBA、RMI和DCOM,6.2 包的版型,6.3 包的关系,引入依赖关系Import 是默认的关系 说明提供者包的命名空间将被添加到客户包的命名空间中,客户包中的元素也能够访问提供者包的所有公共元素 源包可。
5、用例规模的大小) 用例的粒度可大可小,一般一个系统控制在20个左右,但没有严格规定 用例是系统级的、抽象的描述,不是细化的(考虑的是“做什么what”,而不是“怎样做how”) 对复杂的系统可以划分为若干子系统处理,3.1.1 用例,怎样识别用例 活动者希望系统执行什么任务? 活动者在系统中访问哪些信息?(创建、存储、修改、删除等) 需要将外界的哪些信息提供给系统? 需要将系统的哪个事件告诉活动者? 如何维护系统?,3.1.2 活动者,Actor 系统外部的参与者,可以是用户、外部硬件、其他系统。
,3.1.2 活动者,怎样识别活动者 谁向系统提供信息? 谁从系统获取(使用)信息? 谁操作这个系统? 谁维护这个系统? 系统要使用哪些外部资源?(系统启动打印机、扫描仪) 系统是否和已经存在的系统交互?(跨行转账的外部银行系统、时间到了定时启动系统某功能),3.1.2 活动者,理解 Actor不是指人,而是指代表某一种特定功能的角色,因此同一个人可能对应很多个Actor。
Actor是虚拟的概念,是对活动者的称谓,可以指外部系统和设备。
如果一个活动者的操作是由另外一个活动者代理完成的,可以。