第八讲结构化设计讲解.ppt

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

第八讲 结构化设计方法 基于DFD的结构化设计的基本概念 Yourdon等《Structured Design》 目标:使程序结构适应问题结构。结构化设计方法(SD) 映射关系:DFD → HIPO or SC,即从数据流图映射到软件结构图,其中数据流(信息流)的类型决定了映射的方法。 两种类型的信息流(P95) 变换流 事务流 结构化设计方法 首先研究、分析和审查数据流图。 从软件的需求规格说明中弄清数据流加工的过程,对于发现的问题及时解决。 然后根据数据流图决定问题的类型。数据处理问题典型的类型有两种:变换型和事务型。针对两种不同的类型分别进行分析处理。 由数据流图推导出系统的初始结构图。 利用一些启发式原则来改进系统的初始结构图,直到得到符合要求的结构图为止。 修改和补充数据词典。 制定测试计划。 在系统结构图中的模块 传入模块 ─ 从下属模块取得数据,经过某些处理,再将其传送给上级模块。它传送的数据流叫做逻辑输入数据流。 传出模块 ─ 从上级模块获得数据,进行某些处理,再将其传送给下属模块。它传送的数据流叫做逻辑输出数据流。 变换模块 ─ 它从上级模块取得数据,进行特定的处理,转换成其它形式,再传送回上级模块。它加工的数据流叫做变换数据流。 协调模块 ─ 对所有下属模块进行协调和管理的模块。 变换型系统结构图 变换型数据处理问题的工作过程大致分为三步,即取得数据,变换数据和给出数据。 相应于取得数据、变换数据、给出数据,变换型系统结构图由输入、中心变换和输出等三部分组成。 变换流结构 三个组成部分: (参见P95图5.8) 传入路径(afferent path) 变换中心(transform center) 传出路径(efferent path) 分别对应的三种数据流 传入流 变换流 传出流 事务型系统结构图 它接受一项事务,根据事务处理的特点和性质,选择分派一个适当的处理单元,然后给出结果。 在事务型系统结构图中,事务中心模块按所接受的事务的类型,选择某一事务处理模块执行。各事务处理模块并列。每个事务处理模块可能要调用若干个操作模块,而操作模块又可能调用若干个细节模块。 事务流结构 三个组成部分:(参见P95图5.9) 至少一条接受路径(reception path) 一个事务中心T(transaction center) 多条动作路径(action path) 事务中心的三个任务 接受输入数据(事务); 分析每个事务以确定它的类型; 选取一条动作路径(活动通路)。 变换分析 变换分析方法由以下四步组成: 重画数据流图; 区分有效(逻辑)输入、有效(逻辑)输出和中心变换部分; 进行一级分解,设计上层模块; 进行二级分解,设计输入、输出和中心变换部分的中、下层模块。 变换分析过程 复审基本系统模型 复审并精化DFD 确定DFD的类型 确定输入流和输出流,从而孤立出变换中心 完成“第一级分解” 完成“第二级分解” 对软件结构进一步精化 ① 在选择模块设计的次序时,必须对一个模块的 全部直接下 属模块都设 计完成之后, 才能转向另 一个模块的 下层模块的 设计。 ② 在设计下层模块时,应考虑模块的耦合和内聚问题,以提高初始结构图的质量。 ③ 使用“黑箱”技术: 在设计当前模块时,先把这个模块的所有下层模块定义成“黑箱”,在设计中利用它们时,暂时不考虑其内部结构和实现。在这一步定义好的“黑箱”,在下一步就可以对它们进行设计和加工。这样,又会导致更多的“黑箱”。最后,全部“黑箱”的内容和结构应完全被确定。 ④ 在模块划分时,一个模块的直接下属模块一般在5个左右。如果直接下属模块超过10个,可设立中间层次。 ⑤ 如果出现了以下情况,就停止模块的功能分解: ?当模块不能再细分为明显的子任务时; ?当分解成用户提供的模块或程序库的子程序时; ?当模块的界面是输入/输出设备传送的信息时; ?当模块不宜再分解得过小时。 实例分析 P96 例一:某企业销售管理系统的功能为: (1)接受顾客的订单,检验订单,若库存有货,进行供货处理,即修改库存,给仓库开备货单,并将订单留底;若库存不足,将缺货订单登入缺货记录。 (2)根据缺货记录进行缺货统计,将缺货通知单发给采购部门,以便采购。 (3)根据采购部门发来的进货通知单处理进货,即修改库存,并从缺货记录中取出缺货订单进行供货处理。 (4)根据留底的订单进行销售统计,打印统计表给销售经理。 分析以上功能要求,画出分层的数据流图,并将其转换成对应的软件结构。 事务分析 在很多软件应用中,存在某种作业数据流,它可以引发一个或多个处理,这些处理能够完成该作业要求的功能。这种数据流就叫做事务。 与变换分析一样,事务分析也是从分析数据流图开始,自顶向下,逐步分解,建立系统到结构图。 事务分

文档评论(0)

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

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

1亿VIP精品文档

相关文档