前言:
从工程管理的角度看,软件设计分为两部分:概要设计和详细设计,接下来就来总结下这两部分的内容;
内容:
1、概要设计
概要设计:就是设计软件的结构,包括组成模块,模块的层次结构,模块的调用关系,每个模块的功能等。此外还要设计该项目的应用系统的总体数据结构和数据库结构,即应用系统要存储什么数据,这些数据是什么样的结构,它们之间有什么关系
- 软件设计过程
0.1 规范
0.2 软件系统结构的总体设计
0.3 处理方式设计
0.4 数据结构设计,
0.5 靠性设计
0.6 编写概要设计阶段的文档
0.7 概要设计评审 “`
- 软件设计基础
1.1 自顶向下,逐步细化:对各个层次的过程细节和数据细节逐层细化
1.2 软件结构:包括程序的模块结构和数据的结构
1.3 程序结构:树状结构(直观清晰,层次分明),
网状结构(看不出谁调用谁)
1.4 结构图:反应程序中模块之间的层次调用关系和联系
模块独立性
抽象性:划分模块化的主要
2.1 抽象层次1:用问题所处环境的属于描述软件(功能模块打包)
2.2 抽象层次2:任务需求描述
2.3 抽象层次3:程序过程
两个准则:高内聚 低耦合
模块分解
> 目的是将系统“分而治之”,以降低问题的复杂性,是软件结构清晰,易阅读、易理解、易于测试和调试,因而也有助于提高软件的可靠性。
> 选择分解的最佳模块数,可以在降低问题复杂度的同时获得较低的成本
2、详细设计
详细设计:就是为每个模块完成的功能进行具体的描述,要把功能描述转变为精确的、结构化的过程描述
- 常用描述方式
流程图(程序流程图)、N-S图、PAD图(IPO图的原版)
小结:
学习软工视频,掌握基础知识,文档中实践,总结中继续;