数据流图分类和常见问题
1 简介
数据流图 (DFD) 用于直观地表示系统内的数据流,显示数据如何在流程、数据存储和外部实体之间移动。根据其详细程度,有不同类型的 DFD。
2 图书管理系统角度分类介绍DFD
- 顶层图 上下文图 Context Diagram level 0 DFD
描述:上下文图是 DFD 中的最高级别,将系统显示为单个进程,并说明其与外部实体(源或汇)的关系。它不深入研究内部流程或数据存储。
目的:概述系统与外部实体的交互,但不详细说明内部工作原理。
示例:假设有一个图书馆管理系统:
标记为“Library Management System”的单个进程
外部实体,如“User”、“Admin”和“Library Database”
“Request Book”、“Provide Book”和“Update Records”等数据流在这些实体和系统之间流动。
User <------> Library Management System <------> Admin
| |
Book Request Update Inventory
- 一层数据流图 level 1 DFD
描述:级别 1 DFD 通过将单个流程分解为其主要子流程来扩展上下文图。此图提供了有关系统内内部数据流的更多详细信息。
目的:显示系统内的主要子进程以及它们如何相互关联。
示例:继续图书馆 Library Management System 示例:
“Check Book Availability”、“Issue Book”、“Return Book”和“Update Inventory”等流程
数据存储,例如“书籍清单”和“用户记录”
这些流程和实体之间的数据流显示了如何通过不同步骤处理“Book Request”。
User <------> [Library Management System] <------> Admin
| | |
Check Book Availability | |
Issue Book Return Book Update Records
- 二层数据流图 level 2 DFD
描述:2 级 DFD 提供了更多细节,将 1 级的流程分解为更小、更具体的子流程。1 级 DFD 中的每个子流程都可以在其自己的 2 级 DFD 中扩展。
目的:显示每个组件中的详细流程,揭示流程中的各个步骤或任务。
示例:对于图书馆管理系统中的“Issue Book”流程:
它可能包括“验证用户成员资格”、“检查簿条件”和“记录问题事务”等子流程
这些子流程中的每一个都有自己的数据流,连接到特定的数据存储或实体,例如“User Data Store”和“Book Condition Log”。
User <------> Verify Membership <-----> User Records
|
Check Book Condition <-----> Book Condition Log
|
Record Issue Transaction
3 小结
外部实体、加工、数据存储和数据流四要素在数据流程图中常见的错误:
- 命名错误
而数据流的常见错误主要集中在命名方面,数据流名称应该是数据流中传递的数据内容,不要使用处理、传递、变换相关的内容来命名数据流。
外部实体作为数据来源和数据去处,常见错误主要集中在孤立的外部实体和实体命名方面。
孤立外部实体既没有输入任何数据给系统,系统也没有为其提供任何数据,而实体命名一般采用代表人群、事物或组织名称的名词。
- 输入输出错误
加工常见的错误集中在加工的输入和输出,常见的错误包括有输入而没有输出的加工,有输出而没有输入的加工,输入和输出不守恒的加工,同样的数据存储常见的错误也集中在输入和输出,包括有输入无输出的存储,有输出无输入的存储和输入输出不守恒的存储。
- 点赞
- 收藏
- 关注作者
评论(0)