第六章 面向对设计方法.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文档。上传文档
查看更多
第六章 面向对设计方法

第六章 面向对象设计方法 本章概述了面向对象设计的任务和设计模型,并从系统设计、对象设计和领域对象设计等几个方面介绍了面向对象设计的主要内容和描述工具。 重点掌握内容:模型对象设计模型,系统设计,对象设计。 难点:领域对象设计 面向对象的设计模型 系统设计 对象设计 领域对象设计 面向对象设计将分析阶段所建立的分析模型转换为软件设计模型,但是面向对象分析和面向对象设计之间没有明显的界限,很难区分出这两个阶段,而且它们都是迭代过程,设计之后可能再进行进一步分析。 6.1 面向对象设计概述 面向对象涉及主要考虑“如何实现”的问题,这一阶段的焦点从问题空间转移到解空间,着重完成不同层次的模块设计。 它不仅要说明为实现需求必须引入的类、对象以及它们之间是如何关联的,描述对象间如何传递消息和对象的行为如何实现,还必须从提高软件设计质量和效率方面考虑如何改进类结构和可复用类库中的类。 6.1.1 面向对象设计的任务 设计阶段的主要任务 数据设计 数据和过程被封装为类/对象的属性和操作 体系结构设计 表现为具有控制流程的对象的协作 接口设计 接口被封装成为对象间的消息 过程设计 OOD的两个层次 系统设计 着重于构造一个完整的软件产品或者系统所有构件的布局。 对象设计 着重于个体对象的详细布局。 面向对象设计过程的主要步骤 系统设计 系统整体结构的设计 对象设计 对OOA模型中类/对象模型的具体化和细化 消息设计 从对象- 关系模型,设计出消息模型 设计模型复审 从需求和实现进行复审,并伴随OOA活动 6.1.2 面向对象的设计模型 子系统层 描述了整个系统的总体结构,使得所设计的软件能够满足客户定义的需求,并实现支持客户需求的技术基础设施。 类及对象层 包含类层次关系,使得系统能够以通用的方式创建并不断逼近特殊需求,该层同时包含了每个对象的设计表示+。 消息层 描述对象间的消息模型,它建立了系统的外部和内部接口,包含使得每个对象能够和其协作者通信的细节。 责任层 包含针对每个对象的所有属性和操作的数据结构和算法的设计。 Pressman认为 可以想象在上述4层次的下方还存在一个称为“领域对象”的层次。 作为整个金字塔的基础,该层次可以在人机交互界面、任务管理和数据管理等方面对本领域的应用(或产品)提供支持。 6.2 系统设计 系统设计过程 子系统设计 人机交互设计 任务管理设计 数据管理设计 6.2.1 系统设计过程 系统设计的主要步骤 划分子系统; 确定需要并发运行的子系统并为它们分配处理器; 描述子系统之间的通信; 确定系统资源的管理和控制; 确定人机交互构件; 选择实现数据管理和任务管理的基本策略。 四种主要设计组件(子系统) 领域组件 负责实现客户需求的子系统 人机交互组件 实现用户界面的子系统 任务管理组件 负责控制和协调并发任务的子系统 数据管理子系统 负责对象的存储和检索的子系统 6.2.2 子系统设计 子系统的作用 描述实现客户需求的组件,及实现客户需求所必需的支持环境。 子系统设计步骤 划分子系统 处理并发操作 描述子系统间通信 资源管理构件 划分子系统 划分原则 模块化、功能独立、信息隐藏 同一个子系统的类拥有共同特性 同一个子系统的类具有共同目的 同一个子系统的类提供相似服务 同一个子系统的类间相对高耦合 子系统由它们的责任及所提供的服务来标识。 子系统设计标准 有明确的接口,与其他子系统通信。接口应尽可能简单、明确; 子系统之间应尽可能减少依赖性,一般类只和子系统内部的其它类协作; 子系统的数目不应太多,应与系统的规模基本匹配; 子系统可以在内部再划分,以降低复杂性。 处理并发操作 并发的对象(子系统) 同时 作用于同一事件 处理 将并发子系统分配到不同处理器 将并发子系统分配到同一处理器 系统提供同步控制 描述子系统间通信 子系统协作模型 客户/服务器 端对端 确定子系统间交互方式的步骤 列出所有可能接受到的请求,按子系统组织这些请求,并在一个或多个合约中定义; 对每个合约列出完成每个请求所需的操作,将操作和子系统内的特定类相关联; 对每个合约创建表格; 若子系统间的交互模型是复杂的,则可创建子系统协作图,表示每个子系统及其与其他子系统之间的交互。 类型----合约的类型(客户/服务器或端对端); 协作子系统----作为合约伙伴的子系统的名字; 类----支持合约蕴含的服务的类的名字; 操作----实现服务的操作的名字 消息格式----实现协作者间交互所需的消息格式 资源管理构件 系统中通常有一些共享资源,多个子系统可能同时竞争这些资源 Rumbaugh建议每个资源应由其“保护者对象”拥有。 6.2.3 人机交互设计 需求分析阶段确定人机交互的属性和外部服

文档评论(0)

189****8221 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档