-软件设计--基础.pptVIP

  1. 1、本文档共63页,可阅读全部内容。
  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文档。上传文档
查看更多
-软件设计--基础

(3) 时间性内聚(Temporal Cohesion) 几个功能经常在同一时间段内完成. 例:将几个模块的初始化部分放在一个公共模块中执行.该模块的初值和文件要涉及到多个模块,加大了模块间的耦合度. Time to +2x Time to + x Time to Temporal Related by time 时间内聚和逻辑内聚模块都很难修改,因为这种模块同时要完成几个不同的功能,当修改其中一个功能时,必须检查所有的模块,修改与该功能相关的部分. 内聚 (Cohesion) (4) 过程内聚(Procedural Cohesion) 一个模块内的处理元素是相关的,必须按特定顺序执行. 一个功能通常是按一个确定的顺序执行的. 当一个模块中的几个功能被分组的时候,就保证能按这个顺序执行. 内聚 (Cohesion) 读 入 成绩单 审 查 成绩单 读入并审 查 成 绩 单 统计 成 绩 打 印 成 绩 统计并打印 成 绩 单 (5) 通信内聚(Communicational Cohesion) 模块中的所有功能都对相同的数据集合进行操作,产生相同的结果. 通讯内聚经常破坏设计的模块化和功能的独立性. Function B Function B Function A Communicational Access same data Data 内聚 (Cohesion) 读文件 合并 修改 文件 计算 B 计算 A 打印检 验结果 读卡 片文件 新 文 件 加工记录 使用A/B数 据 A结 果 B 结 果 A/B 数 据 A/B卡 片 文件 (6)功能内聚(Functional Cohesion) 模块中所有处理元素都是为了完成同一个单一功能,所有必需的元素都包含在该模块中. Function A-part3 Function A-part2 Function A-part1 Functional Sequential with complete,related functional 内聚 (Cohesion) (7)信息性内聚 如果模块有很多操作,每个操作都有自己的入口点和独立的代码,并且都对相同的数据结构执行操作,那么这个模块具有信息性内聚。 典型的如对象。 算多个地点的 每日平均温度 初始化求和 并打开文件 创建新的 温度记录 存储温 度记录 关闭文件并 打印平均温度 功能性内聚 偶然内聚 偶然内聚 功能性内聚 读取地点、 时间和温度 存储特定 地点温度 编辑地点、时间 或温度字段 功能性内聚 功能性内聚 功能性内聚 逻辑内聚 每个内聚的模块互联 各种内聚比较: 偶然内聚、逻辑内聚和时间内聚:低内聚 过程内聚和通信内聚:中等内聚 功能内聚和信息性内聚:高内聚 内聚类型 Coincidental Logical Temporal Procedural Communicational Functional Informational 内聚 (Cohesion) 在面向对象的编程中,也存在大量类似的情况,解决的方法如信息隐藏 * * 7 制定测试计划 8 概要设计评审 可追溯性 接口 风险 实用性 可维护性 可测试性 技术清晰度 质量保证 各种选择方案 限制 文档 9详细设计 确定软件各模块的算法,以及内部数据组织、描述算法 数据的组织和输入设计 输出信息设计 文件/数据库设计 编码设计 消息传递机制设计 接口设计 系统的安全保密设计 系统的性能设计 ... 进行详细设计的评审 设计的指南 1 设计应该展示一种层次化结构 2 设计应该模块化,即逻辑地划分成完成特定功能和子功能的构件 3 设计应该包括对数据、结构、界面和部件的清楚表述 4 设计应该导出适于实现目的和由公认的数据模式导出的数据结构 5 设计应该导出具有独立功能特征的模块 6 设计应该导出降低模块和外部环境间连接复杂度的接口 7 设计应该通过使用可重复的方法来得到,这些方法被来源于软件需求分析的信息所驱动 8 设计应该可以持续改进 抽象 体系结构 模式 模块化 信息隐藏 求精 重构 抽象是人类处理复杂问题的基本方法之一 Grady Broach 抽象是抽出事务

文档评论(0)

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

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

1亿VIP精品文档

相关文档