7.4.4 需求分析的工具
本课核心知识点整理
结构化分析的核心工具:DFD + 数据字典 + 加工逻辑
本节重点不是泛泛列很多图,而是掌握结构化分析工具链:
| 工具 | 解决的问题 |
|---|---|
| 数据流图 DFD | 数据从哪里来、经过哪些加工、存到哪里、输出到哪里 |
| 数据字典 DD | DFD 中的名词到底包含什么 |
| 加工逻辑说明 | 基本加工内部到底怎么判断和处理 |
数据流图在上午题会考概念,在下午题试题一会考填空、补全和平衡原则,是需求分析工具里最重要的一块。
数据流图的四种基本图元
| 图元 | 表示 | 命名特点 |
|---|---|---|
| 数据流 | 箭头 | 名词,如“用户信息”“学员信息” |
| 加工 | 圆形或圆角矩形 | 动词 + 名词,如“处理订单”“用户管理” |
| 数据存储 | 平行线或一侧封闭矩形 | 文件、库、档案、表,如“用户表” |
| 外部实体 | 矩形 | 系统之外的人、组织或第三方系统 |
数据流必须和加工相关。也就是说,一个数据流的起点和终点之间,至少有一端是加工:可以是外部实体到加工、加工到数据存储、加工到加工,但不应直接从外部实体流到数据存储。
DFD 的分层与平衡
数据流图体现结构化分析“自顶向下、逐步求精”的思想。
| 层次 | 特点 |
|---|---|
| 顶层图/上下文图 | 通常只有一个加工,代表整个信息系统 |
| 0 层图/一层图 | 把顶层加工分解为若干主要加工 |
| 子图 | 继续分解某个加工 |
父图和子图之间要保持数据流平衡:父图中进入/流出某加工的数据流,在子图边界上应能对应。这是下午题常考点,当前先记住原则。
数据字典
数据字典解释 DFD 中名词类内容。常见条目包括:
| 条目 | 说明 |
|---|---|
| 数据流 | 某条数据流包含什么 |
| 数据项 | 基本数据元素的含义和格式 |
| 数据存储 | 文件、表、库中保存哪些数据 |
| 基本加工 | 加工的输入、输出和基本说明 |
外部实体通常不在数据字典中解释,因为它位于系统之外,不属于系统内部定义的数据对象。
常见记号:
| 记号 | 含义 | 例子 |
|---|---|---|
= | 被定义为 | 机票 = 航班号 + 终点 + 日期 |
+ | 与,由多个项组成 | A + B |
| `[A | B]` | 或,二选一 |
(A) | 可选 | 联系电话 = 手机号 + (分机号) |
加工逻辑说明
加工逻辑用于描述基本加工内部怎么处理。常用三种方式:
| 工具 | 适合表达 |
|---|---|
| 结构化语言 | 顺序、选择、循环等处理过程 |
| 判定表 | 多条件组合与动作对应关系 |
| 判定树 | 多条件分支,图形化更直观 |
结构化语言介于自然语言和形式化语言之间,属于半形式化表达:比口头描述更明确,比数学形式化语言更容易读懂。
例题
关于数据流图中的数据流,正确的是:
数据字典的主要作用是:
关于加工逻辑说明,正确的是:
自查要点
- DFD 的四种基本图元分别是什么?
- 为什么数据流必须至少连接一个加工?
- 顶层图和子图体现了什么分析思想?
- 数据字典中通常有哪些条目?
- 结构化语言、判定表、判定树分别适合什么场景?