结构化分析
- 研究“物质环境”:当前系统的数据流图,包括人和自动化流程
- 建立系统逻辑模型:将自然流数据转换成等价的逻辑数据流图
- 划清人机界限:确定哪些由自动化完成,哪些由人工完成
结构化分析的输出:
- 分层的数据流图
- 数据字典
- 加工逻辑说明
- 补充材料
数据流图
- 外部实体:目标软件系统之外的人或者系统;也可以是数据的发源地或者归宿地
- 数据存储:文件存储/数据库存储
- 加工:描述输入数据流到输出数据流之间的变换
- 数据流:定义明确的名字
实际应用
通常情况下,不可能用一张数据流图完成结构化分析,一般会有顶层图,0层图,1层图
- 顶层图可以理解为系统分析师的输出,根据这个图,可以了解外部系统与目标系统的数据流关系。个人认为这个图和UML中的用例图的功能类似
- 0层图可以理解为架构师设计输出,根据这个图,可以分析出目标系统应该如何拆分成对应的子系统,数据存储以及它们之间的数据流关系
- 1层图可以理解为小组在子系统实施上的输出,根据这个图,程序员可以完成相关编码
当然,如果系统非常庞大,可以在1层图下继续分解,根据项目团队的组织结构来确定每一层图应该对应的相应角色或团队。
在数据流图的制作和分解过程中,必须保证
- 每个加工都必须有输入和输出
- 数据流至少有一端连接加工