第4章 总体设计.ppt

  1. 1、本文档共128页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第4章总体设计重点讲义

济南大学信息学院 冯志全 总体设计 总体设计的核心目标 确定软件结构 软件系统的结构--程序结构 输入输出数据结构--各模块功能及模块间联系(接口) 产生软件结构的一种实用方法 面向数据流的设计方法 面向数据流的设计方法 面向数据流的设计是一种基于数据流图的软件结构设计方法。 结构化分析(SA) 结构化设计(SD) DFD图 ? SC图 ? HIPO图 (系统逻辑模型) (软件结构) 面向数据流的设计方法 结构图(SC图) 结构图的符号如下: 模块: 调用: 面向数据流的设计方法 数据: 面向数据流的设计方法 选择调用: 表示: if 条件成立, if 情况1成立,then调B; then 调用B模块 if 情况2成立,then调C; if 情况3成立,then调D; 面向数据流的设计方法 循环调用: 基本模型 图例 特征 变换流之基本模式 事务流之基本模式 产生软件结构实例1 产生软件结构实例2 例:汽车仪表板 仪表板由微机控制,控制程序写在EPROM内。仪表板有5种操作,对应5个功能键。这5种操作是: (1)初始化发动机的点火序列; (2)启动雷达探测装置; (3)显示发动机状态(油量、温度、速度、里程); (4)对“行程计算机”初始化; (5)作废上次按下的功能键。 产生软件结构实例2 其中, (1)点火操作,通过输入数字组成的口令点火。口令不正确时,重新输入,但超过限定次数时自动封锁输入提示。 (2)雷达探测装置,根据X-K频段检测信号计算汽车与前方障碍物之间的距离,当距离超过限定值时,报警并显示。 实例3 一级结构 学生作品展 如有雷同 纯属巧合 学生 作品 鉴赏评价 作品1 作品2 作品3 作品4 作品5 作品6 作品7 软件结构深层次问题 综合型DFD图的软件结构设计(1) 综合型DFD图的软件结构设计(2) 产生软件结构的步骤 表示软件结构的 其它几种工具 层次图 HIPO图 层次图和HIPO图 IBM公司发明的HIPO图: 层次图 + 输入 / 处理 /输出图 (H图) (IPO图) (Hierachy Input Process Output) 带编号的层次图(H图)举例 HIPO图举例 H图中每一方框(模块)均有一张IPO图对应 航线调度系统HIPO图举例 H图: HIPO图举例 改进的IPO图格式 酒店管理信息系统功能结构图 分析与设计的关系 主要文档 概要设计说明书 数据库设计说明书 用户手册 制定初步的测试计划 总体设计的基本原则 模块化 抽象与逐步求精 信息隐藏 模块的独立性 结构设计原则 总体设计的基本原则 模块化 设: C(p)——表示问题x的复杂程度 E(p)——表示解决问题x所需的 难度 规律1:如果 有p1和p2两个问题 且 C(p1) C(p2) 则 E(P1)E(p2) 总体设计的基本原则 规律2:如果p可分解成p1和p2 则 C(p)=C(p1+p2) C(p1)+C(p2) E(p)=E(p1+p2) E(p1)+E(p2) 总体设计的基本原则 抽象与逐步求精 从一些事物中抽取其本质的共同的特性,忽略其非本质的细节的差异。 注意: 抽象的角度和层次。 按应用领域实体的复杂性和组成来分层 按类型分层 例:一个图形处理工具软件 第一层:采用面向问题的术语描述解决方案 画笔、橡皮、喷枪、画板、油漆桶、尺子、…… 总体设计的基本原则 第二层:采用面向实现的术语描述解决方案 用户界面和控制机制、消隐处理、滤波、压缩、计算机图形显示机制、外设控制、…… …… 第m层:采用能够直接实现的术语描述解决方案 Do while、if、…… 总体设计的基本原则 信息隐藏 包含在模块内的信息,对于其他不需要这些信息的模块是不可访问的。 例如操作系统: (1)面向过程的解决思想 总体设计的基本原则 (2)面向功能的思想 设置管程——专门负责缓冲区的资源的管理。(功能:缓冲区的分配和释放。) 总体设计的基本原则 模块的独立性 模块独立性是通过开发具有单一功能和与其它模块没有过多交互作用的模块来达到的。 模块的独立性可由两个定量的准则来度量:内聚性和耦合性。 内聚性——模块内部各元素之间联系的强度; 耦合性——模块之间联系的强度。 (1) 无直接耦合 两个模块没有直接关系(模块1和模块2),模块独立性最强。 (2) 数据耦合

文档评论(0)

dajuhyy + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档