软考-软件设计师:软件工程-系统设计:概要设计和详细设计

系统设计

把软件 做什么 的逻辑模型转换成 怎么做 的物理模型,即着手实现软件系统的需求

目的

为系统制定蓝图,在各种技术和实施方法中权衡利弊,精心设计,合理地使用各种资源,最终勾画出新系统的详细设计方案。

结果

一系列系统设计文档

设计方法分类

常用的设计方法有以下两种:

  • 面向 数据流 的结构化设计方法(SD)。
  • 面向对象 的分析方法(OOD)。

步骤

  • 概要设计
  • 详细设计

概要设计

特点

  • 抽象化
  • 自顶而下、逐步求精
  • 信息隐蔽
  • 模块独立 (高内聚、低耦合)

注意: 模块与模块之间的关系,不需要设计模块内详细内容

主要内容

包括:

  • 设计软件系统总体结构:划分模块
  • 数据结构设计
  • 数据库设计,如:E-R模型
  • 编写概要设计文档:
    • 有概要设计说明书
    • 数据库设计说明书
    • 用户手册
    • 修订测试计划
  • 评审

设计软件系统总体结构 - 模块划分

采用某种设计方法,将一个复杂的系统按功能划分成模块;

  • 确定每个 模块的功能;
  • 确定 模块之间的 调用关系;
  • 确定模块之间的 接口,即模块之间 传递的信息;
  • 评价模块结构的质量

注意:不需要设计 模块内部

数据结构设计

使用抽象的数据模型,细化数据组成、操作约束、数据之间的关系

详细设计阶段规定具体的实现细节

数据库设计

  • 概念设计:E-R模型
  • 逻辑设计:结合DBMS建立数据库逻辑结构
  • 物理设计:针对 DBMS 、物理环境进行设计,如:数据项存储要求、存取方法、索引的建立等

编写概要设计文档

主要有:

  • 概要设计说明书
  • 数据库设计说明书
  • 用户手册
  • 修订测试计划

评审

对设计部分进行一一评审

详细设计

特点

抽象化
自顶而下、逐步求精
信息隐蔽
设计模块内部细节

主要内容

  • 模块
  • 数据结构设计
  • 数据库设计
  • 其他设计
  • 编写详细设计说明书
  • 评审

模块

对每个模块进行 详细的算法设计,用某种图形、表格和语言等工具将每个模块的处理过程的详细算法描述出来。(伪代码)

数据结构设计

对 模块内 的数据结构进行设计。

数据库设计

对数据库进行 物理设计,即确定数据库的物理结构。

其他设计

  • 代码设计
  • 输入/输出格式设计
  • 用户界面设计

编写详细设计说明书

评审

对处理过程的算法和数据库的物理结构都要评审。

题

概要设计文档的内容不包括( )
A、体系结构设计
B、数据库设计
C、模块内算法设计
D、逻辑数据结构设计

答案

C

题

软件详细设计阶段的主要任务不包括( )
A、数据结构设计
B、算法设计
C、模块之间的接口设计
D、数据库的物理设计

答案

C


原文出处:/show_1GWxcDRYfHS.html