第五章总体设计 5.1总体设计的过程 52软件设计基本原理 53设计准则 54总体设计的图形描述工具 5.5结构化设计方法 退出
5.1 总体设计的过程 5.2 软件设计基本原理 5.3 设计准则 5.4 总体设计的图形描述工具 5.5 结构化设计方法 退出 第五章 总体设计
5.1总体设计的过程 51.1设计供选择的方案 5.1.2推荐最佳实现方案 513设计软件结构 5.1.4数据库设计 5.1.5制定测试计划 退出
5.1 总体设计的过程 5.1.1 设计供选择的方案 5.1.2 推荐最佳实现方案 退出 5.1.3 设计软件结构 5.1.4 数据库设计 5.1.5 制定测试计划
511设计供选择的方案 需求分析阶段得出的数据流图是总体设计的根 本出发点。 通常,选取的这些方案中至少应包括低成本、 中成本和高成本的三种方案类型。 对每个合理方案要提供以下几方面资料: (1)系统流程图; (2)数据字典; (3)成本/效益分析; (4)实现这个系统的进度计划
5.1.1 设计供选择的方案 需求分析阶段得出的数据流图是总体设计的根 本出发点。 通常,选取的这些方案中至少应包括低成本、 中成本和高成本的三种方案类型。 对每个合理方案要提供以下几方面资料: (1)系统流程图; (2)数据字典; (3)成本/效益分析; (4)实现这个系统的进度计划
512推荐最佳方案 分析员从合理方案中选择一个最佳方案向用户 推荐,并为推荐的方案制定详细的实现计划 对于分析员推荐的最佳方案,用户和有关专家 应该认真审查。如果确认该方案确实符合用户的需 要,并且在现有条件下完全能够实现,则应该提请 使用部门负责人进一步审批。在使用部门负责人也 接受了分析员所推荐的方案之后,方可进入总体设 计过程的下一步工作,即结构设计阶段
5.1.2 推荐最佳方案 分析员从合理方案中选择一个最佳方案向用户 推荐,并为推荐的方案制定详细的实现计划。 对于分析员推荐的最佳方案,用户和有关专家 应该认真审查。如果确认该方案确实符合用户的需 要,并且在现有条件下完全能够实现,则应该提请 使用部门负责人进一步审批。在使用部门负责人也 接受了分析员所推荐的方案之后,方可进入总体设 计过程的下一步工作,即结构设计阶段
513设计软件结构 对于大型系统的设计,通常分为两个阶段:结 构设计和过程设计 结构设计:确定系统由哪些模块组成,以及这 些模块之间的相互关系 过程设计:确定每个模块的处理过程 其中,结构设计是总体设计阶段的任务,而过 程设计则是详细设计阶段的任务
过程设计:确定每个模块的处理过程。 结构设计:确定系统由哪些模块组成,以及这 些模块之间的相互关系。 5.1.3 设计软件结构 对于大型系统的设计,通常分为两个阶段:结 构设计和过程设计。 其中,结构设计是总体设计阶段的任务,而过 程设计则是详细设计阶段的任务
514数据库设计 数据库的应用越来越广泛,目前大多数的系统 都要用到数据库技术。 数据库设计是一项专门的技术,包括模式设计 子模式设计、完整性和安全性设计和优化处理等
5.1.4 数据库设计 数据库的应用越来越广泛,目前大多数的系统 都要用到数据库技术。 数据库设计是一项专门的技术,包括模式设计、 子模式设计、完整性和安全性设计和优化处理等
515制定测试计划 在软件开发的早期阶段提前考虑软件的测试计 划是很有必要的。这样能促使软件设计人员在设计 时注意到软件的测试问题,从而有利于提高软件的 可测试性
5.1.5 制定测试计划 在软件开发的早期阶段提前考虑软件的测试计 划是很有必要的。这样能促使软件设计人员在设计 时注意到软件的测试问题,从而有利于提高软件的 可测试性
总体设计阶段的文档 (1)总体设计说明书(包括系统实现方案和软 件模块结构); (2)测试计划(包括测试策略、测试方案、预 测的测试结果、测试进度计划等); (3)用户手册(根据总体设计阶段的结果,编 写的初步的用户操作手册); (4)详细的实现计划 (5)数据库设计结果
总体设计阶段的文档 (1)总体设计说明书(包括系统实现方案和软 件模块结构); (2)测试计划(包括测试策略、测试方案、预 测的测试结果、测试进度计划等); (3)用户手册(根据总体设计阶段的结果,编 写的初步的用户操作手册); (4)详细的实现计划; (5)数据库设计结果
5.2软件设计基本原理 5.2.1模块化 52,2抽象 52.3信息隐蔽 524模块独立性 退出
5. 2 软件设计基本原理 5.2.1 模块化 5.2.2 抽象 5.2.3 信息隐蔽 退出 5.2.4 模块独立性
521模块化 模块:又称构件,是能够单独命名并独立地完成一定 功能的程序语句的集合。例如高级语言中的过程、函数、 子程序等都可作为模块。 模块化是软件的一个重要属性。模块化的特性提供了 人们处理复杂的问题的一种方法,同时也使得软件能够 被有效地管理
模块:又称构件,是能够单独命名并独立地完成一定 功能的程序语句的集合。例如高级语言中的过程、函数、 子程序等都可作为模块。 5.2.1 模块化 模块化是软件的一个重要属性。模块化的特性提供了 人们处理复杂的问题的一种方法,同时也使得软件能够 被有效地管理