UML笔记(十一)
内容提纲
1、 UML回顾
2、 RUP回顾
3、 设计模式回顾
4、 案例回顾
什么是UML?
·UML是一种可视化的面向对象建模语言。
·UMl描述了一个系统的静态结构和动态行为。
·UML用图形方式表现典型的面向对象系统的整个结构。
·UML从不同的角度为系统建模,并形成系统的不同视图。
9种视图就是分别从不同的角度为系统建模的,而形成的系统不同视图。
UML的结构
·UML的基本构造块
——UML中的事物
——UML中的关系
——UML中的图
·UML的规则
·UML中的公共机制
——规格说明
——修饰
——通用划分
——扩展机制
UML的基本构造块
UML中有事物,事物之间存在关系,事物加上它们之间的关系后就形成了图。
UML的基本构造块
UML的主要包括3种构造块(Building Blocks)
1) 事物(Things):构成模型图的一些基本图示符号,它们表示一些面向对象的基本概念。
2) 关系(Relationships):表示基本图示符号之间的关系。
3) 图(Diagrams):特定的视角对系统所作的抽象描述。
事物是对模型中最具有代表性的成分的抽象;关系把事物结合在一起,图聚集了相关的事物。
UML中的事物(Things)
结构事物
1)类(Class)
——类是对一组具有相同属性、方法、关系和语义的对象的描述,一个类实现一个或多个接口。
2)接口(interface)
——接口描述了一个类或构件的一个服务的操作集。接口仅仅是定义了一组操作的规范,它并没有给出这组操作的具体实现。
3)协作(collaboration)
——协作定义了一个交互,它是由一组共同工作以提供某协作的角色和其他元素构成的群体,这些协作行为大于所有元素的各自行为的总和。因此,协作有结构、行为和维度。一个给定的类可以参与几个协作。
4)用例(Use Case)
用例是对一组动作序列的描述,系统执行这些动作将产生一个对特定的参与者(Actor)有价值且可观察的结果。
5)主动类(Active Class)
——是这样的类,其对象至少拥有一个进程或线程,因此它能启动控制活动。
6)构件(component)
——构件是系统中物理的、可替代的部分,它遵循且提供一组接口的实现。
7)节点(node)
节点是在运行时存在的物理元素,它表示了一种可计算的资源,它通常至少有一些记忆能力处理能力。一个构件集可以驻留在一个节点内,也可以从一个节点迁移到另一个节点。
行为事物:
——行为事物是UML模型的动态部分。她们是模型中的动词,描述了跨越时间和空间的行为。共有两类主要的行为事物。
1)交互(interaction)
——交互这样一种行为,他由在特定语境中共同完成一定特定任务的一组对象之间交换的消息组成。一个对象群体的行为或单个操作的行为可用一个交互来描述。
——interfaction涉及一些其他元素,包括消息、动作序列(由一个消息所引起的行为)、links(对象间的连接)
2)状态机(State machine)
——状态机时这样一种行为,描述了一个对象或一个交互在生命期内响应事件所经历的状态序列。单个类或一组类之间协作的行为可以用状态机来描述。一个状态机涉及到一些其他元素,包括状态转化(从一个状态到了另一个状态的流)事件(发转换的事物)和活动(对一个转换的响应)。
分组事物:
——分组事物是UML模型的组织部分,最主要的分组事物是包(Package)
——包是把元素组织成组的机制
·包是UML中唯一的组织机制
·包可以拥有其他元素,这些元素可以是类、接口、构件、节点、协作、用例和图,甚至可以是其他包。
·一个包形成了一个命名空间。在一个包中铜工艺中元素的名称不需是唯一的。不同种类的元素可以有相同的名称。
注释事物
·注释事物是UML模型的解释部分。这些注释事物用来描述、说明和标注模型的任何元素。有一种壮阳药的注释事物,成为注解(note)。
·注解(note)是一个依附于一个元素或一组元素之上,对它进行约束或解释的简单符号。
UML的结构
·UML的基本构造块
——UML中的事物
——UML中的关系
——UML中的图
·UML中的规则
·UML中的公共机制
——规格说明
——修饰
——通用划分
——扩展机制
UML中的关系
在UML中有4中关系:
关联Association
依赖Dependency
泛化Generalization
实现Realization
Association(关联):描述了两个或多个类之间的结构性关系。
泛化是一种特殊/一般关系,特殊元素(子元素)的对象可替代一般元素(父元素)的对象。用这种方法,子元素共享了父元素的结构和行为。
UML中的图
UML包括9种图
·UML表示机制的层次结构:
1、 用例图
2、 类图
3、 行为图(状态图;活动图;交互图<序列图;协同图>)
4、 实现图(组件图;部署图)
1、 用例图
——用例图(Use Case Diagrams):用来描述用户的需求,从用户的角度描述系统的功能,并指出各功能的执行者,强调谁在使用系统,系统为执行者完成哪些功能。
2、 静态图
——类图(Class Diagrams):用于定义系统中的类,包括描述的内部结构和类之间的关系。类图主要用于描述系统的静态结构。
——对象图(Object Diagrams):对象图是类图的一个实例,描述了系统在具体时间点上所包含的对象以及各个对象之间的关系。
3、行为图:用来描述系统的动态模型和对象之间的交互关系,包括:
·状态图(statechart Diagrams):用来描述类的对象所有可能的状态以及事件发生时状态的转移条件。
·活动图(Activity Diagrams):用来描述满足用例要求所要进行的活动以及活动间的约束关系,使用活动图有利于识别系统的并行活动。
·交互图:用来描述对象之间的交互关系,包括:
——序列图(sequence Diagrams):描述对象之间的交互顺序,着重体现对象间消息传递的时间顺序,强调对象之间消息的发送顺序,同时也显示对象之间的交互过程。
——协作图(Collaboration Diagrams):描述对象之间的合作关系,更侧重于说明哪些对象之间有消息的传递。
序列图和协作图可以相互转化。
4、 实现图
——构件图(Component Diagrams):构件图用来描述代码构件的物理结构以及各构件之间的依赖关系。一个构件可以使一个资源文件、一个二进制文件或者一个可执行文件。
——实施图(Deployment Diagrams):部署图定义了系统中硬件的物理体系结构,用来描述实际的物理设备以及它们之间的连接关系。
UML中的规则
不能简单的把UML的构造块按随机的方式放在一起。像任何语言一样,UML有一套规则,这些规则描述了一个结构良好的模型看起来应该像什么。
·UML有用于描述如下事物的语义规则
——命名:为事物、关系和图起名
——范围:给一个名称以特定含义的语境
——可见性:怎样让其他人使用或看见名称
——完整性:事物如何正确、一致地相互联系
——执行:运行或模拟动态模型的含义是什么
UML中的公共机制
UML中有4种贯穿整个语言且一致应用的公共机制:
——规格说明
——修饰
——通用划分
——扩展机制
1、规格说明
·UMl不只是一种图形语言。实际上,在它的图形表示法的每部分背后都有一个规格说明,这个规格说明提供了对构造块的语法和语义的文字叙述。
·UML的图形表示法用来对系统进行可视化;UML的规格说明用来描述系统的细节。
·UML的规格说明提供了一个语义底板,它包含了一个系统的各模型的所有部分,并且各部分相互联系,并保持一致。因此,UML图只不过是对底版的简单视觉投影,每一个图展现了系统的一个特定的方面。
2、修饰
UML表示法中的每一个元素都有一个基本符号,可以把各种修饰细节加到这个符号上。
1、 扩展机制:对UML图示符号的扩展。包括:
——构造型stereotype
——标注值Tagged value
——约束Constraint
复习要点
·掌握UML9种图,重点掌握
——用例图,并能对某个用例进行文档说明
——类图,要求能绘制出每个类的属性和方法,并标明每个成员的访问限制符。
——序列图。
——活动图
——状态图
案例回顾
·课程注册系统
·AutoWeight系统
·根据需求
——绘制用例图
——对关键用例进行说明
——绘制类图(类,类的属性和方法,类与类之间的关系)
——绘制序列图
——绘制活动图,状态图