定义:数据流图(Data Flow Diagram):简称DFD,它从数据传递和加工角度,以图形方式来表达系统的逻辑功能、数据在系统内部的逻辑流向和逻辑变换过程,是结构化系统分析方法的主要表达工具及用于表示软件模型的一种图示方法。
数据流图 (DFD) 一般可分为:变换流、事务流;
- 变换流:由 输入、输出、变化中心 三部分组成,是一顺序结构。
- 事务流:事务中心有多条路径,根据输入值来选择一个事务进行执行。
数据流图中的组成元素:
@1 →:数据流。数据流是数据在系统内传播的路径,因此由一组成分固定的数据组成。如订票单由旅客姓名、年龄、单位、身份证号、日期、目的地等数据项组成。由于数据流是流动中的数据,所以必须有流向,除了与数据存储之间的数据流不用命名外,数据流应该用名词或名词短语命名。
@2 □:数据源或宿(“宿”表示数据的终点)。代表系统之外的实体,可以是人、物或其他软件系统。
@3 ○:对数据的加工(处理)。加工是对数据进行处理的单元,它接收一定的数据输入,对其进行处理,并产生输出。
@4 〓:数据存储。表示信息的静态存储,可以代表文件、文件的一部分、数据库的元素等。
错误点汇总
@1:外部实体之间不能有数据流
@2:加工中的数据流的出和入的名字不能一样
@3:外部实体不能直接访问数据存储
@4:加工不能只进数据流,同样也不能只出数据流
@5:存储和存储之间不能有数据流
概要
数据流图(DFD)基本概念
注意区分ER图和数据流图。数据流图没有联系,菱形。
数据流图分层
层次结构:顶层图、0 层图、底层图、父图、子图。
数据流图常见错误
DFD 的审查
(1)一致性:父图与子图平衡、数据守恒、具备数据存储、输出不能与输入同名。
(2)完整性:奇迹(无入有出)、黑洞(有入无出)、灰洞(无法出)。
数据字典(DD)
数据流、数据项、数据存储、基本加工
数据平衡原则
答题技巧
例题
试题
某医院预约系统的部分需求为:患者可以查看医院发布的专家特长介绍及其就诊时间:系统记录患者信息,患者预约特定时间就诊。用DFD对其进行功能建模时,患者是(15);用ERD对其进行数据建模时,患者是(16)。
(15) A.外部实体 B.加工 C.数据流 D.数据存储
(16) A.实体 B.属性 C.联系 D.弱实体
【答案】A A
【解析】数据流图(Data Flow Diagram):简称DFD,它从数据传递和加工角度,以图形方式来表达系统的逻辑功能、数据在系统内部的逻辑流向和逻辑变换过程,是结构化系统分析方法的主要表达工具及用于表示软件模型的一种图示方法。ER图也称实体-联系图(Entity Relationship Diagram),提供了表示实体类型、属性和联系的方法,用来描述现实世界的概念模型。在实际情况中并非总有一个属性是键,为描述这类情况,E-R图引入了弱实体元素。即没有键属性的实体型。例如本地电话号码、寝室等(如果其仅按照顺序编号的话),对应地,存在键属性的实体型则为强实体型。不管是哪种建模方式患者都是实体
(弱实体(weak entity)
1、定义:有些实体集的所有属性都不足以形成主码,这样的实体集称为弱实体集。
与此相对,其属性可以形成主码的实体集称为强实体集。
通俗的说:有些实体集的所有属性都不足以形成主码,这样的实体集称为弱实体集。与此相对,其属性可以形成主码的实体集称为强实体集(strong entiy)
)
试题一
阅读下列说明和图,回答问题1至问题4 ,将解答填入答题纸的对应栏内。
【说明】
某公司拟开发一个共享单车系统,采用北斗定位系统进行单车定位,提供针对用户的APP以及微信小程序、基于Web的管理与监控系统。该共享单车系统的主要功能如下。
1)用户注册登录。用户在APP端输入手机号并获取验证码后进行注册,将用户信息进行存储。用户登录后显示用户所在位置周围的单车。
2) 使用单车。
①扫码/于动开锁。通过扫描二维码或手动输入编码获取开锁密码,系统发送开锁指令进行开锁,系统修改单车状态,新建单车行程。
②骑行单车。单车定时上传位置,更新行程。
③锁车结账。用户停止使用或手动锁车并结束行程后,系统根据己设置好的计费规则及使用时间自动结算,更新本次骑行的费用并显示给用户,用户确认支付后,记录行程的支付状态。系统还将重置单车的开锁密码和单车状态。
3)辅助管理。
①查询。用户可以查看行程列表和行程详细信息。
②报修。用户上报所在位置或单车位置以及单车故障信息并进行记录。
4)管理与监控。
①单车管理及计费规则设置。商家对单车基础信息、状态等进行管理,对计费规则进行设置并存储。
②单车监控。对单车、故障、行程等进行查询统计。
③用户管理。管理用户信用与状态信息,对用户进行查询统计。现采用结构化方法对共享单车系统进行分析与设计,获得如图1-1所示的上下文数据流图和图1-2所示的0层数据流图。
【问题1】(3分)
使用说明中的词语,给出图1-1中的实体 El~E3 的名称。
E1:用户
E2:商家
E3:单车
【问题2】(5分)
使用说明中的词语,给出图1-2中的数据存储D1~D5的名称。
D1:存储用户信息
D2:记录单车位置及状态信息
D3:记录单车行程信息
D4:存储计费规则
D5:记录单车故障信息
【问题3】(5分)
根据说明和图中术语及符号,补充图1-2中缺失的数据流及其起点和终点.
1. 起点:p3 终点 :E1 数据流名称:开锁密码
2. 起点:p3 终点:E1 数据流名称:锁车结帐
3. 起点:p7 终点:E2 数据流名称:单车状态
【问题4】(2分)
根据说明中术语,说明"使用单车"可以分解为哪些子加工?
扫码/手动开锁,骑行单车,锁车结帐
题目:
问题:
解析:
2题答案
3答案