软件工程案例开发与实践第5章软件概要设计

上传人:工**** 文档编号:592830921 上传时间:2024-09-22 格式:PPT 页数:23 大小:1.15MB
返回 下载 相关 举报
软件工程案例开发与实践第5章软件概要设计_第1页
第1页 / 共23页
软件工程案例开发与实践第5章软件概要设计_第2页
第2页 / 共23页
软件工程案例开发与实践第5章软件概要设计_第3页
第3页 / 共23页
软件工程案例开发与实践第5章软件概要设计_第4页
第4页 / 共23页
软件工程案例开发与实践第5章软件概要设计_第5页
第5页 / 共23页
点击查看更多>>
资源描述

《软件工程案例开发与实践第5章软件概要设计》由会员分享,可在线阅读,更多相关《软件工程案例开发与实践第5章软件概要设计(23页珍藏版)》请在金锄头文库上搜索。

1、第第5章章 软件概要设计软件概要设计5.1 概要设计综述概要设计综述5.1.1 概要设计的任务概要设计的任务在需求分析阶段,系统要解决的问题是:在需求分析阶段,系统要解决的问题是:系统系统“做什么做什么”。 在概要设计阶段,系统要解决的问题是:在概要设计阶段,系统要解决的问题是:系统系统“怎么做怎么做”。 即将软件即将软件“做什么做什么”的逻辑模型变换为的逻辑模型变换为“怎么做怎么做”的物理模型,其任务是根据需求的物理模型,其任务是根据需求分析阶段得到的逻辑模型来设计系统的物理分析阶段得到的逻辑模型来设计系统的物理模型。模型。结构化概要设计的 过程:(1)确定体系结构;)确定体系结构;(2)进

2、行模块划分;)进行模块划分;(3)确定系统接口;)确定系统接口;(4)制定设计规范;)制定设计规范;(5)确定用户主界面;)确定用户主界面;(6)确定主要的算法;)确定主要的算法;(7)异常处理设计;)异常处理设计;(8)书写概要设计说明书)书写概要设计说明书(1 1)模块化。)模块化。 (2 2)自顶向下逐步求精)自顶向下逐步求精(3 3)模块的独立性)模块的独立性(4 4)信息隐蔽)信息隐蔽5.1.3 概要设计原则概要设计原则5.2.1 IPO 图图5.2 概要设计工具概要设计工具输入数据处理过程输出结果输入处理输出 一个一个IPOIPO图仅能够描述单个处理功能的输入数据、数图仅能够描述单

3、个处理功能的输入数据、数据处理和输出数据之间的关系,对于整个软件系统的总据处理和输出数据之间的关系,对于整个软件系统的总体结构不能进行清晰的描述。因此在软件设计中,我们体结构不能进行清晰的描述。因此在软件设计中,我们通常将通常将HIPOHIPO图和图和IPOIPO图相结合,利用这两个工具同共来表图相结合,利用这两个工具同共来表达系统的总体结构和模块的处理功能。达系统的总体结构和模块的处理功能。 HIPOHIPO图称为层次结构图,即分层的图称为层次结构图,即分层的IPOIPO图,是系统图,是系统设计的描述工具,是设计的描述工具,是IBMIBM公司于公司于7070年代中期在层次结构图年代中期在层次

4、结构图的基础上推出的一种描述系统结构和模块内部处理功能的基础上推出的一种描述系统结构和模块内部处理功能的工具。的工具。HIPOHIPO图由以下两部分组成:图由以下两部分组成:(1 1)层次结构图:描述整个系统的设计结以及各类模块)层次结构图:描述整个系统的设计结以及各类模块之间的关系。之间的关系。 (2 2)IPOIPO图:描述某个特定模块内部的处理过程和输入图:描述某个特定模块内部的处理过程和输入/ /输出关系。输出关系。检 索2 题名检索1 ISBN号检索3 作者检索图5-5 HIPO图图5-6 IPO图 5.2.2 模块结构图模块结构图模块名模块:用矩形框表示,并用模块的名字标记。调用关

5、系:箭头从调用模块指被调用模块。被调用模块执行完成后,控制又返回到调用模块。模块间的数据传递:用尾端带有空心圆的短箭头表示数据信息。模块间的控制信息传递:用尾端带有实心圆短箭头表示控制信息。循环调用下层模块:选择调用下层模块:数据存储:模块结构图的三种基本结构模块结构图的三种基本结构 模块之间的调用关系主要有三种:直接调用、选择调用和循环调用。 模块结构图中的模块类型模块结构图中的模块类型(1) (1) 传入模块传入模块 传入模块从下属模块取得数据传入模块从下属模块取得数据, , 经过某些处理经过某些处理, , 再将再将其传送给上级模块。见图其传送给上级模块。见图6-146-14(a a)。变

6、换型数据流程图)。变换型数据流程图的输入模块以及事务型数据流图中的接受事务模块均属的输入模块以及事务型数据流图中的接受事务模块均属于此类模块。于此类模块。(2) (2) 传出模块传出模块 传出模块从上级模块中获取数据传出模块从上级模块中获取数据, , 进行某些处理进行某些处理, , 再将其传送给下属模块。见图再将其传送给下属模块。见图6-146-14(b b)。如变换型数据)。如变换型数据流图及事务型数据流图中的输出模块均属于此类模块。流图及事务型数据流图中的输出模块均属于此类模块。(3) (3) 变换模块变换模块 也叫加工模块也叫加工模块, , 它从上级模块取得数据它从上级模块取得数据, ,

7、 进行特定进行特定的处理的处理, , 转换成其他形式转换成其他形式, , 再传送回上级模块。见图再传送回上级模块。见图6.146.14(c c)。如事务型数据流图中的调度模块就属于此类)。如事务型数据流图中的调度模块就属于此类模块。模块。(4) (4) 协调模块协调模块 对所有的下属模块进行协调和管理的模块对所有的下属模块进行协调和管理的模块, , 在一在一个较好的模块结构图中个较好的模块结构图中, , 该模块应在较高层出现。见图该模块应在较高层出现。见图6-146-14(d d)。如变换型数据流图的总控模块以及事务型数)。如变换型数据流图的总控模块以及事务型数据流图中的事务中心块均属于此类模

8、块。据流图中的事务中心块均属于此类模块。 模块间调用的规则模块间调用的规则(1 1)每个模块有自身的任务,只有接收到上级)每个模块有自身的任务,只有接收到上级模块的调用命令时才能执行。模块的调用命令时才能执行。(2 2)模块之间的通信只限于其直接上、下级模)模块之间的通信只限于其直接上、下级模块,任何模块不能直接与其他上下级模块或同级块,任何模块不能直接与其他上下级模块或同级模块发生通信联系。模块发生通信联系。(3 3)若有某模块要与非直接上、下级的其他模)若有某模块要与非直接上、下级的其他模块发生通信联系,必须通过其上下级模块进行传块发生通信联系,必须通过其上下级模块进行传递。递。(4 4)

9、模块调用顺序为自上而下。)模块调用顺序为自上而下。 模块结构图的示例模块结构图的示例 模块结构图的改进模块结构图的改进 (1 1)完善模块的功能)完善模块的功能(2 2)提高模块独立性)提高模块独立性 (3) 3) 合理确定模块结构的规模,尽可能减少高扇出的结合理确定模块结构的规模,尽可能减少高扇出的结构,随深度增加而增大扇入。构,随深度增加而增大扇入。 模块的规模包括两个方面:模块结构的深度和模块结模块的规模包括两个方面:模块结构的深度和模块结构的宽度。构的宽度。 深度表示模块结构中的层数深度表示模块结构中的层数, , 它往往能粗略地标志一它往往能粗略地标志一个系统的大小和复杂程度。模块结构

10、图一般不要超过个系统的大小和复杂程度。模块结构图一般不要超过7 7层。层。 宽度是模块结构图内同一个层次上的模块总数的最大宽度是模块结构图内同一个层次上的模块总数的最大值。一般来说,宽度越大系统越复杂。值。一般来说,宽度越大系统越复杂。 一个模块的扇入指直接调用该模块的上级模块的数目。扇入越一个模块的扇入指直接调用该模块的上级模块的数目。扇入越大则共享该模块的上级模块数目越多。大则共享该模块的上级模块数目越多。 如果一个模块的扇入数过大,如果一个模块的扇入数过大,例如超过例如超过8 8,而这个模块又不是公用模块,说明该模块包含多个功能,而这个模块又不是公用模块,说明该模块包含多个功能,这时应对

11、它进行功能分解。这时应对它进行功能分解。(4 4)模块的作用范围应该在控制范围之内)模块的作用范围应该在控制范围之内 (5) 5) 模块大小应该适中模块大小应该适中(6) 6) 设计单入口单出口的模块设计单入口单出口的模块单入口单出口的模块可以降低模块接口的复杂程度,单入口单出口的模块可以降低模块接口的复杂程度,设计的软件也是易理解、易维护的,因此不要使模块间设计的软件也是易理解、易维护的,因此不要使模块间出现内容藕合。出现内容藕合。(7) 7) 模块功能应该能够预测,同时要防止模块功能过于模块功能应该能够预测,同时要防止模块功能过于受局限。受局限。 5.3 结构化设计方法结构化设计方法 5.

12、3.1 事务设计事务设计1. 事务流 2. 将具有事物流的数据流程图转换成模块结构的步骤(1)在数据流程图中识别事务源,判断数据流程图是否具有事务型特征。 (2)对每一事务建立一个事务处理模块,得出程序结构图。 (3)对每一种类型的事务,分别建立专门的事务模块,对它进行独立的处理。确定出每一种事务以及它所需要的处理动作。(4)合并具有相同处理功能的模块。(5)必要时对动作模块进一步分解。例如,图5-12(a)为某账务处理系统的一级数据流程图,可以看出账务处理包含3类事务,即凭证管理、账务管理和报表管理,我们按事务设计的方法可将其转换为如图5-12(b)所示的模块结构图。账务处理系统报表管理账务

13、管理凭证管理5.3.2 变换设计变换设计1. 变换流2将具有变换流的数据流程图转换成模块结构的步骤(1)仔细分析数据流程图,识别出系统的输入数据、变换中心和输出数据。(2)设计模块结构图的顶层和第一层(3)设计中、下层模块 例: 图5-15(a)为某账务处理系统中的二级细化的数据流程图,是系统中“凭证管理模块”的细化。由图可见“凭证管理模块”有4个基本处理功能,即输入、汇总、审核、打印。其中输入功能分属第一类输入功能;汇总、审核功能分属第二类执行功能;打印功能分属第三类输出功能。据此可以画出“凭证管理”的模块结构图,见图5-15(b)。图5-24(a)凭证管理打印凭证汇总凭证审核凭证输入凭证图5-24(b)5.4 概要设计说明书格式概要设计说明书格式1 1引言引言2 2编写目的编写目的 3 3 项目背景项目背景4 4任务概述任务概述5 5 定义定义6 6 运行环境运行环境7 7 需求概述需求概述8 8 条件与限制;条件与限制;9 9 总体设计总体设计10 10 接口设计接口设计 11 11 数据结构设计数据结构设计 12 12 运行设计运行设计 1313出错处理设计出错处理设计 14 14 安全保密设计安全保密设计15 15 参考资料参考资料 再见!再见!

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 医学/心理学 > 基础医学

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号