第五章 總体设计.pptVIP

  1. 1、本文档共18页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第五章 總体设计

第五章 总体设计 总体设计的两项任务: 划分出组成系统的物理元素----程序、文件、数据库、人工过程和文档 设计软件的结构----确定每个程序的模块组成及模块之间的相互关系。 总体设计的过程(两个主要阶段): 系统设计:确定系统的具体实现方案。 结构设计:确定软件结构。 总体设计过程 2 软件设计的概念和原理 模块 是数据说明、可执行语句等程序对象的说明。 模块化:把程序划分成若干个模块,每个模块完成一个子功能,把这些模块集总起来组成一个整体,可以完成指定的功能,满足问题的功能。 C(P1+P2) C(P1)+C(P2) E(P1+P2) E(P1)+E(P2) 成本 模块数目 成本/模块 接口成本 最小成本区 模块化和软件成本 抽象 在抽象的最高层次使用问题环境语言,以概括的方式叙述问题的解法 在较低抽象层次采用更过程化的方法,把面向问题的术语和面向实现的 术语结合起来叙述问题的解法 在最低的抽象层次用可以直接实现的方式叙述问题的解法 逐步求精 通过逐步分解对功能的宏观陈述而开发出层次结构,直至最终得出用程序设计语言表达的程序 信息隐蔽和局部化 要求一个模块内包含的信息(过程和数据)对于不需要这些信息的模块来说是不能访问的。 局部化与信息隐蔽是密切相关的 模块独立----每个模块完成一个相对独立的子 功能,并且和其他模块之 间的关 系很简单。 设计原则:尽量使用数据耦合,少用控制耦合,限制公共环境耦合,完全不用内容耦合。 数据耦合 控制耦合 公共环境耦合 内容耦合 低 高 耦合:一个软件结构内不同模块之间互连程度的度量。 数据耦合:模块之间通过参数交换数据信息。 控制耦合:模块之间传递的参数含有控制信息。 公共环境耦合:两个或多个模块通过一个公共数据环境相互作用。 内容耦合:。。。。。。 2 软件设计的概念和原理 ---- 耦合 非直接耦合 数据耦合 特征耦合 控制耦合 5。公共环境耦合 6。内容耦合 弱耦合 中耦合 较强耦合 强耦合 模块1 模块2 模块3 模块4 数据耦合 通过简单变量交换数据 特征耦合 通过数据结构交换数据 非直接耦合 模块之间没有信息传递 模块A 模块B 模块C 模块D 模块L 模块N Flag=1? S1 S2 模块1 控制耦合 模块之间传递的是控制信息 T F 模块A 模块B 内容耦合 访问其它模块的内部数据 直接跳到其他模块内部执行 公共环境耦合 通过公共数据 环境相互作用 内聚:一个模块内各个元素彼此结合的紧密程度。 偶然内聚:一个模块完成一组任务,任务之间的关系很松散。公共语句。 逻辑内聚:若干个逻辑功能类似的任务组成一个模块。 时间内聚:若干个任务必须在同一段时间内执行。如初始化工作。 低内聚 中内聚 高内聚 过程内聚:模块内的处理元素是相关的,且必须以特定次序执行。 通信内聚:模块中所有元素都使用同一个输入数据,和/或产生同一个 输出数据。 顺序内聚:模块中所有处理元素和同一个功能密切相关,且这些处理必 须顺序执行。 功能内聚:所有处理元素属于一个整体,完成一个单一的功能。 改进软件结构提高模块独立性 模块规模应该适中 深度、宽度、扇入、扇出都应适当 模块的作用域应该在控制域之内 力争降低模块接口的复杂程度 设计单入口单出口的模块 模块的功能应该可以预测 3 启发式规则 4 图形工具 层次图和HIPO图 层次图用来描述软件结构,层次图+IPO图= HIPO图 正文加工系统 输入 输出 编辑 加标题 存储 检索 编目录 格式化 添加 删除 插入 修改 合并 列表 结构图 方框之间的箭头表示模块的调用关系,带注释的箭头表示模块间来回传递的信息:空心圆—数据,实心圆—控制信息。 结构图还可以表示模块的选择调用或循环调用 参见:P64 5 面向数据流的设计方法 概念 1) 变换流 2) 事务流 3) 设计过程 时间 输入流 输出流 变换流 事务 外部表示 内部表示 信息 T 事务中心 活动通路 事务中心 T 完成下述任务: 接受输入数据(事务) 分析每个事务以确定它的类型 根据事务类型选取一条活动通路 5 面向数据流的设计方法(续) 精化数据流图 事务分析 变换分析 5 面向数据流的设计方法 变换分析: 汽车数字仪表板功能: 1) 通过A/D 转换实现传感器和微处理器接口, 2) 在发光二极管面板上显示数据, 3) 指示每小时英里数(mph)

文档评论(0)

1234554321 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档