第4章软件设计概要.pptVIP

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

第四章 软件设计概述 软件设计的任务 软件设计的基本概念 模块化设计 设计需要处理的问题 设计文档及其复审 软件设计的任务 分析模型 设计模型 设计文档 回答How to do? 可以分为概要设计、详细设计 软件设计包括 数据设计 体系结构设计 接口设计 过程设计 软件设计的任务 数据设计 信息模型 软件数据结构 体系结构设计 定义软件部件间的关系 接口设计 软件内部、外部及与人之间的通信 过程设计 软件组件的过程性描述 软件设计的基本概念 模块(module)与构件(component) 模块:定义输入、输出和特性的程序实体 构件:可重复使用的软件组件 抽象(abstract)与细化(refinement) 抽象:分层次考虑和处理问题(数据和过程) 细化:从高到低的逐步分解过程 信息隐藏 对其它模块隐藏模块内部的数据和过程 软件复用 模块化设计(modular design) 分解(decomposition) 模块独立性(module independence) 自顶向下(top—down design) 自底向上(bottom—up design) 分解(decomposition) C (P1+P2)C (P1)+C (P2) E (P1+P2)E (P1)+E (P2) C为问题的复杂度,E为解题需要的工作量 模块独立性(module independence) 内聚(cohesion) 模块内部各成分之间 耦合(coupling) 一个模块与其它模块之间 模块的独立性高 块内联系强 块间联系弱 内聚 内聚 cohesion 1.偶然性内聚 coincidental cohesion 2.逻辑性内聚 logical cohesion 3.时间性内聚 temporal cohesion 4.过程性内聚 procedural cohesion 5.通讯性内聚 communicational cohesion 6.顺序性内聚 sequential cohesion 7.功能性内聚 functional cohesion 逻辑性模块 耦合 coupling 1.非直接耦合 no direct coupling  2.数据耦合 data coupling  3.特征耦合  stamp coupling   4.控制耦合  control coupling 5.外部耦合 external coupling 6.公共耦合 common coupling 7.内容耦合 content coupling 弱耦合 公共耦合 自定向下和自底向上设计 设计需要处理的问题 协同设计 谁最合适设计系统的某一方面? 如何使组内成员相互了解别人的设计? 如何协调设计组件使整个系统统一? 用户界面设计 让用户驾驭软件,不是软件驾驭用户 减少用户的记忆 保持界面的一致性 并发系统设计 怎样确保同时执行的组件间对共享数据的一致性 并发处理(顺序执行) 1、?????? 组件1查询X是否为空。 2、?????? 组件1被告知X不为空。 3、?????? 组件2查询X是否为空。 4、?????? 组件2被告知X不为空。 5、?????? 组件1出栈,删除最后一个元素。 6、 组件2想出栈,但X已为空,系统进入非法状态。 并发处理 软件设计文档 软件设计说明书 1)?范围 2)?数据设计 3)?体系结构设计 4) 接口设计 5)?模块的过程设计 6) 其他 包括测试的考虑,确保设计满足所有需求,设计约束和一些特殊注解等内容。 设计复审(design review) 及早发现设计中的缺陷 差错的传播 复审的内容 概要设计复审 系统的总体结构,模块划分,内外接口 详细设计复审 各个模块的具体设计 设计复审(design review) 复审的方式 正式复审(Formal review) 非正式复审Informal review * * 模块数 接口成本 最小成本区 M 软件开发工 作 量 总成本 模块成本   1   2   3   4   5   6  7 弱 强    低内聚     中内聚    高内聚  读入分数 平均/最高? 计算平均分 计算最高分  输出结果 数据耦合 非直接 耦合 模块2 模块1 模块4 模块3 特征耦合(参数表 传递数据结构) D C B A N L 自顶向下 顶层开始 逐步分解 由底向上 选择关键部分先设计 扩展到整个系统

文档评论(0)

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

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

1亿VIP精品文档

相关文档