前言
本系列文章为观看b站视频以及b站up主@zst_2001
系列视频所做的笔记,感谢相关博主的分享。如有侵权,立即删除。
视频链接:视频链接(注:文章中有关图片、以及网友的相关评论与总结等内容未标明出处均出自该视频,感谢大家的分享!)
b站up主页:b站up
章节提要
一、数据流图基本概念
- 数据存储是以表为单位。
- 外部实体:可能是其他系统。
二、数据流图的分层(DFD)
三、数据字典
四、数据流图平衡原则
- 顶层图上的数据流:是系统和外部实体之间的联系。而内部数据流在0层图中能体现,因为系统被细分了。
- 对于数据流图任意一个加工:都应该有输入和输出,箭头有进也有出;黑洞:只有输入,没有输出;奇迹(白洞):只有输出,没有输入。这两种都不符合客观事实。
五、答题技巧
问题一
问题一的题目一般是给出实体名称。
- 问题一找实体在 第二个图(子图)中找,第二个图将第一个图细分,可以根据不同加工(根据加工名称定位,而不是加工序号)来快速定位(先找数据流较少的)。
- 实体只能是唯一的。
问题二
问题二的题目一般是给出数据存储名称。
- 找出信息后若题目没有明确说明存储在哪里,根据 数据流名称+“表/文件” 来作为数据存储名称。
问题三
问题三的题目一般是补充缺失的数据流及其起点和终点。
- 通过 父图子图平衡 来找缺失的数据流。
- 通过 加工既有输入数据流也有输出数据流 来找缺失的数据流。
- 通过 数据守恒 (根据题目具体信息逐一)来找缺失的数据流。
- 注:
- 数据流起点或终点至少有一个是加工。
- 起点和终点名称都写成编号或都写成汉字,不要混着写。
- 题目材料出现 “根据…” 代表要有对应的输入数据流。
- 找缺失数据流时注意 "和"字前后的数据流是否都有。
问题四
问题四的题目不固定是拓展类型的题型。
下面是一些问题四考过的题型:
- 父图与子图如何保持数据流图平衡?
答案:即保持父图与子图之间的平衡:- 父图中某个加工的输入输出数据流必须与其子图的输入输出数据流在数量上和名字上相同。
- 父图的一个输入(或输出)数据流对应于子图中几个输入(或输出)数据流.
- 而子图中组成的这些数据流的数据项全体正好是父图中的这一个数据流。
- 如果发送给客户的确认信息是通过Email系统向客户信息中的电子邮件地址进行发送的,那么需要对图1-1和1-2进行哪些修改?
答案:将Email系统作为外部实体,并将发送给客户(E1)的确认信息数据流的终点全部改为Email系统(或具体说明确认信息数据流:临时预定确认信息、预定确认信息、变更确认信息,终点均改为Email系统)。 - (注:下图来自前言中up主视频)
(说明:结构化语言。结构化语言需要会写,可以将对应的文字转换成结构化语言) - (注:下图来自前言中up主视频)
(说明:数据流图中常见的3种错误)
六、案例分析
1、案例1
正确答案:
1)E1:前端应用,E2:数据管理员,E3:后端数据库
2)D1:用户表, D2:操作表, D3:权限表
3)权限验证需要用到D2、D3的信息
4)绘制加工的时候可能出现的错误:有输入没输出(黑洞),有输出没输入(奇迹),命名错误(这种输入不可能有那种输出)。
数据存储:一般是某某表,或者某某文件。
输出流缺失:需要根据外部实体身上是箭头情况来判断;输入流:需要根据功能来判断。
2、案例2
正确答案:
1)E1:非信用卡客户,E2:信用卡客户,E3:银行
2)
3)信用卡申请表,应从E1到P4;激活请求,应从E2到P3。
4)P1:交易信息查询,P2:信用卡客户信息管理,P3:信用卡激活,P4:信用卡申请