需求获取-统一建模语言UML
这个部分的知识点主要是集中在上午和下午案例中,论文可以作为描述部分。
一、UML系统视图
UML系统视图就是UML对系统组织结构的描述,体现在系统的分解、系统的关联性、交互机制和指导原则。具体的分类如下:
- 逻辑视图
设计模型中具有重要的意义。是类
、子系统
、包
和用例实现
的子集。 - 进程视图
是系统可执行线程
和进程
作为活动类的建模视图。 - 实现视图
描述的是系统的物理代码文件
和构件
进行的建模视图。 - 部署视图
表示的是软件到硬件的映射和分布结构。 - 用例视图
最基本的需求分析模型。
二、UML建模元素
UML建模元素主要分为 结构事物
、行为事物
、分组事物
、注释事物
。
- 结构事物
在模型中属于静态部分。其中包含7个结构事物,分别是类
、接口
、协作
、用例
、活动类
、构件
和节点
。 - 行为事物
行为事物主要是代表时间和空间上的动作。在UML中主要的行为事物有两种。一种是对象之间的交互,另外一种就是一系列对象的状态。 - 分组事物
将有组织的来分组系统的组成部分。包主要是概念上的事物,只存在于系统开发阶段,而构件可以存在于系统运行阶段。 - 注释事物
UML模型的解释部分。
三、UML类之间的关系
- 依赖关系
两个事物之间的语义关系。一个事物发生变化会影响另一个事物
的语义。
-
关联关系
一组对象之间连接的结构关系。可以从一个类的对象连接到另一个类的对象。
-
泛化关系
是一种存在于一般元素和特殊元素之间的分类关系。其实就是类之间的继承关系。
-
实现关系
类之间的关系,一个类指定了另一个类保证执行的契约。例如某个类实现了接口。
四、UML用例之间的关系
- 包含关系(include)
两个用例之间,其中一个用例的行为包含另一个用的行为
。
-
扩展关系(extend)
扩展关系是对基本用例的行为扩展,基本用例是一个完整的用例,即使没有子用例的参与,也可以完成一个完整的功能。基本用例中的扩展点被激活时,子用例才会被执行。
-
泛化关系
泛化关系是当多个用例共同拥有一种类似的结构和行为的时候,可以将它们的共性抽象成为父用例,其他用例作为泛化关系中的子用例。
- 分组关系
其实就是把用例进行分组,用文件夹进行包含。
五、UML图
UML2.0中图共有14种。
- 结构图
包图
、类图
、组件图
、部署图
、对象图
、组合结构图
- 行为图
用例图
、活动图
、状态机图
、交互图
、序列图
、通信图
、交互概述图
、时间图
六、UML图说明
(1)类图(class diagram)。类图描述一组类、接口、协作和它们之间的关系。在OO系统的建模中,最常见的图就是类图。类图给出了系统的静态设计视图,活动类的类图给出了系统的静态进程视图。
(2)对象图(object diagram)。对象图描述一组对象及它们之间的关系。对象图描述了在类图中所建立的事物实例的静态快照。和类图一样,这些图给出系统的静态设计视图或静态进程视图,但它们是从真实案例或原型案例的角度建立的。
(3)构件图(component diagram)。构件图描述一个封装的类和它的接口、端口,以及由内嵌的构件和连接件构成的内部结构。构件图用于表示系统的静态设计实现视图。对于由小的部件构建大的系统来说,构件图是很重要的。构件图是类图的变体。
(4)组合结构图(composite structure diagram)。组合结构图描述结构化类(例如,构件或类)的内部结构,包括结构化类与系统其余部分的交互点。组合结构图用于画出结构化类的内部内容。
(5)用例图(use case diagram)。用例图描述一组用例、参与者及它们之间的关系。用例图给出系统的静态用例视图。这些图在对系统的行为进行组织和建模时是非常重要的。
(6)顺序图(sequence diagram,序列图)。顺序图是一种交互图(interaction diagram),交互图展现了一种交互,它由一组对象或参与者以及它们之间可能发送的消息构成。交互图专注于系统的动态视图。顺序图是强调消息的时间次序的交互图。
(7)通信图(communication diagram)。通信图也是一种交互图,它强调收发消息的对象或参与者的结构组织。顺序图和通信图表达了类似的基本概念,但它们所强调的概念不同,顺序图强调的是时序,通信图强调的是对象之间的组织结构(关系)。在UML 1.X版本中,通信图称为协作图(collaboration diagram)。
(8)定时图(timing diagram,计时图)。定时图也是一种交互图,它强调消息跨越不同对象或参与者的实际时间,而不仅仅只是关心消息的相对顺序。
(9)状态图(state diagram)。状态图描述一个状态机,它由状态、转移、事件和活动组成。状态图给出了对象的动态视图。它对于接口、类或协作的行为建模尤为重要,而且它强调事件导致的对象行为,这非常有助于对反应式系统建模。
(10)活动图(activity diagram)。活动图将进程或其他计算结构展示为计算内部一步步的控制流和数据流。活动图专注于系统的动态视图。它对系统的功能建模和业务流程建模特别重要,并强调对象间的控制流程。
(11)部署图(deployment diagram)。部署图描述对运行时的处理节点及在其中生存的构件的配置。部署图给出了架构的静态部署视图,通常一个节点包含一个或多个部署图。
(12)制品图(artifact diagram)。制品图描述计算机中一个系统的物理结构。制品包括文件、数据库和类似的物理比特集合。制品图通常与部署图一起使用。制品也给出了它们实现的类和构件。
(13)包图(package diagram)。包图描述由模型本身分解而成的组织单元,以及它们之间的依赖关系。
(14)交互概览图(interaction overview diagram)。交互概览图是活动图和顺序图的混合物。