软考-软件设计师:软件工程-系统设计:概要设计和详细设计 作者:马育民 • 2025-04-17 09:49 • 阅读:10001 # 系统设计 把软件 `做什么` 的逻辑模型转换成 `怎么做` 的物理模型,即着手实现软件系统的需求 ### 目的 为系统制定蓝图,在各种技术和实施方法中权衡利弊,精心设计,合理地使用各种资源,最终勾画出新系统的详细设计方案。 ### 结果 一系列系统设计文档 ### 设计方法分类 常用的设计方法有以下两种: - 面向 **数据流** 的结构化设计方法(SD)。 - **面向对象** 的分析方法(OOD)。 ### 步骤 - 概要设计 - 详细设计 # 概要设计 ### 特点 抽象化 自顶而下、逐步求精 信息隐蔽 模块独立 (高内聚、低耦合) **注意:** 模块与模块之间的关系,**不需要设计模块内详细内容** ### 主要内容 包括: - 设计软件系统总体结构:划分模块 - 数据结构设计 - 数据库设计,如:E-R模型 - 编写概要设计文档: - 有概要设计说明书 - 数据库设计说明书 - 用户手册 - 修订测试计划 - 评审 ### 设计软件系统总体结构 - 采用某种设计方法,将一个复杂的系统按功能划分成模块; - 确定每个 **模块的功能**; - 确定 模块之间的 **调用关系**; - 确定模块之间的 **接口**,即模块之间 **传递的信息**; - 评价模块结构的质量 **注意:**不需要设计 **模块内部** ### 数据结构设计 此处宜使用抽象的数据模型,详细阶段规则具体实现细节。 ### 数据库设计 - 概念设计:E-R模型 - 逻辑设计:结合DBMS建立数据库逻辑结构 - 物理设计:针对 DBMS 、物理环境进行设计,如:数据项存储要求、存取方法、索引的建立等 ### 编写概要设计文档 主要有: - 概要设计说明书 - 数据库设计说明书 - 用户手册 - 修订测试计划 ### 评审 对设计部分进行一一评审 # 详细设计 ### 特点 抽象化 自顶而下、逐步求精 信息隐蔽 **设计模块内部细节** ### 主要内容 ##### 模块 对每个模块进行 **详细的算法设计**,用某种图形、表格和语言等工具将每个模块的处理过程的详细算法描述出来。(伪代码) ##### 数据结构设计 对 **模块内** 的数据结构进行设计。 ##### 数据库设计 对数据库进行 **物理设计**,即确定数据库的物理结构。 ##### 其他设计 - 代码设计 - 输入/输出格式设计 - **用户界面设计** ##### 编写详细设计说明书 ##### 评审 对处理过程的算法和数据库的物理结构都要评审。 # 题 概要设计文档的内容不包括( ) A、体系结构设计 B、数据库设计 C、模块内算法设计 D、逻辑数据结构设计 ### 答案 C # 题 软件详细设计阶段的主要任务不包括( ) A、数据结构设计 B、算法设计 C、模块之间的接口设计 D、数据库的物理设计 ### 答案 C 原文出处:http://malaoshi.top/show_1GWxcDRYfHS.html