惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

雷峰网
雷峰网
T
The Blog of Author Tim Ferriss
WordPress大学
WordPress大学
V
V2EX
Jina AI
Jina AI
S
Schneier on Security
Cyberwarzone
Cyberwarzone
cs.CV updates on arXiv.org
cs.CV updates on arXiv.org
PCI Perspectives
PCI Perspectives
美团技术团队
小众软件
小众软件
L
LangChain Blog
N
Netflix TechBlog - Medium
大猫的无限游戏
大猫的无限游戏
T
Threatpost
T
Tor Project blog
K
Kaspersky official blog
Microsoft Security Blog
Microsoft Security Blog
Security Archives - TechRepublic
Security Archives - TechRepublic
Security Latest
Security Latest
H
Heimdal Security Blog
N
News and Events Feed by Topic
T
Threat Research - Cisco Blogs
J
Java Code Geeks
H
Hackread – Cybersecurity News, Data Breaches, AI and More
T
Tailwind CSS Blog
C
CXSECURITY Database RSS Feed - CXSecurity.com
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
M
MIT News - Artificial intelligence
Apple Machine Learning Research
Apple Machine Learning Research
N
News | PayPal Newsroom
I
Intezer
博客园 - 聂微东
U
Unit 42
Cisco Talos Blog
Cisco Talos Blog
量子位
T
The Exploit Database - CXSecurity.com
Last Week in AI
Last Week in AI
博客园_首页
月光博客
月光博客
Webroot Blog
Webroot Blog
I
InfoQ
The Cloudflare Blog
Attack and Defense Labs
Attack and Defense Labs
人人都是产品经理
人人都是产品经理
Project Zero
Project Zero
Hacker News: Ask HN
Hacker News: Ask HN
IT之家
IT之家
Google DeepMind News
Google DeepMind News
C
Cisco Blogs

博客园 - 欢乐豆123

软件设计师考试 - 有限自动机 软件设计师考试 - 排序算法 哈夫曼树以及哈夫曼编码 软件设计师考试 - 二分查找 软件设计师考试 - Gantt图与PERT图(项目管理) 软件设计师考试 - 数据表示(原码、反码、补码、移码) 软件设计师考试 - 上午题型分析 软件设计师考试 - 下午题型分析 软件设计师考试-应用技术 内存溢出问题 常见的算法类型 排序算法的介绍 微信生态梳理 海明码介绍 Elasticsearch 实战:基于 function_score 的搜索与权重排序 Nexus的简单介绍以及如何上传自定义包 设计模式-桥接模式(Bridge Pattern) 设计模式简介 jmeter压测 sdkman-管理多个版本的JDK SpringBoot中使用Aop统一拦截MQ消息处理 项目管理流程以及规范 Java-泛型的使用
软件设计师案例题型 - DFD(数据流图)
欢乐豆123 · 2026-05-25 · via 博客园 - 欢乐豆123

软件设计师案例题型 - DFD(数据流图)

   一、数据流图基本概念

   1. 数据流
   说明:数据流由一组固定成分的数据组成,表示数据的流向。每个数据流通常有一个合适的名词反映数据流的含义

   2. 加工 (处理过程/函数、功能模块)

   3. 数据存储(文件)

   说明:数据存储不是以数据库为单位,而是以表为单位,措辞一般为 XX记录文件/表

   4. 外部实体

   外部实体是指存在于软件系统外的人员或组织

   注意:考试中,通常容易把数据流图和ER图混淆

img_62

img_63

   二、数据流图平衡原则

   数据流图的平衡原则非常重要,几乎每次考试都需要利用这个原则解决 一些分析类的问题。平衡原则有两个维度:

   1.  父图与子图之间的平衡

   父图(顶层数据流图)和子图(0层数据流图)在外部实体或父加工与拆分后的子加工之间的数据流需要保持平衡(一致),利用这一平衡原则找出哪些数据流在 分图的时候,细化的时候被遗忘了,丢失了。

   2. 子图内平衡(既有输入也有输出)

   对于一个数据流图的任意一个加工,应该正常的形态是既有输入,又有输出;只有输入,没有输出称之为黑洞;只有输出,没有输入称之为奇迹。这两类情况一旦在图中出现,要意识到图本身出了问题,在查找错误的时候要指出这类错误,有时甚至需要补充到底缺了哪一个数据流,起点是什么,终点是什么,数据流名称又是什么检查数据流的匹配情况,不能有遗漏,同时还要检查箭头所指的方向。

   父图与子图之间的平衡例子。顶层加工一般即为要开发的系统,外部实体与要开发的系统之间有着数据的流转,题目常常需要我们补充父图或子图缺失的数据流。要找0层缺失就找顶层图哪些实体与系统间有哪样的数据流, 这些数据流有没有在0层数据流中出现。反之亦然,这些数据流必然是系统与 外部实体间的联系。但注意0层数据流图内部的加工与加工之间的数据流,在 0层图里面有,在顶层图是体现不出来的。

img_69

  三、数据流图案例题考试内容

  1.  写出顶层数据流图中的外部实体名 (E)

  2. 写出各个数据存储的名称 (D)

  3. 补充缺失的数据流图

  一般都是数据加工(P)到 外部实体(E)/数据表(D) 或者   外部实体(E)/数据表(D) -> 数据加工(P)

  数据的输入/读取: 数据表(D)-> 数据加工(P)

  数据的输出:数据加工(P)-> 数据表(D)

  四、用结构化语言来描述某一次加工过程

  1. 开始结束

  BEGIN / END

  2. 输入输出(数据流)

  DFD里“箭头进来/出去”:

  READ 读取

  WRITE 写入

  OUTPUT 输出

  3. 条件判断(最重要)

  DFD“判断节点”:

  IF ... THEN ... ELSE ...
  ENDIF

  4. 循环结构(高频)
  WHILE ... DO ... ENDWHILE

  5. 处理/加工(动词)

  DFD“加工圆圈”:

  PROCESS 处理、  CALCULATE 计算、  CHECK 检查、  VALIDATE 校验、  UPDATE 更新

  6. 数据存储(数据库)

  INSERT 插入、 SELECT 查询、UPDATE 更新、DELETE 删除(或者简写:READ/WRITE DATABASE)

  7 . 标准模板

  BEGIN

  READ 输入数据

  IF 条件 THEN
        PROCESS 处理数据
        WRITE 写入结果
  ELSE
        OUTPUT 错误信息
  ENDIF

  END