软考-软件设计师:软件工程-结构化开发方法:数据流图(数据流、加工、数据存储、外部实体)

介绍

数据流图也称 数据流程图(Data Flow Diagram,DFD),是一种便于用户理解、分析系统 数据流程 的图形工具。

在逻辑上描述系统的 功能、输入、输出和数据存储等,是系统逻辑模型的重要组成部分。

基本图形元素

基本图形元素包括:

  • 数据流(DataFlow)
  • 加工(Process)
  • 数据存储(Data Store)

上面3个用于构建软件的 数据处理模型

  • 外部实体(Extermal Agent):系统之外的对象,系统数据的来源和去向

DFD 的基本图形元素如下图

数据流

数据流由一组固定成分的 数据组成,表示 数据的流向

必须与 加工 相关,数据流的流向有以下几种:

  • 从一个加工流向另一个加工;
  • 从加工流向数据存储(写);
  • 从数据存储流向加工(读);
  • 从外部实体流向加工(输入);
  • 从加工流向外部实体(输出)

每个数据流用一个名字表示。除了流向数据存储或从数据存储流出的数据流不必命名外

加工

输入数据流经过什么处理后变成了输出数据流

理解: 软件某个 功能

每个加工都有一个名字和编号。编号能反映出该加工位于分层DFD 中的哪个层次和哪张图中,也能够看出它是哪个加工分解出来的子加工。

至少有一个输入数据流和一个输出数据流

常见错误

常见的3种错误如图6-9所示:

  • 有输入但是没有输出,称之为 黑洞,如:加工3.1.2

  • 有输出但没有输入,加工3.1.3

  • 输入不足以产生输出,加工3.1.1中,我们称之为 灰洞

数据存储

把信息保存下来以供以后使用

可以是文件、数据库

每个数据存储都有一个定义明确的名字标识。

  • 数据流流入数据存储,表示写入
  • 数据流从数据存储流出,表示读取
  • 数据流用 双向箭头 指向数据存储,表示 修改
具体实现
  • 文件系统
  • 数据库
存储介质
  • 磁盘
  • 磁带
  • 其他存储介质

外部实体(外部主体)

软件之外的人员、组织,外部系统

指出系统所需 数据的发源地(源)和系统所产生的 数据的归宿地(宿)。

在许多系统中,某个源和某个宿可以是同一个人员或组织,此时,在DFD 中可以用同一个符号表示。

如:考生向系统提供报名单,而系统向考生送出准考证,所以在考务处理系统中,考生既是源又是宿。

源和宿采用相同的图形符号表示,当数据流从该符号流出时,表示它是源;当数据流流向该符号时,表示它是宿;当两者皆有时,表示它既是源又是宿。

2.数据流图的扩充符号

在DFD中,一个加工可以有 多个输入数据流 和 多个输出数据流,此时可以加上一些扩充符号来描述多个数据流之间的关系。

星号(*)

星号表示数据流之间存在 与 关系。

  • 输入流:则表示所有输入数据流全部到达后才能进行加工处理;
  • 输出流:则表示加工结束将同时产生所有的输出数据流。

加号(+)

加号表示数据流之间存在 或 关系。

  • 输入流:则表示其中任何一个输入数据流到达后就能进行加工处理;

  • 输入流:则表示加工处理的结果是至少产生其中一个输出数据流。

异或(⊕)

异或表示数据流之间存在 互斥 关系。

  • 输入流:则表示 当且仅当其中一个输入流 到达后才能进行加工处理;

  • 输出流:则表示加工处理的结果是仅产生这些输出数据流中的一个。

题

在结构化分析中,用数据流图描述()。当采用数据流图对一个
图书馆管理系统进行分析时,()是一个外部实体。

A、数据对象之间的关系,用于对数据建模
B、数据在系统中如何被传送或变换,以及如何对数据流进行变换
的功能或子功能,用于对功能建模
C、系统对外部事件如何响应,如何动作,用于对行为建模
D、类数据流图中的各个组成部分

A、读者
B、图书
C、借书证
D、借阅

答案

第一问:B

第二问:A,图书、借书证、借阅都是图书馆管理系统的功能


原文出处:/show_1GWyukUbPPy.html