软件设计之总体设计

软件的需求分析阶段知道系统要“做什么”,而软件设计阶段我们明白的是“怎么做”。
软件的设计分为:总体设计&&详细设计

设计基本原理:

软件设计之总体设计

总体设计的任务和过程

总体设计分为:面向数据,面向功能,面向对象的分析
软件设计之总体设计

设计原则:独立性,规模,深,宽,入,出。作用域。接口。单入单出。预测(黑盒子)

总体设计图形工具

1.层次图:描述层次结构。
2.HIPO图:在层次图的基础上,把图中除了顶层的方框外都加上编号****基本形式:输入,处理,输出。
3.结构图(SC):表达程序结构图形的表示方法,反映程序模块间的层次关系和联系。
成分:模块,模块间调用关系,通信,辅助控制符号。
结构图的四中类型:传入,传出,变换,协调
结构图VS数据流图
数据流图反映的是程序中数据流的情况
结构图反映的是程序中控制流的情况
结构图VS程序流程图
Battle1:
结构图着重反映模块间的隶属关系,即调用关系和层次关系。
程序流程图表达程序执行的顺序及执行顺序依赖的条件。
Battle2:
结构图着眼于软件系统的总体结构,不涉及内部细节,只考虑模块作用,以及上下级模块关系

程序流程图表达执行程序的具体算法


面向数据流的设计方法

目标:给出设计软件结构的一个系统化途径。
作用:信息流映射成软件结构。
映射的方法由信息流的类型决定
    信息流的类型分为两类
 1.变换流:信息-->系统-->外换内-->加工-->内换外-->离开。
    变换型系统结构图:输入,变换中心,输出。
 2.事务流:信息-->输入-->处理-->输入类型选动作-->执行
    根据信息流类型,进行不同的分析。
       变换分析:把具有变换流特点的数据流图按预先确定的模式映射成软件结构
       事务分析:设计步骤跟变换分析类似,不同之处是数据流图到软件结构的映射方式不同。事务流映射的软件结构包括一个接收分支和一个发送分支。