UML复习以及数据流图总结
第一部分:UML 9大图详解
UML图主要分为两大类:结构图和行为图。
结构图: 描述系统的静态结构,即系统中有哪些元素,它们之间的关系如何。
行为图: 描述系统的动态行为,即系统元素如何协作、如何响应事件、状态如何变化。
(一)结构图
1. 类图
核心概念: 描述系统内类、接口、协作以及它们之间关系的静态结构。
主要元素:
类:包含类名、属性、方法。
关系:
关联:一个类知道另一个类(有一条实线连接)。
聚合:一种弱的“拥有”关系,部分是整体的(空心菱形箭头)。
组合:一种强的“拥有”关系,部分与整体共存亡(实心菱形箭头)。
泛化:继承关系(空心三角形箭头)。
依赖:一个类的变化会影响另一个类(虚线箭头)。
实现:类实现接口(虚线空心三角形箭头)。
用途: 最常用、最基础的UML图,用于业务建模、数据模型设计、系统代码框架设计。
2. 对象图
核心概念: 类图的一个实例,展示在某一时刻系统内对象的状态以及对象之间的链接关系。
主要元素: 对象(对象名:类名)、链接(关系的实例)。
用途: 用于理解复杂的类图,或展示系统在某个特定时刻的快照。
3. 构件图
核心概念: 描述软件构件(如可执行文件、库、配置文件等)的组织结构和依赖关系。
主要元素: 构件(带有«»标记的矩形)、接口、依赖关系。
用途: 用于系统的物理架构建模,指导开发和部署。
4. 部署图
核心概念: 描述系统运行时硬件节点的拓扑结构,以及软件构件在这些节点上的部署情况。
主要元素: 节点(如服务器、工作站、设备)、构件、它们之间的关联关系。
用途: 描述系统的物理部署视图,对于分布式系统尤为重要。
5. 包图
核心概念: 将模型元素(如类、用例)分组管理的机制,展示系统的高层架构。
主要元素: 包(文件夹图标)、包之间的依赖关系。
用途:管理复杂模型,划分命名空间,体现模块化设计。
6. 复合结构图
核心概念: 展示一个类或协作的内部结构,描述其各部分之间的连接关系。
主要元素: 部件、连接器、端口。
用途: 用于对复杂的类(如包含其他类实例的类)进行内部结构的精细建模。
(二)行为图
7. 用例图
核心概念: 从用户角度描述系统功能,并指出各功能的操作者。
主要元素:
参与者:系统外部与之交互的角色(人或其他系统)。
用例:系统提供的一个功能单元。
关系:关联、包含、扩展、泛化。
用途: 需求分析阶段的核心工具,用于捕获系统需求,定义系统边界。
8. 活动图
核心概念: 描述业务过程或操作的步骤流,类似于流程图。
主要元素:开始节点、结束节点、活动、判断/合并、分叉/汇合、泳道。
用途:建模业务流程、用例的具体工作流、复杂算法的执行步骤。支持并行行为。
9. 状态机图
核心概念: 描述一个对象在其生命周期内所经历的状态序列,以及如何响应各种事件。
主要元素: 状态、初始/终止状态、转移、事件、动作。
用途: 对具有清晰状态(如订单、电梯、线程)的对象的生命周期进行建模。
第二部分:数据流图
1. 核心概念
数据流图是结构化分析方法中使用的工具,它从数据传递和加工的角度,以图形化方式描述系统的逻辑功能。它描绘了数据在系统内部的流动路径和经受的变换。
2. 主要元素
外部实体:系统外部的数据源或数据终点(如用户、外部系统)。
过程:对输入数据进行变换以产生输出数据的操作(动词短语命名)。
数据流:数据在系统内移动的路径,箭头表示方向。
数据存储:数据的静态存储(如文件、数据库表)。
3. 分层结构
DFD通常采用分层绘制法:
顶层图:将整个系统视为一个过程,识别出与系统交互的所有外部实体和主要数据流。
0层图:将顶层图的过程分解为几个主要过程,展示系统的主要功能。
1层图、2层图...:继续分解0层图中的过程,直到过程足够简单、不可再分为止。
4. 主要用途
在系统分析阶段,定义系统边界和功能需求。
作为开发人员与用户之间沟通的功能模型。
为后续的系统设计(如设计数据库、模块)提供基础。
浙公网安备 33010602011771号