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

定义

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

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

主要符号

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

层次划分

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

设计步骤与注意事项

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

示例

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

解答:

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

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

数据流

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

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

相关推荐
qqxhb1 天前
系统架构设计师备考第44天——软件架构演化方式的分类和原则
系统架构·运行时·设计时·运行期·静态演化·动态演化·成本风险质量
sniper_fandc1 天前
XXL-JOB从入门到进阶——系统架构、核心原理
系统架构·xxl-job
qqxhb1 天前
系统架构设计师备考第43天——软件架构演化和定义
系统架构·架构演化·架构定义·对象演化·消息演化·复合片段·约束演化
helloworddm1 天前
Orleans Stream SubscriptionId 生成机制详解
java·系统架构·c#
庸了个白1 天前
一种面向 AIoT 定制化场景的服务架构设计方案
mqtt·设计模式·系统架构·aiot·物联网平台·动态配置·解耦设计
武子康2 天前
AI-调查研究-106-具身智能 机器人学习数据采集工具和手段:传感器、API、遥操作、仿真与真人示教全流程
人工智能·深度学习·机器学习·ai·系统架构·机器人·具身智能
武子康2 天前
AI-调查研究-107-具身智能 强化学习与机器人训练数据格式解析:从状态-动作对到多模态轨迹标准
人工智能·深度学习·机器学习·ai·系统架构·机器人·具身智能
MZZDX2 天前
系统设计相关知识总结
系统架构
学无止境w2 天前
高并发系统架构设计原则:无状态、水平扩展、异步化、缓存优先
缓存·系统架构
qqxhb2 天前
系统架构设计师备考第45天——软件架构演化评估方法和维护
分布式·缓存·系统架构·集群·cdn·单体·已知未知评估