第3章软件设计案例分析.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第 三 章 3.2 软件体系结构设计 内容耦合: A直接引用B的数据,如goto语句 低内聚 偶然内聚: 为了节约空间,将毫无关系(或联系不多)的各成分放在一个模块中。不易理解,不易修改。 逻辑内聚:一个模块完成的任务在逻辑上相似。如一个模块主要产生各种类型的输出。 瞬时内聚:模块中包含的内容必须在同一段时间内执行。如各种初始化工作。 中内聚 通信内聚:模块中所有元素使用共同的输入数据,产生共同的输出数据。 高内聚 顺序内聚:模块中某个成分的输出是另一部分的输入。 功能内聚:模块中所有处理元素属于一个整体,完成一个单一功能。 3.4 结构化设计方法 二、实例:银行贷款文件管理(MFUP) 实例:银行贷款文件管理(MFUP) 需求分析结果-- DFD 图 将DFD图转换为模块结构图 PDL (ProcedureDesign Language) PDL是一种用于描述功能模块的算法设计和加工细节的语言,称为设计程序用语言,它是一种伪码 伪码的语法规则分“外语法”和“内语法” PDL具有严格的关键字外语法,用于定义控制结构和数据结构 PDL具有灵活自由的内语法,实际操作和条件的可使用自然语言的词汇 要求对贷款文件进行修改,修改信息由卡片输入,卡片上的修改信息格式如下: 1~5位 6~9位 10位起 账号 空 ×× 修改值1* ×× 修改值2* …..** (序号) 分析: 贷款文件的记录格式(如前表) 修改记录(卡片)格式 3. 需求分析结果--DFD 图,是一种混合的 DFD 图。 实例:银行贷款文件管理 (MFUP) 修改记录 写记录 卡片 编辑卡片 检查顺序 检查次序 账号相等 错误 顺序卡片 修改信息 旧记录 顺序记录 要修改的记录 不修改的记录 已修改的记录 新记录 修改分类 抽出修改 顺序卡片 修改信息 2 3 4 5 6 7 9 编辑卡片加工分解 主加工是?? 报告 报告 修改信息 顺序记录 新记录 贷款文件 管理系统 取顺序 记录 修改 记录 打印 报告 打印 记录 比较 账号 取修改 信息 读旧 记录 检查 顺序 取 卡片 编辑 卡片 读卡片 检查顺序 卡片 卡片 顺序 卡片 旧记录 旧记录 顺序记录 顺序记录 顺序卡片 顺序卡片 已修改 “编辑卡片”应继续向下分解,是典型的“事务处理”型的DFD图。 写 记录 修改记录 写记录 卡片 编辑卡片 检查顺序 检查次序 账号相等 错误 顺序卡片 修改信息 旧记录 顺序记录 要修改的记录 不修改的记录 已修改的记录 新记录 报告 已编辑卡片 按照“降低块间联系,提高块内联系”的设计总则进行修改,完善系统的模块图,写出模块的功能说明。 功能模块的组成: 执行某项任务的部分 出错处理部分 返回结束标志 具体从以下方面改进: 1)尽可能建立功能模块  功能模块具有最强的内聚性,应满足信息屏蔽原则:一个模块内所包含的信息(过程和数据)对不需要这些信息的模块是不能访问的(黑盒)。 三、模块结构图的改进 2)消除重复功能 若两模块含有重复的部分,应设法将重复的功能消去。 (a) X Y Q’1 Q’2 Y Q’2 Q X Q (b) (c) (d) Q 重复部分 Y Y X Q1 Y Q2 X X 3)模块的作用范围应与控制范围 控制范围 — 结构方面的特点,包括模块及其所有下属模块。 作用范围 — 判断所涉及到的模块,是从功能特点考虑的。 SD方法认为:当作用范围为控制范围的子集时,才能获得较低的块间联系。 如图(b)中的设计,判定的作用范围恰好在判定所在模块的下一层。 TOP X T B A B1 B2 图(b)中模块TOP 的控制范围是: 模块 TOP、X、T、B、A、B1、B2; 模块B 的控制范围与作用范围相同,均为: 模块B、A、B1、B2 图(a)中模块A的控制范围: A、B、C、D、G、E、F 如果模块F的判定涉及到模块B、E、F。 则F的的作用范围:B、E、F A B C D G E F F B E 答案 显然,图(a)不满足作用范围应与控制范围的原则,模块F的作用范围不在控制范围之内。 图(b)中模块TOP和图(c)中模块B虽然满足上述原则,但其作用范围所涉及到的模块不是直接的。 图(d)的模块设计最合理。 控制范围与作用范围举例 TOP A B C D E F (a) ◆ TOP A B C D E F (d) ◆ TOP A B C D E F (b) ◆ TOP A B C D E F (c) ◆ 比较(a)、(b)、(c)、(d)4种设计方案的优劣! 4)模块的大小适当 模块大小指其篇幅,一般模块大小为

文档评论(0)

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

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

1亿VIP精品文档

相关文档