7.5 系统设计 (5课时)
本课核心知识点整理
系统设计把“做什么”变成“怎么做”
需求分析给出系统要解决的问题和需求规格;系统设计把这些需求转化为软件结构、模块、接口、数据和处理过程。课堂中“软件设计”和“系统设计”在本章基本可以等同理解,因为现代项目往往是信息系统而不是单一小程序。
五课时主线
| 小节 | 核心问题 | 高频考点 |
|---|---|---|
| 7.5.1 | 系统设计做哪些任务 | 概要设计 vs 详细设计 |
| 7.5.2 | 设计活动如何分类 | 架构、数据、接口、过程设计 |
| 7.5.3 | 模块怎么划分才好 | 高内聚、低耦合、扇入扇出 |
| 7.5.4 | 界面怎么让用户好用 | 黄金三原则 |
| 7.5.5 | 架构风格怎么分类 | 数据流、调用返回、独立构件、虚拟机、仓库 |
概要设计和详细设计是主轴
| 设计层次 | 主要任务 | 关键词 |
|---|---|---|
| 概要设计 | 划分子系统和模块,分配功能,确定全局结构和模块关系 | 总体结构、模块划分、架构、全局数据 |
| 详细设计 | 设计模块内部路径、算法、数据结构和内部接口 | 模块内部、算法、局部数据结构、过程逻辑 |
可以用“房屋设计”理解:概要设计像户型图,决定主卧、客厅、厨房的位置和关系;详细设计像装修施工图,决定每个空间内部怎么布置、线路如何走。
本节复习策略
系统设计不是第 7 章最密集的分值区,但模块设计中的内聚和耦合非常重要。复习优先级:
| 优先级 | 内容 |
|---|---|
| 1 | 内聚、耦合的定义、排序和例子 |
| 1 | 概要设计与详细设计任务区分 |
| 2 | 人机界面黄金三原则 |
| 2 | 架构风格分类和关键词 |
| 3 | PDL、PAD、程序流程图、N-S 图等设计工具名称 |
例题
划分子系统和模块、分配功能、确定总体结构,属于:
良好的模块设计应追求:
自查要点
- 系统设计和需求分析分别回答什么问题?
- 概要设计和详细设计的边界是什么?
- 为什么模块设计是系统设计里的重点?
- 人机界面黄金三原则是哪三条?
- 架构设计为什么属于全局性设计?