《新》第10章面向对象分析.pptVIP

  1. 1、本文档共155页,可阅读全部内容。
  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文档。上传文档
查看更多
* 三种模型 对象模型(静态结构):从客观世界实体及实体之间相互关系抽象出 动态模型(交互次序) :问题涉及交互作用和时序 功能模型(数据交换) :解决运算量很大的问题 * (Coad的OOA/OOD) * 寻找类和对象(UML中的类)首先,根据对问题的调查了解编写问题的需求陈述,从该陈述中找出问题空间中存在的事物,将事物抽象成对象; 接着,通过寻找和确定结构进一步扩展问题空间中的对象,根据需要按照主题将问题分解为不同的子问题,确定对象属性、对象和对象之间的实例关联; 然后,从需求陈述中找出问题空间中存在的行为,通过分析行为和事物之间的关系确定对象的行为,通过分析对象行为之间关系确定建立对象之间的消息关联; 最后,对对象规格进行详细说明,按照有关规范编写软件需求规格说明书和进行复审,完成对问题的面向对象分析建模。 识别类与对象(找出问题中的实体) 识别结构(类或对象之间的关系) 识别主题(指导读者理解大型、复杂模型的一种机制) 定义属性(对象的属性) 建立动态模型 建立功能模型 定义服务(类所能提供的服务,即行为) * 不是提出解决问题的方法。 * 银行、自动取款机、系统、中央计算机、分行计算机、柜员终端、网络、总行、市、街道、分行、营业厅、储蓄所、软件、成本、柜员、储户、事务、现金、支票、帐户 * 现金兑换卡、余额 * 磁卡、分行代码、卡号、副本、访问 * 用户、信息、密码、关系、类型、取款额、帐单 隐含的对象:通信链路和事务日志 * 类名 属性 可见性 属性名: 类型名=初值{性质串} 可见性: +,-,# 类变量(类的作用域属性):某类所有对象共享的属性 示例: ① -管理员:String=“未定” ② -货单数:Integer 操作(服务) 可见性 操作名(参数表):返回值类型{性质串} 类作用域操作 Public Protected Private Implementation * 关联的重数(multiplicity)表示该类有多少个对象与对方的一个对象连接。 * 通常用在一对或多对的关联关系中。 可以把模型中的重数从一对多变成一对一,或从多对多简化成多对一。 在类图中,把限定词放在关联关系末端的一个小方框内。 为了说明关联的性质可能需要一些附加信息。可以引入一个关联类来记录这些信息。 关联中的每个连接与关联类的一个对象相联系。 * 组合在聚集中用来说明部件的生存周期取决于整体即集合的生存周期 aggregation: car? 和 engine compositon: order? 和? orderitem order一旦删除,属其所有的orderitem也应被删除。 ? 这里的生命周期指的是在特定系统里的生命周期。 判断是aggregation还是compositon的最好依据是, 当删除A时,B是否一定要被删除,如是,则是composition,否则,则是aggregation. * 面向对象分析的基本任务:明确地表达系统要做什么。即抽取和整理用户需求并建立问题域的精确模型。 面向对象分析的成果:软件需求规格说明。 问题1:面向对象分析中软件需求规格说明书主要包括哪些模型? 主要由对象模型、动态模型和功能模型组成。 其中对象模型是最基本、最重要和最核心的。 问题2:对象模型又包含哪5个层次? 对象模型通常由五个层次组成:主题层,类与对象层、结构层、属性层和服务层。 这就是面向对象分析中的3个子模型和5个层次。面向对象分析就是围绕此展开,具体包括: (1)识别类和对象 (2)识别结构 (3)识别主题 (4)定义属性 (5)动态建模 (6)功能建模 (7)定义服务 问题3:面向对象分析首要的工作就是建立问题域的对象模型。对象模型一般用类图来表示。 回忆一下类图的基本符号和表示关系的符号。 1. 关联(Association) 2. 聚集(Aggregation) 3. 泛化(Generalization ) 4. 依赖和细化(Dependency and Realization) 我们今天就要进一步以ATM系统为例来介绍对象建模的具体过程。 * 问题4:那么在开始对象建模的时候,我们需要什么资料呢? 需求陈述。需求陈述一般用自然语言描述,存在二义性、不完整性和不一致性,需要系统分析员与用户及领域专家密切配合协同完成。有时需要快速建立起原型系统。 * 工作步骤 确定对象类和关联 进一步划分出若干主题 给类和关联增添属性 利用适当的继承关系进一步合并和组织类 确定类中的服务(建立了动态模型和功能模型之后) * 类与对象是在问题域中客观存在的,系统分析员的主要任务,就是通过分析找出这些类与对象。 找出所有候选的类与对象; 筛选候选的类与对象。 * (3)瞬时事件

文档评论(0)

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

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

1亿VIP精品文档

相关文档