【软件工程教案】概要设计总体设计.ppt

【软件工程教案】概要设计总体设计.ppt

  1. 1、本文档共89页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
§4.4概要设计(总体设计) 概要设计确定: 软件系统的结构 各模块功能及模块间联系(接口) 表示软件结构的图形工具 结构图 层次图和HIPO图 概要设计的任务与步骤 概要设计的过程 : (1)设想可能的方案 (2)选取合理的方案 (3)推荐最佳方案 (4)功能分解 (5)设计软件结构 (6)数据库设计 (7)制定测试计划 (8)编写文档 (9)审查与复审 4.4.1结构图(SC Structure Chart) SD方法在概要设计中的主要表达工具 约定: SC中的四种模块 SC中的选择调用 SC中的循环调用 结构图(SC)举例 酒店管理信息系统功能结构图 大型零售商场管理信息系统功能结构图 4.4.2 面向数据流的设计方法 (结构化设计方法SD) 1. 面向数据流设计方法的基本概念 SD以数据流图为基础,它定义了把DFD变换成软件结构的不同映射方法 系统结构特征可归纳为两种典型形式: 变换型结构 事务型结构 数据流图可分为两种类型: 变换型数据流 事务型数据流 基本模型 特征 变换型数据流举例 变换流示意图 事务型数据流图举例 大型系统DFD中,变换型和事务型 结构往往共存: 2. 面向数据流设计方法的设计步骤 (1)精化DFD (2)确定DFD类型 (3)把DFD映射到系统模块结构设计 出模块结构的上层 (4)基于DFD逐步分解高层模块设计 出下层模块 (5)根据模块独立性原理,精化模 块结构 (6)模块接口描述 面向数据流方法的设计过程 SD方法的两种映射过渡方法 初始的SC (1) 变换分析设计方法 步骤: (1)区分传入、变换中心、 传出部分,在 DFD 上 标明分界线 变换分析设计方法步骤 (2)第一级分解(建立初始SC框架) 设计顶层和第一层模块 第一级分解后的SC 第一级分解后的SC(另一种画法) 变换分析设计方法步骤 (3)第二级分解(分解SC各分支) 自顶向下分解,设计出每个分支的中、下层模块 传入分支的分解 (1) 传入分支的分解 (2) 传出分支的分解 中心加工分支的分解 (2) 事务分析设计方法 任何情况下都可使用变换分析方法设计软件结构,但如数据流具有明显的事务特点时 (有一个明显的事务中心),以采用事务分析方法为宜。 事务分析设计方法步骤: (1)在DFD上确定事务中心、接收部 分和发送部分。 (2)画出SC框架,把DFD上的三部分 分别映射为事务控制模块、接收 模块和动作发送模块。 (3)分解细化接收分支和发送分支, 完成初始SC。 用户命令交互子系统DFD 初始的SC 事务分析的映射方法 用户命令交互子系统初始的SC 用户命令交互子系统DFD 用户命令交互子系统的SC 用户命令交互子系统DFD 用户命令交互子系统的SC 事务流设计举例 事务流设计举例 动作分支的典型结构 事务流设计举例 事务型数据流图举例 事务流设计举例 (另一种画法) 混合流设计举例 混合流设计举例 混合流设计举例 SafeHomede的第0层DFD SafeHomede的第1层DFD 监控传感器的第2层DFD 4.4.3 体系结构设计优化 将初始SC根据模块独立性原 则进行精化,对模块进行合并、分 解修改、调整,得到高内聚、低 耦合模块,得到易于实现、易于 测试和易于维护的软件结构,产 生设计文档的最终SC。 改进软件结构设计的指导原则 (软件结构设计的启发式规则) (1)模块功能的完善化 (2)消除重复功能 (3)将模块的影响限制在模块的控制范围内 (4)深度、宽度、扇出和扇入适中 (5)模块大小适中 (6)降低模块接口的复杂性 (7)模块功能可预测 (8)避免模块的病态连接 (9)根据设计约束和可移植性要对软件打包 (1) 模块功能的完善化 完整的模块应包括三部分: (1)执行规定功能部分 (2)出错处理部分 (3)需返回给调用者数据时, 返回是否正确结束标志。 (2)消除重复功能 (4) 减少高扇出争取高扇入 高扇出的模块结构举例: 增加中间层降低扇出 (5) 模块大小适中 模块过大:可理解程度下降 模块过小:开销大于有效操作 系统接口复杂 (6)降低模块接口的复杂性 接口传递信息应简单且和模块功能一致。 (7) 模块功能可预测 模块看成黑盒子,相同输入产生 相同输出,其功能为可预测的。 模块带有内部状态其功能可能是 不可预测的。难理解、难测试、 难维护。 防止模块功能过分局限 功能单一的模块具有高内聚。 但如任意限制局部数据结构的 大小,过分限制控制流中可做的选 择或外部接口的模式,模块功能就 过分局限,使用范围过分狭窄

文档评论(0)

精品资料 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档