第四章:软件总体设计(4)此章结完

4.6结构化设计方法

结构化审计方法是一种把需求阶段得到的数据流图如何映射为软件结构图的一种基于数据流图的设计方法。

4.6.1数据流图类型

按照数据流图的性质可以将数据流图分成两种类型:变换型和事务型,一般情况下这两种类型的混合型,即一个系统可能既有变换型也含有事务型。

1、变换数据流图:基本呈线型形状的结构,由输入、变换、输出三部分组成,变换是系统的变换中心,变换输入端的数据流为系统的逻辑输入,输出端为逻辑输出,而系统输入端的数据流为物理输入,输出端为物理输出,如图4.10所示

第四章:软件总体设计(4)此章结完

2、事务型数据流图:当一个数据项到达处理某个模块时,将有多个动作之一,这就是事务型的,这种事务型的数据流图常呈辐射状,即数据沿着输入通路到达下一个处理T,这个处理根据输入数据的类型分离成一束平行的数据流,然后选择执行若干个动作序列中的其中一个来执行,通常发出多条路径的数据流中枢被称为”事物中心” ,如图4.11所示。

第四章:软件总体设计(4)此章结完

事物处理中心T要成3项基本任务,首先接受事物(输入数据) ,然后分析每个事物以确定它的类型,最后根据事物类型选取一条活动路径。

4.6.2结构化设计方法的步骤如下:

1、复审数据流图,必要时可以进行修改或精化。

2、确定数据流图类型:如果是变换型,确定逻辑输入和逻辑输出的边界,找出变换中心,映射为变换结构的顶层和第一层,如果是事物型 确定事物中心和活动路径,映射为事物结构的顶层和第一层,建立软件结构的基本框架。

3、分解上层模块、设计中下层模块结构

4、根据软件结构审计准则对软件结构求解并改进。

5、导出接口描述和全程数据结构。

6、复审 如有错转入修改完善,否则进入下一步阶段详细设计

4.6.3变换型数据流图的分析设计

当数据流图被确定为变换型时,则按照下列步骤设计

1、确定逻辑输入和逻辑输出的边界,找出变换中心

2、设计软件结构的顶层和第一层,图4.12具有边界的变换数据流图,图4.13从图4.12导出的初始结构图。

                                                     图4.12具有边界的变换数据流图

第四章:软件总体设计(4)此章结完

图4.13从图4.12导出的初始结构图。

第四章:软件总体设计(4)此章结完

 3、设计中下层模块(中下层模块的设计根据第一层的模块自顶向下,逐步细化、分别为每个模块设计出它的下属模块)

4、对初始结构图优化,根据设计原理和设计准则对该软件结构进行优化求精。
 

4.6.4事务型数据流图的分析设计

当数据流图被确定为事务型时,则采用事物分析的设计方法,从事物型数据流图导出初始的软件结构图,事物分析设计也是自顶向下逐步细化进行,从事务型数据流图到软件结构的映射与变换映射相似,区别在于事务型要对几个活动路径做调度处理步骤如下:

1、在数据流图确定事物中心,输入流和活动路径如图4.14所示

第四章:软件总体设计(4)此章结完

2、设计事物结构的顶层和第一层,即把数据流图的3部分分别映射为事物控制模块(主模块) 作为顶层的模块,它由两个功能:一是接收数据、二是根据事物类型调度响应的处理模块,事物软件结构的第一层包括 第一个接收分支和一个发送分支,如4.15图里接收分支负责接收数据,发送分支一般包含一个调度模块,如果事物类型不多,调度模块可与主模块合并。

                                                                  图4.15从4.14图导出的初始结构图

第四章:软件总体设计(4)此章结完

 

3、设计事物结构的中下层,为每一种事物处理设计一个事物处理模块。

为事物处理设计操作模块

为操作模块设计细节模块6

某些操作模块和细节模块可以被它们的调用模块共享

4、对初始的事物结构优化工作同变换结构

                                                       图4.16 销售统计分类的软件结构图

.

第四章:软件总体设计(4)此章结完

 4.6.5综合分析设计

对于这种既有变换型又有事务型两种类型混合在一起的综合问题,属于综合数据流图,对于这种系统通常采用变换分析为主,事物分析为辅的方式进行软件结构设计。

1、首先确定数据流图整体上的类型

2、然后利用变换型数据流图的分析方法,先找出主加工,把软件系统分为输入、变换、输出三部分,由此设计出软件系统的顶层和第一层。

3、最后根据数据流图各个部分的结构特点,适当地运用“变换分析”或“事物分析”就可以得出初始软件结构图的某个方案。

4.7总体设计说明书

1、前言与需求规则说明类似,这里不多少赘述

2、任务概述

2.1目标

2.2运行环境

2.3需求概述

2.4条件与限制

3、总体设计

3.1处理流程

3.2总体结构和模块外部设计(给出软件系统的结构图)

3.3功能分配:表明各项功能与程序的关系

4、接口设计

4.1外部接口:包括用户界面、软件接口与硬件接口

4.2内部接口:模块之间的接口

5、数据结构设计

5.1逻辑结构设计

5.2物理结构设计

5.3数据结构与程序的关系

6、运行设计

6.1运行模块的组合

6.2运行控制

6.3运行时间

7、出错处理设计

7.1出错输出信息

7.2出错处理对策:如设置后备、性能降级、恢复及再启动等。

8、安全保密设计

9、维护设计(说明为方便维护工作的设施如维护模块等)

本章小结

     软件总体设计的基本目的是用笔记抽象概括的方式确定系统如何完成预订的任务,总体设计阶段主要由两个小阶段组成,首先进行系统设计从数据流图出发设想完成系统功能的若干种方案,然后比较分析这些方案,最后和用户共同选定一个最佳方案,然后进行软件结构设计,结构化设计方法把软件结构主要划分为变换型和事务型两大类,并且方提出与之相应的变换型设计和事务型设计两种方法,以及综合型数据流图的设计方法。

        软件结构的模块化设计遵循抽象、信息隐蔽、分解逐步求精和模块独立性第一系列指导准则,模块独立性是一个良好设计的关键,评价标准主要是模块的耦合性和内聚。

       数据库设计是指在一个给定的应用环境下确定一个最优数据模型和处理模式,主要包括数据库逻辑结构设计、物理结构设计和数据规范化。 

        总体设计阶段产生的文档是总体设计说明书,它既是详细设计、编码的基础也是进行测试的依据之一。

来源:zhhzc

声明:本站部分文章及图片转载于互联网,内容版权归原作者所有,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2022年2月1日
下一篇 2022年2月1日

相关推荐