《第6章UML统一建模语言报告》由会员分享,可在线阅读,更多相关《第6章UML统一建模语言报告(75页珍藏版)》请在金锄头文库上搜索。
1、第第6章章 UML统一建模语言统一建模语言6.1 UML概述 UML是用Booch,Jacobson,Rumbaugh三位面向对象方法的专家,在多家软件公司组成的国际对象管理组织(OMG)标准下研制的,从1997年的1.0版到现在的2.X版,经历逐步完善的过程。目前,UML是软件业界共识的标准。 UML是通用的模型语言,可用于确定、表示、和记录软件系统,它提供的模型符号标记,尤其适用于面向对象的软件分析和设计。它的价值在于它综合并体现了世界上面向对象方法实践的最好经验,以架构为中心,以及递增和迭代地进行软件开发。1 UML的特点(1)统一标准.成为对象组织OMG的正式标准,并提供了标准的面向对
2、象的模型元素的定义和表示(2)面向对象。UML还吸取了面向对象技术领域中其他流派的长处(3)可视化、表示能力强。系统的逻辑模型或实现模型都能用UML的可视化模型清晰地表示,(4)独立于过程。UML是系统建模语言,独立于开发过程。(5)易掌握、易用。2 UML形成过程3 UML的图形表示 1UML的构成 UML建模语言的描述方式以标准的图形表示为主,是由视图(Views)、图(Diagrams)、模型元素(Model Elements)和通用机制(General Mechanism)构成的层次关系。(1)视图视图就是从不同的视角观察和建立的系统模型图。一个视图由多个图构成。每个视图表示系统的一个
3、特殊的方面或者系统的某个特性,多个(用例视图)视图才能建立一个完整的系统模型图。设计视图设计视图实现视图实现视图配置视图配置视图过程视图过程视图Use case视图视图Use Use case case ViewView描描述述系系统统的的外外部部特特性性、系系统功能等。统功能等。Implementation Implementation ViewView 表示系统表示系统的实现特征,常的实现特征,常用构件图表示。用构件图表示。Design Design ViewView 描描述述系系统统设设计计特特征征,包包括括结结构构模模型型视视图图和和行行为为模模型型视视图图,前前者者描描述述系系统统的
4、的静静态态结结构构( (类类图图、对对象象图图) ),后后者者描描述述系系统统的的动动态态行行为为( (交交互互图图、状态图、活动图状态图、活动图) )。Process ViewProcess View 表示系统内表示系统内部的控制机制。常用类图描部的控制机制。常用类图描述过程结构,用交互图描述述过程结构,用交互图描述过程行为。过程行为。Deployment ViewDeployment View 配置配置视图描述系统的物理配置视图描述系统的物理配置特征。用配置图表示特征。用配置图表示。UMLUML常用常用常用常用视图视图视图视图可以在图中使用的概念、对象等统称为模型元素。通用模型元素分为以下
5、两类: 基元素。是指已由UML定义的模型元素,如类、结点、构件、注释、关联、依赖和泛化等。 构造型元素。它在基元素的基础上所构造的新的模型元素,通常是由基元素增加了新的定义而构成的,如扩展基元素的语义。也允许用户自定义。构造型元素用括在双尖括号中的字符串表示。目前UML提供了40多个预定义的构造型元素,如include、extend等。2通用模型元素 模型元素在图中用其相应的图形符号表示。常用的模型元素符号如图常见的连接关系:有关联(Association)、泛化(Generalization)、依赖(Dependency)和聚合(AggfCgation)等,其中聚合是关联的一种特殊形式。这些
6、连接关系的图形符号如图关联:是一种最常见的连接关系,用于连接(Connect)模型元素或链接(link)实例。依赖:表示一个元素以某种方式依赖于另一个元素,依赖关系描述的是两个模型元素(类、组合、用例等)之间的语义上的连接关系,其中一个模型元素是独立的,另一个模型元素是非独立的(或依赖的),它依赖于独立的模型元素泛化:表示一般与特殊的关系,即“一般”元素是“特殊”关系的泛化。常用于描述父类与子类之间的继承关系聚合:表示整体与部分的关系。即由部分元素构成整体细化:是依赖关系的一个变体,描述两个不同语义层次上的元素之间的关系UML的图 1. 用例图(use-case diagram)用例是对系统提
7、供的功能(即系统的具体用法)的描述。用例图从用户的角度描述系统功能,并指出各个功能的操作者。用例图定义了系统的功能需求。用户、项目主管、分析人员、开发人员、质量保证工程师和任何对系统感兴趣的人都可以浏览这个框图,了解系统的功能。2. 静态图(static diagram) 这类图描述系统的静态结构,属于这类图的有类图(class diagram)和对象图(object diagram)。类图不仅定义系统中的类,表示类与类之间的关系(例如,关联、依赖、泛化和细化等关系),也表示类的内部结构(类的属性和操作)。类图描述的是一种静态关系,在系统的整个生命期内都是有效的。 对象图是类图的实例,它使用几
8、乎与类图完全相同的图示符号。两者之间的差别在于,对象图表示的是类的多个对象实例,而不是实际的类。由于对象有生命周期,因此对象图只能在系统的某个时间段内存在。一般说来,对象图没有类图重要,它主要用来帮助对类图的理解,也可用在协作图中,表示一组对象之间的动态协作关系。 3. 行为图(behavior diagram) 这类图描述系统的动态行为和组成系统的对象间的交互关系,包括状态图(state diagram)和活动图(activity diagram)两种图形。状态图描述类的对象可能具有的所有状态,以及引起状态变化的事件,状态变化称作状态转换。通常,状态图是对类图的补充。实际使用时,并不需要为每
9、个类都画状态图,仅需要为那些有多个状态,且其行为在不同状态有所不同的类画状态图。 活动图描述为满足用例要求而进行的动作以及动作间的关系。活动图是状态图的一个变种,它是另一种描述交互的方法。 4. 交互图(interactive diagram) 这类图描述对象间的交互关系,包括顺序图(sequence diagram)和协作图(collaboration diagram)两种图形。顺序图显示若干个对象间的动态协作关系,它强调对象之间发送消息的先后次序,描述对象之间的交互过程。 分析人员从Sequence框图可以看到处理流程,开发人员看到需要开发的对象和这些对象的操作,质量保证工程师可以看到过程
10、的细节,并根据这个过程开发测试用例。 协作图与顺序图类似,也描述对象间的动态协作关系。除了显示对象间发送的消息之外,协作图还显示对象及它们之间的关系(称为上下文相关)。 由于顺序图和协作图都描述对象间的交互关系,所以建模者可以选择其中一种表示对象间的协作关系:如果需要强调时间和顺序,最好选用顺序图;如果需要强调上下文相关,最好选择协作图。 5. 实现图(implementation diagram) 这类图提供关于系统实现方面的信息,构件图(component diagram)和部署图(deployment diagram)属于这类图。构件图描述代码构件的物理结构及各个构件之间的依赖关系。构件
11、可能是源代码、二进制文件或可执行文件。使用构件图有助于分析和理解构件之间的相互影响。 一般编译系统的人员要使用Component框图。构件框图显示组件应以什么顺序编译,还显示编译时会生成哪些运行组件,显示了类与实现组件之间的映射。 部署图定义系统中软件和硬件的物理体系结构。通常,部署图中显示实际的计算机和设备(用节点表示),以及各个节点之间的连接关系,也可以显示连接的类型及构件之间的依赖关系。在节点内部显示可执行的构件和对象,以清晰地表示出哪个软件单元运行在哪个节点上。 项目管理人员、用户和部署人员通过部署图了解网络的物理布局和各种组件的位置。项目管理员通过这个框图与用户沟通系统的布局。部署人
12、员用它进行部署规划。UML的应用领域UML是一种建模语言,是一种标准的表示方法,而不是一种完整的方法学。因此,人们可以用各种方法使用UML,无论采用何种方法,它们的基础都是UML的图,这就是UML的最终用途为不同领域的人提供统一的交流方法。UML适用于系统开发的全过程,它的应用贯穿于从需求分析到系统建成后测试的各个阶段。 需求获取:可以用用例来捕获用户的需求。通过用例建模,可以描述对系统感兴趣的外部角色及其对系统的功能要求(用例)。 分析:分析阶段主要关心问题域中的基本概念(例如,抽象、类和对象等)和机制,需要识别这些类以及它们相互间的关系,可以用UML的逻辑视图和动态视图来描述。类图描述系统
13、的静态结构,协作图、顺序图、活动图和状态图描述系统的动态行为。在这个阶段只为问题域的类建模,而不定义软件系统的解决方案细节(例如,处理用户接口、数据库、通信和并行性等问题的类)。 设计:把分析阶段的结果扩展成技术解决方案,加入新的类来定义软件系统的技术方案细节。设计阶段用和分析阶段类似的方式使用UML。 构造(编码):这个阶段的任务是把来自设计阶段的类转换成某种面向对象程序设计语言的代码。 测试:对系统的测试通常分为单元测试、集成测试、系统测试和验收测试等几个不同的步骤。UML模型可作为测试阶段的依据,不同测试小组使用不同的UML图作为他们工作的依据:单元测试使用类图和类规格说明;集成测试使用
14、构件图和协作图;系统测试使用用例图来验证系统的行为;验收测试由用户进行,用与系统测试类似的方法,验证系统是否满足在分析阶段确定的所有需求。 总之,统一建模语言UML适用于以面向对象方法来描述任何类型的系统,而且适用于系统开发的全过程,从需求规格描述直到系统建成后的测试和维护阶段。6.2 建立用例模型建立系统用例模型的过程就是对系统进行功能需求分析的过程用例模型描述的是外部执行者(actor)所理解的系统功能。用例模型用于需求分析阶段,它的建立是系统开发者和用户反复讨论的结果,描述了开发者和用户对需求规格达成的共识。首先,它描述了待开发系统的功能需求;其次,它把系统看作黑盒子,从外部执行者的角度
15、来理解系统;第三,它驱动了需求分析之后各阶段的开发工作,不仅在开发过程中保证了系统所有功能的实现,而且被用于验证和检测所开发的系统,从而影响到开发工作的各个阶段和UML的各个模型。用例一个用例实质上是用户与计算机系统之间的一次典型的交互作用,它代表的是系统的一个完整的功能。在UML中把用例定义成系统执行的一系列动作,动作的结果能被外部执行者察觉到。在UML用例图中,用例表示为一个椭圆。图1是自动售货机系统的用例图,其中“售货”、“供货”和“取货款”都是典型的用例。概括地说,用例有以下特点:用例代表某些用户可见的功能,实现一个具体的用户目标。用例由执行者激活,并提供确切的值给执行者。 用例可大可
16、小,但它必须是对一个具体的用户目标实现的完整描述。图 自动售货机系统用例图执行者执行者是与系统交互的人或物,它代表外部实体,例如,用户、硬件设备或与本系统交互的另一个软件系统。使用用例并与系统交互的任何人或物都是执行者。实践表明,执行者对确定用例是非常有用的。面对一个大型、复杂的系统,要列出用例清单往往很困难,这时可以先列出执行者清单,再针对每个执行者列出它的用例。这样做可以使问题变得容易很多。定义系统确定执行者和用例描述执行者和用例关系确认模型建立用例模型流程 63 建立静态模型 建模语言都以静态建模机制为基础,标准建模语言UML的静态建模是指对象之间通过属性互相联系,而这些关系不随时间而转
17、移UML的静态建模机制包括用例图(Use Case Diagram)类图(Class Diagram)对象图(Object Diagram)包图(Package Diagram)构件图(Component Diagram。)配置图(Deployment Diagram)类图类图描述类和类与类之间的静态关系,它是从静态角度表示系统的,因此类图属于一种静态模型。类图是构建其他图的基础,没有类图就没有状态图、协作图等其他图,也就无法表示系统其他方面的特性。 (1) 定义类 (2) 类的属性 UML描述属性的语法格式为: 可见性 属性名:类型名=初值性质串 其中,属性名和类型名必须有,其他部分根据需要
18、可有可无。 (3) 类的操作 UML描述操作的语法格式为:可见性 操作名(参数表):返回值类型性质串其中,可见性和操作名是不可缺少的。操作的可见性通常分为公有(用加号表示)和私有(用减号表示)两种,其含义与属性可见性的含义相同。 参数表由若干个参数(用逗号隔开)构成。参数的语法格式为: 参数名:参数类型名=缺省值图 类的图形符号关系如前所述,类图由类和它们之间的关系组成。定义了类之后,就可以定义类之间的各种关系了。类与类之间通常有关联、泛化(继承)、依赖等三种关系。 (1) 关联关系 普通关联 普通关联是最常见的关联关系,只要在类与类之间存在连接关系就可以用普通关联表示。普通关联的图示符号是连
19、接两个类之间的直线。 如果关联是单向的,则称为导航关联,其符号是用实线箭头连接两个类。图 普通关联之例图 导航关联之例 在类图中还可以表示关联中的数量关系,即参与关联的对象的个数。在UML中用重数说明数量或数量范围,例如, 01表示0到1个对象 0*或*表示0到多个对象 115表示1到15个对象 3表示3个对象 如果图中未明确标出关联的重数,则缺省重数是1。 关联的角色 在任何关联中都会涉及到参与此关联的对象所扮演的角色(即起的作用),在某些情况下显式标明角色名有助于别人理解类图。 如果没有显式标出角色名,则意味着用类名作为角色名。 关联类 为了说明关联的性质可能需要一些附加信息。可以引入一个
20、关联类来记录这些信息。关联中的每个连接与关联类的一个对象相联系。关联类通过一条虚线与关联连接。图6 关联的角色图7 关联类示例公司雇员劳动合同1*聚集聚集表示类与类之间的关系是整体与部分的关系。 如果在聚集关系中处于部分方的对象可同时参与多个处于整体方对象的构成,则该聚集称为聚合。如果部分类完全隶属于整体类,部分与整体共存,整体不存在了部分也会随之消失(或失去存在阶值了),则该聚集称为组合。图8 聚合示例图9 组合示例 (2) 泛化关系UML中的泛化关系就是通常所说的继承关系,它是通用元素和具体元素之间的一种分类关系。具体元素完全拥有通用元素的信息,并且还可以附加一些其他信息。UML对定义泛化
21、关系有下述三条要求。具体元素应与通用元素完全一致,通用元素具有的属性、操作和关联,具体元素也都隐含地具有。具体元素还应包含通用元素所没有的额外信息。允许使用通用元素实例的地方,也应能够使用具体元素的实例。在UML中,用一端为空心三角形的连线表示泛化关系,三角形的顶角紧挨着通用元素。注意,泛化针对类型而不针对实例,一个类可以继承另一个类,但一个对象不能继承另一个对象。图10 抽象类示例图11 复杂类图示例 (3) 依赖依赖关系描述两个模型元素(类、用例等)之间的语义连接关系:其中一个模型元素是独立的,另一个模型元素不是独立的,它依赖于独立的模型元素,如果独立的模型元素改变了,将影响依赖于它的模型
22、元素。烟鬼香烟图13 友元依赖关系示例 细化关系当对同一事物在不同抽象层次上描述时,这些描述之间具有细化关系。细化是UML中的术语,表示对事物更详细一层的描述。假设两个元素A和B描述同一个事物,它们的区别是抽象层次不同,如果B是在A的基础上的更详细的描述,则称B细化了A,或称A细化成了B。细化的图示符号为由元素B指向元素A的、一端为空心三角的虚线(不是实线),如图14所示。细化主要用于模型之间的合作,表示各开发阶段不同抽象层次的模型的相关性,常用于跟踪模型的演变。练习用类图描绘出你和你的另一半之间的关系课堂练习用类图表示文件夹和文件的关系文件夹文件*类的识别 在分析阶段,类的识别通常由分析员在
23、分析问题域的基础上完成。类的识别是面向对象方法的一个难点,但又是建模的关键。常用的方法有: (l)名词识别法 该方法的关键是识别问题域中用名词或者名词短语来描述的实体,通过对系统简要描述的分析,在提出实体对应名词的基础上识别类。 名词识别法的步骤如下: 按照指定语言,对系统进行描述。描述过程应与领域专家共同合作完成,并遵循问题域中的概念和命名。 从系统中标识出名词、代词、名词短语,并以此标识为初始的类。 识别确定(取、舍)类 并非所有列出的名词、代词、名词短语都是类,应根据一定的原则进行识别确定。(2)实体识别法实体识别法关心的是构成系统的实体,不关心系统的运作流程及实体之间的通信状态。被标识
24、的实体通常有:系统需要存储、分析、处理的信息实体,系统内部需要处理的设备,与系统交互的外部系统,系统相关人员,系统的组织实体等类型。(3)从用例中识别类)从用例中识别类 针对每个用例,回答以下问题识别类: 在用例描述中出现了哪些实体?或者用例的完成需要哪些实体的合作? 用例在执行过程中会产生并存储了哪些信息? 用例要求与之关联的角色应该向该用例输入什么信息? 用例向与之关联的角色输出什么信息? 用例需要对哪些硬设备进行操作?(4)利用分解与抽象技术分解技术分解技术:是对整体类和组合类进行分解的技术。通过分析对已标识出来的“大类”进行分解,得到新的类,可控制单个类的规模。抽象技术:抽象技术:在所
25、识别的类中,存在着一些在信息和动作上具有相似性的类,可根据这些类的相似性建立抽象类,并建立抽象类与这些类之间的继承关系2 . 包图包(Packape):是一种分组机制,包由关系密切的一组模型元素构成,包还可以由其他包嵌套构成。将许多类集合成一个更高层次的单位,形成一个高内聚、低耦合的类的集合,UML中把这种分组机制称为包作用:降低系统的复杂性,包图是维护和控制系统总体结构的重要建模工具包的内容:可以是类的列表,也可以是另一个包图,还可以是一个类图。包之间的关系有依赖和泛化(继承)依赖关系:依赖关系: 如果两个包中的任如果两个包中的任意两个类存在依赖关意两个类存在依赖关系,则称为包之间存系,则称
26、为包之间存在依赖关系。包之间在依赖关系。包之间的依赖关系,最常用的依赖关系,最常用的是输入依赖关系的是输入依赖关系Import、Accecss(2)泛化关系)泛化关系 使用继承中通用和特使用继承中通用和特例的概念来说明通用包例的概念来说明通用包和专用包之间的关系和专用包之间的关系64 建立动态模型动态模型主要用于描述系统的动态行为和控制结构 动态模型包括4类图: 状态机图(State machine diagram):用来描述对象、子系统、系统的生命周期。 活动图(activity diagrsm):着重描述操作实现中完成的工作,以及用例或对象的活动。活动图是状态图的一个变种。 顺序图(seq
27、uence diagram):是一种交互图,主要描述对象之间的动态合作关系,以及合作过程中的行为次序,常用来描述一个用例的行为。 通信图(communication diagram):用于描述相互合作的对象间的交互关系。它所描述的交互关系是对象间的消息连接关系。1 活动图活动图:活动图描述系统中各种活动的执行顺序,刻画一个方法中所要进行的各项活动的执行流程活动:活动用圆角矩形框表示,框内标注活动名。菱形表示判断,表达条件关系,是一种特殊的活动。判断标志可以有多个输入和输出转移,但在活动的运作中仅触发其中的一个输出转移。同步也是一种特殊的活动,同步线描述了活动之间的同步关系。活动图的模型元素有:
28、转移:转移描述活动之间的关系,描述由于隐含事件引起的活动变迁。转移用带箭头的直线表示,可标注执行该转移的条件,无条件标注表示顺序执行。对象流: 活动图中还可以出现对象,对象作为活动的输入/输出,用虚箭头表示。活动所产生的结果输出给对象“测量值”,再由该对象将值传送给显示活动。泳道:将一张活动图划分为若干个纵向矩形区域,每个矩形区域称为一个泳道,包括了若干活动,在泳道顶部标注的是完成这些活动的对象2状态机图 一个对象在其生命期中都具有多个状态,通常一种状态具有时间的稳定性。状态是对象执行了一系列活动的结果。当某个事件发生后,对象的状态将发生变化状态的元素:初态状态图的起始点。一个状态图只能有一个
29、初态。 终态状态图的终点。终态可以有多个。 中间态可包括三个区域:名字域、状态变量与活动域。 复合态可以进一步细化的状态。事件名(参数表条件)/动作表达式状态名UML设3个无参数事件:entry事件:用于指明进入该状态时的特 定动作。Exit事件:用于指明退出该状态时的特定 动作。do事件:用于指明在该状态中时执行的 动作。空闲、开门空闲、开门entry/开灯开灯烹饪完成烹饪完成entry/关灯关灯entry/关功率管关功率管entry/发滴滴声发滴滴声烹饪中断烹饪中断entry/关功率管关功率管entry/清除计时器清除计时器空闲、门关空闲、门关entry/关灯关灯延长烹饪延长烹饪entry
30、/计时器增计时器增1初始烹饪初始烹饪entry/设置计时器设置计时器entry/开功率管开功率管entry/开灯开灯计时器时间到计时器时间到按按钮按按钮开门开门按按钮按按钮定时器时间到定时器时间到开门开门开门开门开门开门关门关门关门关门按按钮按按钮 例例 -简易微波炉状态图:简易微波炉状态图:只有一个按钮的简易微波炉只有一个按钮的简易微波炉,按一下按钮开始工作按一下按钮开始工作,工作时间为工作时间为一分钟一分钟,工作期间工作期间,每按一次按钮计时器增加一分钟工作时间每按一次按钮计时器增加一分钟工作时间.3 顺序图 顺序图用来描述一组对象之间动态的交互关系,着重描述对象间消息传递的时间顺序。激活
31、的激活的 对象对象带有生命带有生命线的对象线的对象Object:Class分支分支 生生命线命线删除标志删除标志简单消息简单消息用用于于表表示示对对象象正正执执行行某某一一动动作作,在在对对象象的的生生命线之间发送消息的同时即激活对象。命线之间发送消息的同时即激活对象。用用于于表表示示顺顺序序图图中中参参与与交交互互的的对对象象,每每个个对对象象的的下下方方都都带带有有生生命命线线,用用于于表表示示该该对对象象在在某段时间内是存在的。某段时间内是存在的。生生命命线线可可以以劈劈分分成成多多条条生生命命线线,用用于于表表示示条条件,接收分支消息。件,接收分支消息。标标于于生生命命线线或或激激活活
32、上上。表表示示已已删删除除该该对对象象或或活动的执行。活动的执行。表表示示简简单单的的控控制制流流。用用于于描描述述控控制制如如何何在在对对象间进行传递,不考虑通信的细节。象间进行传递,不考虑通信的细节。名名 称称描描 述述可视化图符可视化图符 顺序图的可视化图符顺序图的可视化图符注释连接注释连接注释体注释体返回消息返回消息异步消息异步消息同步消息同步消息名名 称称可视化图符可视化图符注注释释连连接接将将注注释释体体与与要要描描述述的的实实体体相相连连。说说明该注释体是对该实体所进行的描述。明该注释体是对该实体所进行的描述。用于对用于对UML实体进行文字描述。实体进行文字描述。用用于于表表示示
33、从从同同步步消消息息激激活活的的动动作作返返回回到到调调用用者的消息。者的消息。表表示示异异步步控控制制流流。当当调调用用者者发发出出消消息息后后不不要要等等待待消消息息的的返返回回即即可可继继续续执执行行自自己己的的操操作作。异异步步消消息息主主要要用用于于描描述述实实时时系系统统中中的的并并发发行行为。为。表表示示嵌嵌套套的的控控制制流流。操操作作的的调调用用是是一一种种典典型型的的同同步步消消息息。调调用用者者发发出出消消息息后后必必须须等等待待消消息息的的返返回回;当当处处理理消消息息的的操操作作执执行行完完毕毕,调调用者才可继续执行自己的操作。用者才可继续执行自己的操作。描描 述述
34、顺序图的可视化图符顺序图的可视化图符尽力保持消息的顺序从左到右排列。尽力保持消息的顺序从左到右排列。用和你的用例图一致的名称命名角色。用和你的用例图一致的名称命名角色。用和你的类图一致的名称命名类。用和你的类图一致的名称命名类。一个角色的名称可以和类的名称相同。一个角色的名称可以和类的名称相同。包含一个逻辑的叙述性描述。包含一个逻辑的叙述性描述。在图的最左边放置初始的角色。在图的最左边放置初始的角色。在图的最左边放置人和组织角色。在图的最左边放置人和组织角色。 顺序图画法的通用准则顺序图画法的通用准则ob1:C1ob3:C3ob2:C2:C4Op( )x0create(x)x0bar(x)do
35、it(w)doit(z)more( )顺序图示例:顺序图示例:生命线生命线激活激活(控制焦点)消息消息匿名对象匿名对象对象对象消息名消息名条件和参数条件和参数销毁销毁自调用自调用参与者参与者创建对象创建对象分支条件分支条件例1 一个打电话的顺序图。图中,有呼叫者、交换、接受者三个对象,对象之间传送消息,其中路由选择用斜线箭头表示延时。AE表示消息发送和接收的时刻,花括号中信息表示时间限制如何选择活动图和顺序图没有什么特殊流程或者需要强调主干流程是,建议使用顺序图分支较多,或是需要同时强调各种特殊情况时,建议使用活动图为了从不同角度表达,可以同时使用两种图课堂练习请用顺序图画出你向地铁售票机购买
36、地铁车票的过程,大致过程假定如下:你需要先问地铁服务员到目的地的价钱你没有硬币,而地铁售票机只接受硬币,你需要找服务员换硬币得到硬币后,你到售票机购买车票用于描述相互合作的对象间的交互关系和链接(Link)关系。因此,如果强调通信关系,则可以选择通信图。4 通信图Component框图构件图 表示程序组装的情况。一个源代码程序的划分,以及组装大致分为三部分:图符表示: 程序体 程序头 执行文件 (.CPP) ( .h ) 65 建立实现模型 依赖关系。构件之间的依赖关系用虚线箭头表示。又分为开发期的依赖和调用依赖接口。也称为界面,是指构件对外提供的可见性操作和属性。通过接口使一个构件可以访问另外一个构件中定义的操作。接口的图符用一个连接小圆圈的实线段来表示构件之间的关系主要有两类Deployment框图部署图