系统架构设计(七):数据流图

定义

数据流图(Data Flow Diagram, DFD)是一种用于表示信息系统数据流转及处理过程的图形工具。

它反映系统功能及数据之间的关系,是结构化分析与设计的重要工具。

主要符号

符号 说明 描述举例
方框 外部实体(源或终点) 用户、外部系统
椭圆/圆角矩形 处理过程 业务功能、操作
箭头 数据流 数据在实体与过程间流动
开放矩形 数据存储(库) 数据库、文件

层次划分

  • 0 级 DFD(上下文图)
    展示系统整体与外部实体的数据流交互,顶层总览。
  • 1 级 DFD
    分解顶层系统为多个子过程,展示主要功能模块之间数据流。
  • 2 级及更深层次
    继续分解子过程,详细描述功能细节。

设计步骤与注意事项

  1. 识别外部实体:确定系统外部用户、其他系统等。
  2. 定义主要过程:业务活动、处理功能,编号层级清晰(1.0、1.1、1.2...)。
  3. 确定数据流:数据在过程与外部实体、过程与数据存储间的流动。
  4. 标识数据存储:数据库、文件或缓存。
  5. 保持平衡:层次间数据流和实体保持一致,防止丢失或新增数据流。
  6. 避免数据流循环,保持逻辑清晰。

示例

请绘制某订单管理系统的 0 级数据流图,并简述各部分作用。

解答:

外部实体:客户(订单发起者)、仓库系统(订单配送)、财务系统(付款确认);

系统整体过程:订单管理系统作为一个整体处理客户订单,实现订单接收、处理及通知功能;

数据流

  • 客户向系统发送"订单请求"数据流;
  • 系统向客户返回"订单确认"数据流;
  • 系统将"订单详情"传递给仓库系统;
  • 系统向财务系统发送"付款信息";

数据存储:订单数据存储于系统数据库,保持订单信息持久化。

相关推荐
JienDa11 小时前
JienDa聊PHP:Laravel驱动的企业级图床系统架构设计与实战
系统架构·php·laravel
小毅&Nora18 小时前
【人工智能】【AI外呼】系统架构设计与实现详解
人工智能·系统架构·ai外呼
p***q782 天前
docker离线安装及部署各类中间件(x86系统架构)
docker·中间件·系统架构
阿祥~2 天前
sqdaxiang Framework
系统架构
p***43483 天前
HarmonyOS系统架构
华为·系统架构·harmonyos
hhcccchh3 天前
学习vue第七天 从单页面应用(SPA)进化为后台管理系统架构
vue.js·学习·系统架构
Tadas-Gao4 天前
Spring Boot 4.0架构革新:构建更精简、更安全、更高效的Java应用
java·spring boot·分布式·微服务·云原生·架构·系统架构
jiayong235 天前
多子系统架构下的Nginx部署策略与最佳实践
运维·nginx·系统架构
晓风残月淡5 天前
系统架构设计基础知识:软件架构风格
系统架构·软件架构风格