UML复习以及数据流图总结

第一部分:UML 9大图详解

UML图主要分为两大类:结构图和行为图。

结构图: 描述系统的静态结构,即系统中有哪些元素,它们之间的关系如何。

行为图: 描述系统的动态行为,即系统元素如何协作、如何响应事件、状态如何变化。

(一)结构图
1. 类图

核心概念: 描述系统内类、接口、协作以及它们之间关系的静态结构。

主要元素:

类:包含类名、属性、方法。

关系:

关联:一个类知道另一个类(有一条实线连接)。

聚合:一种弱的“拥有”关系,部分是整体的(空心菱形箭头)。

组合:一种强的“拥有”关系,部分与整体共存亡(实心菱形箭头)。

泛化:继承关系(空心三角形箭头)。

依赖:一个类的变化会影响另一个类(虚线箭头)。

实现:类实现接口(虚线空心三角形箭头)。

用途: 最常用、最基础的UML图,用于业务建模、数据模型设计、系统代码框架设计。

2. 对象图

核心概念: 类图的一个实例,展示在某一时刻系统内对象的状态以及对象之间的链接关系。

主要元素: 对象(对象名:类名)、链接(关系的实例)。

用途: 用于理解复杂的类图,或展示系统在某个特定时刻的快照。

3. 构件图

核心概念: 描述软件构件(如可执行文件、库、配置文件等)的组织结构和依赖关系。

主要元素: 构件(带有«»标记的矩形)、接口、依赖关系。

用途: 用于系统的物理架构建模,指导开发和部署。

4. 部署图

核心概念: 描述系统运行时硬件节点的拓扑结构,以及软件构件在这些节点上的部署情况。

主要元素: 节点(如服务器、工作站、设备)、构件、它们之间的关联关系。

用途: 描述系统的物理部署视图,对于分布式系统尤为重要。

5. 包图

核心概念: 将模型元素(如类、用例)分组管理的机制,展示系统的高层架构。

主要元素: 包(文件夹图标)、包之间的依赖关系。

用途:管理复杂模型,划分命名空间,体现模块化设计。

6. 复合结构图

核心概念: 展示一个类或协作的内部结构,描述其各部分之间的连接关系。

主要元素: 部件、连接器、端口。

用途: 用于对复杂的类(如包含其他类实例的类)进行内部结构的精细建模。

(二)行为图
7. 用例图

核心概念: 从用户角度描述系统功能,并指出各功能的操作者。

主要元素:

参与者:系统外部与之交互的角色(人或其他系统)。

用例:系统提供的一个功能单元。

关系:关联、包含、扩展、泛化。

用途: 需求分析阶段的核心工具,用于捕获系统需求,定义系统边界。

8. 活动图

核心概念: 描述业务过程或操作的步骤流,类似于流程图。

主要元素:开始节点、结束节点、活动、判断/合并、分叉/汇合、泳道。

用途:建模业务流程、用例的具体工作流、复杂算法的执行步骤。支持并行行为。

9. 状态机图

核心概念: 描述一个对象在其生命周期内所经历的状态序列,以及如何响应各种事件。

主要元素: 状态、初始/终止状态、转移、事件、动作。

用途: 对具有清晰状态(如订单、电梯、线程)的对象的生命周期进行建模。

第二部分:数据流图
1. 核心概念
数据流图是结构化分析方法中使用的工具,它从数据传递和加工的角度,以图形化方式描述系统的逻辑功能。它描绘了数据在系统内部的流动路径和经受的变换。

2. 主要元素

外部实体:系统外部的数据源或数据终点(如用户、外部系统)。

过程:对输入数据进行变换以产生输出数据的操作(动词短语命名)。

数据流:数据在系统内移动的路径,箭头表示方向。

数据存储:数据的静态存储(如文件、数据库表)。

3. 分层结构
DFD通常采用分层绘制法:

顶层图:将整个系统视为一个过程,识别出与系统交互的所有外部实体和主要数据流。

0层图:将顶层图的过程分解为几个主要过程,展示系统的主要功能。

1层图、2层图...:继续分解0层图中的过程,直到过程足够简单、不可再分为止。

4. 主要用途

在系统分析阶段,定义系统边界和功能需求。

作为开发人员与用户之间沟通的功能模型。

为后续的系统设计(如设计数据库、模块)提供基础。

posted @ 2025-10-17 16:14  雨花阁  阅读(12)  评论(0)    收藏  举报