【软件设计师-从小白到大牛】下午题基础篇:第一章 数据流图(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图、数据流图等二十余种示例
3218 0
|
数据库 数据库管理
【软件设计师-从小白到大牛】下午题基础篇:第二章 数据库设计
ER模型:是实体联系模型,跟DBMS无关,也就是跟具体的数据库管理系统没有关系。 概念结构设计:完成ER模型的建模工作。
403 1
|
存储 算法 前端开发
【软件设计师-从小白到大牛】上午题基础篇:第五章 结构化开发方法
在结构化分析中,用数据流图描述 数据在系统中如何被传送或变换,以及如何对数据流进行变换的功能或子功能,用于对功能建模。 数据字典有以下4类条目:数据流、数据项、数据存储和基本加工。
647 0
|
测试技术
软件测试区分:条件组合覆盖、语句覆盖、判定覆盖、条件覆盖、路径覆盖
本文解释了软件测试中的不同覆盖标准,包括语句覆盖、判定覆盖、条件覆盖、条件组合覆盖和路径覆盖,并讨论了每种覆盖标准的特点、优点和缺点。
4317 62
|
自然语言处理 编译器 C语言
软考:区分词法分析、语法分析、语义分析
本文解释了编译过程中的词法分析、语法分析和语义分析三个阶段的区别,并提供了相关练习题,帮助读者理解各阶段在编译过程中的作用和重要性。
1255 4
|
10月前
|
机器学习/深度学习 XML Java
【spring boot logback】日志logback格式解析
在 Spring Boot 中,Logback 是默认的日志框架,它支持灵活的日志格式配置。通过配置 logback.xml 文件,可以定义日志的输出格式、日志级别、日志文件路径等。
1799 5
|
存储 前端开发 中间件
『软件工程10』结构化系统分析:数据流图和字典案例分析
该文章通过具体案例分析了在软件工程中如何运用数据流图和数据字典来进行结构化系统分析,帮助明确系统的信息流程和数据定义。
『软件工程10』结构化系统分析:数据流图和字典案例分析
|
存储 大数据 关系型数据库
【数据库三大范式】让我们来聊一聊数据库的三大范式和反范式设计
数据库三大范式是指数据库设计中的规范化原则,它们分别是第一范式(1NF)第二范式(2NF)和第三范式(3NF)。第一范式(1NF)第二范式(2NF)第三范式(3NF)
|
运维 Kubernetes Docker
深入理解容器化技术及其在微服务架构中的应用
深入理解容器化技术及其在微服务架构中的应用
1034 1
|
算法 搜索推荐 Java
软考算法-算法篇(上)
软考算法-算法篇(上)
485 0