网站大量收购闲置独家精品文档,联系QQ:2885784924

第三章软件需求分析.pptVIP

  1. 1、本文档共114页,可阅读全部内容。
  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.4 分析建摸方法 结构化分析(传统建模方法) 面向对象分析 §3.4.2 面向对象分析方法 对象(object) 现实世界中某个具体的物理实体或概念在计算机逻辑中的映射和体现。 对象具有的含义: 在现实世界中: 是客观世界中的一个实体 在面向对象程序中: 表达成计算机可理解、可操纵、具有一 定属性和行为的对象 在计算机世界中: 是一个可标识的存储区域 面向对象方法是一种运用对象、类、继承、封装、聚合、消息传递、多态性等概念来构造系统的软件开发方法。 类(class) 具有共同属性和行为的对象的抽象 类与对象的关系 类是对象的抽象 对象是类的实例 对象、实体与类 封装 封装是软件开发方法的重要原则,有两个涵义: 把对象的全部属性和全部服务结合在一起,形成一个不可分割的独立单位(对象)。 尽可能隐蔽对象的内部细节 (信息隐蔽) 传统方法和面向对象方法的比较 继承 (继承性inheritance) 继承性是父类和子类之间共享数据和方法的机制 继承性具有传递性 继承性包括单继承和多重继承 继承性作用 使软件系统具有开放性 更好地进行抽象与分类 增强代码的重用率 多态(多态性polymorphism) 不同的对象收到同一消息可产生完全不同的结果,这一现象叫做多态 多态的效果 ?用户发送一个通用的消息,而实现的细节则由接收对象自行决定 多态性的作用 增强了操作的透明性,可理解性和可扩展性 增强了软件的灵活性和重用性 消息(message) 消息 ? 对象之间相互请求或相互协作的途径,是要求某个对象执行某个功能操作的规格说明 消息内容 ? 通常包含接收方及请求接收方完成的功能信息 发送方 ? 发出消息,请求接收方响应 接收方 ? 收到消息后,经过解释,激活方法,予以响应 为什么对面向对象方法感兴趣? 面向对象方法的主要优点: 自然性 追求软件系统对现实系统的直接模拟,尽量实现将现实世界中的事物直接映射到软件系统的解空间中。 软件复用 可复用性(可重用性) reusebility 可扩展性 可管理性 面向对象技术允许复用的不仅仅是 代码, 通过面向对象技术, 我们可以复 用需求、分析、设计、测试计划、用 户界面以及体系结构等等, 事实上, 软 件工程生存期中的每个部分都可以复 用。 传统系统分析:面向功能 ,把系统看成 一组功能 OOA: 把问题当作一组相互作用的实体,并确定实体间关系 类的生存期模型 对象之间的联系与对象模型 面向对象方法开发软件 通常建立的三种形式的模型 描述系统数据结构的对象模型 描述系统控制结构的动态模型 描述系统功能的功能模型 三种模型从三个不同但由密切相关的角度模拟目标系统。 对象模型是最重要、最基本、最核心的。 对象模型表示静态的、结构的系统数据的性质。 对模拟客观世界实体的对象以及对象彼此之间的关系的映射,描述了系统的静态结构。 OO方法强调围绕对象而不是功能来构造系统。 分类关系 (归纳关系、一般与特殊的关系) 组成关系 (组合关系、整体/部分的关系) 对象属性之间的静态的联系 对象行为的动态联系 分类关系(一般与特殊的关系)示例 组成关系(整体与部分的关系)示例 对象模型中表现 上述联系的结构和连接 一家公司的对象模型(OMT)示例 方法论是如何对复杂系统进行“抽象”的工作,以及如何建立抽象模型。 面向对象分析方法确实不同于结构化分析方法吗? Fichman,R.G and C.F.Kemerer, 在“Object-oriented Conventional Analysis and Design Methodologies” 中阐述: 我们的结论是面向对象分析方法表现了相对面向过程的方法学(如结构化分析)的根本性变化,而且相对面向数据的方法学仅仅是增量性的变化。面向过程的方法学在建模过程中的关注点不是对象的内在性质,从而导致了和面向对象的三个基本原理相正交的问题域模型。 面向对象分析方法使得软件工程师能够通过对象、属性和操作(作为主要的建模成分)的表示来对问题建模。 面向对象分析方法使得软件工程师能够通过对象、属性和操作(作为主要的建模成分)的表示来对问题建模。 是定义所有和被求解的问题相关的类(及同类关联的关系和行为),为了达到这个目标,必须完成以下任务: (1)必须在客户和软件工程师之间沟通了解基本的用户需求; (2)必须标识类(定义属性和方法); (3)必须刻划类层次; (4)表示对象对象关系(对象连接); (5)必须建模对象行为; (6)

文档评论(0)

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

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

1亿VIP精品文档

相关文档