软件工程中关于软件设计这部分自己依据自己的理解,主要就是概要设计和详细设计。
Ø 概要设计
1) 概要设计就是设计软件的结构,包括组成模块,模块的层次结构,模块的调用关系,每个模块的功能等等。同时,还要设计该项目的应用系统的总体数据结构和数据库结构,即应用系统要存储什么数据,这些数据是什么样的结构,它们之间有什么关系。
2) 概要设计阶段通常得到软件结构图
软件结构图:软件结构包括构成系统的设计元素的描述、设计元素之间的交互、设计元素的组合模式以及在这些模式中的约束。一个系统由一组构件以及它们之间的交互关系组成,这种系统本身又可以成为一个更大的系统的组成元素。软件结构图也就是为了反映软件系统中组件之间相互关系和约束的体系结构设计图,称为软件体系结构图更为合适,一般通过分层次或分时间段等方式说明体系结构的各个组成部分的组合关系。
在结构化设计方法中,软件结构图主要分为变换型软件结构图和事务型软件结构图两种。
Ø 详细设计
1) 详细设计阶段就是为每个模块完成的功能进行具体的描述,要把功能描述转变为精确的、结构化的过程描述。
2) 详细设计阶段常用的描述方式有:流程图、N-S图、PAD图、伪代码等
Ø 程序设计
程序设计包括面向对象和面向过程的两种程序设计。
u 面向过程的程序设计
面向过程的结构化程序设计分三种基本结构:顺序结构、选择结构、循环结构
u 面向对象的程序设计
² 面向对象的基本概念:具有对象、类、封装、继承、消息、多态性等特征。
² 优点
1) 符合人们认识事物的规律
2) 改善了程序的可读性
3) 是人机交互更加贴近自然语
现在总结如下图,点击见大图: