软件设计:DFD图转模块结构,构建高内聚低耦合系统

需积分: 16 1 下载量 37 浏览量 更新于2024-08-23 收藏 2.2MB PPT 举报
"将DFD图转换为模块结构图-软件工程课件" 在软件工程中,数据流图(DFD)是一种常用的系统分析工具,用于描述数据在系统中的流动和处理过程。DFD图通常由数据流、加工(处理)、数据存储和外部实体组成,它表达了系统的逻辑功能。而模块结构图则是软件设计中的一个重要环节,它将DFD图中的逻辑功能转换为具体的程序模块,便于编程实现。 将DFD图转换为模块结构图的过程涉及以下步骤: 1. **识别处理过程**:首先,从DFD图中找出各个处理过程,如“取顺序”、“修改记录”等,这些将成为模块结构图中的处理模块。 2. **确定数据存储**:DFD中的数据存储,如“贷款文件”、“记录”、“账号”等,会对应到模块结构图中的数据结构或数据库设计。 3. **分解事务处理**:对于复杂的处理过程,如“编辑卡片”,需要进一步分解为更小的子任务,确保每个模块具有单一职责,这是“事务处理”型DFD的特点。 4. **构建模块层次**:依据数据流和控制流的关系,构建模块的层次结构。例如,“编辑卡片”可能包含“读旧记录”、“检查顺序”、“修改信息”和“写记录”等子模块。 5. **设计接口**:定义模块间的接口,确保模块之间的通信有效且低耦合。例如,“打印报告”模块需要与“记录”模块交互,获取数据并进行输出。 6. **考虑控制结构**:根据DFD中的控制流,设计模块间的控制逻辑,如“检查次序”、“账号相等”等条件判断。 7. **模块化设计**:遵循高内聚、低耦合的原则,使得每个模块具有单一的功能,且与其他模块的依赖关系最小化。这有助于提高软件的可维护性和可理解性。 8. **评审与修改**:完成初步设计后,进行复审,根据反馈和需求调整模块结构,确保设计的合理性。 在软件设计阶段,通常分为概要设计和详细设计两个步骤。概要设计阶段,主要确定软件的体系结构,包括系统分解、控制建模和模块分解,目的是形成模块描述。详细设计阶段则进一步细化模块,明确数据结构和算法,使设计更加具体和可实施。 软件设计的目标是构建出高可靠性的软件,具有高可维护性、高可理解性以及高效率。衡量设计好坏的标准包括模块的层次结构、模块独立性、设计文档的质量以及与系统环境的交互清晰度。 软件体系结构设计是整个设计的起点,决定了系统的整体架构,如仓库模型(集中式)和分布式模型等。仓库模型中,中央数据仓库作为数据共享中心,子系统之间耦合度较高;而分布式模型则强调子系统之间的独立性和松耦合。 将DFD图转换为模块结构图是软件设计过程中的关键转换,它涉及到对系统功能的深入理解和模块化设计的技巧,目的是为了实现高效、可靠的软件系统。