【软件设计师-从小白到大牛】下午题基础篇:第一章 数据流图(DFD)

简介: 顶层图上的数据流:是系统和外部实体之间的联系。而内部数据流在0层图中能体现,因为系统被细分了。对于数据流图任意一个加工:都应该有输入和输出,箭头有进也有出;黑洞:只有输入,没有输出;奇迹(白洞):只有输出,没有输入。这两种都不符合客观事实。

章节提要

image.png


一、数据流图基本概念

image.png


image.png

数据存储是以表为单位。

外部实体:可能是其他系统。

二、数据流图的分层(DFD)

image.png


三、数据字典

image.png

image.png


四、数据流图平衡原则

image.png

image.png


顶层图上的数据流:是系统和外部实体之间的联系。而内部数据流在0层图中能体现,因为系统被细分了。

对于数据流图任意一个加工:都应该有输入和输出,箭头有进也有出;黑洞:只有输入,没有输出;奇迹(白洞):只有输出,没有输入。这两种都不符合客观事实。

五、答题技巧

image.png


问题一

问题一的题目一般是给出实体名称。


问题一找实体在 第二个图(子图)中找,第二个图将第一个图细分,可以根据不同加工(根据加工名称定位,而不是加工序号)来快速定位(先找数据流较少的)。

实体只能是唯一的。

问题二

问题二的题目一般是给出数据存储名称。


找出信息后若题目没有明确说明存储在哪里,根据 数据流名称+“表/文件” 来作为数据存储名称。

问题三

问题三的题目一般是补充缺失的数据流及其起点和终点。


通过 父图子图平衡 来找缺失的数据流。

通过 加工既有输入数据流也有输出数据流 来找缺失的数据流。

通过 数据守恒 (根据题目具体信息逐一)来找缺失的数据流。

注:

数据流起点或终点至少有一个是加工。

起点和终点名称都写成编号或都写成汉字,不要混着写。

题目材料出现 “根据…” 代表要有对应的输入数据流。

找缺失数据流时注意 "和"字前后的数据流是否都有。

问题四

问题四的题目不固定是拓展类型的题型。

下面是一些问题四考过的题型:


父图与子图如何保持数据流图平衡?

答案:即保持父图与子图之间的平衡:

父图中某个加工的输入输出数据流必须与其子图的输入输出数据流在数量上和名字上相同。

父图的一个输入(或输出)数据流对应于子图中几个输入(或输出)数据流.

而子图中组成的这些数据流的数据项全体正好是父图中的这一个数据流。

如果发送给客户的确认信息是通过Email系统向客户信息中的电子邮件地址进行发送的,那么需要对图1-1和1-2进行哪些修改?

答案:将Email系统作为外部实体,并将发送给客户(E1)的确认信息数据流的终点全部改为Email系统(或具体说明确认信息数据流:临时预定确认信息、预定确认信息、变更确认信息,终点均改为Email系统)。

(注:下图来自前言中up主视频)

0919e70c833c96664d7eac3ded426f4f_55623cd3fbad4afbbcad4d92f580337d.png

(说明:结构化语言。结构化语言需要会写,可以将对应的文字转换成结构化语言)

(注:下图来自前言中up主视频)

28b85806dfe18211f78117c968f2e43b_a5273b96cdd34ec4845c435f23946f22.png

(说明:数据流图中常见的3种错误)

六、案例分析

1、案例1

image.png

image.png

image.png


正确答案:

1)E1:前端应用,E2:数据管理员,E3:后端数据库

2)D1:用户表, D2:操作表, D3:权限表

3)权限验证需要用到D2、D3的信息

image.png

4)绘制加工的时候可能出现的错误:有输入没输出(黑洞),有输出没输入(奇迹),命名错误(这种输入不可能有那种输出)。

image.png

数据存储:一般是某某表,或者某某文件。

输出流缺失:需要根据外部实体身上是箭头情况来判断;输入流:需要根据功能来判断。


2、案例2

image.png

image.png

image.png


正确答案:

1)E1:非信用卡客户,E2:信用卡客户,E3:银行

image.png

2)

3)信用卡申请表,应从E1到P4;激活请求,应从E2到P3。

4)P1:交易信息查询,P2:信用卡客户信息管理,P3:信用卡激活,P4:信用卡申请

image.png

目录
相关文章
|
存储 测试技术 开发工具
软考中的UML图、数据流图等二十余种示例
软考中的UML图、数据流图等二十余种示例
1791 0
最流畅足球直播网有哪些
足球直播365:足球直播365是一家专注于足球直播的网站,提供全球范围内的足球赛事直播服务。您可以在该网站上观看到流畅的足球比赛直播。
|
存储 程序员 数据处理
【软件设计师】程序猿需掌握的技能——数据流图
【软件设计师】程序猿需掌握的技能——数据流图
|
6月前
|
设计模式 Java uml
课时107:时序图
课时107介绍了时序图的描述与设计。时序图用于展示代码执行流程,如Java程序中接口IMessage、类MessageImpl及Factory的调用顺序。通过Power Designer创建UML Sequence Diagram,定义类操作结构并绘制消息传递路径,清晰呈现工厂模式下对象实例化和方法调用的过程。时序图帮助理解程序逻辑,适用于项目开发中的流程分析与文档记录。
179 1
|
12月前
|
存储 前端开发 中间件
『软件工程10』结构化系统分析:数据流图和字典案例分析
该文章通过具体案例分析了在软件工程中如何运用数据流图和数据字典来进行结构化系统分析,帮助明确系统的信息流程和数据定义。
『软件工程10』结构化系统分析:数据流图和字典案例分析
|
10月前
|
存储 大数据 数据管理
大数据垂直分区(Vertical Partitioning)
【11月更文挑战第1天】
198 1
|
存储 小程序 前端开发
超简单实现小程序用户授权登录与退出
本文介绍了如何轻松实现小程序的用户授权登录与退出功能。通过调用微信的`wx.getUserProfile` API获取用户信息,成功后存储到本地以实现授权登录,并在WXML、CSS和JS中提供示例代码。用户信息存储使用`wx.setStorageSync`,退出登录则清除相关缓存,提升用户体验。
425 1
|
存储 算法 搜索推荐
深度优先遍历与广度优先遍历:理解它们的原理与差异
深度优先遍历与广度优先遍历:理解它们的原理与差异
|
XML Java 开发者
Spring 和 Spring Boot 的区别
【2月更文挑战第3天】
954 2
|
机器学习/深度学习 存储 算法
【数据结构入门精讲 | 第十二篇】考研408、公司面试树专项练习(一)
【数据结构入门精讲 | 第十二篇】考研408、公司面试树专项练习(一)
652 0