11第七章节--面向对象分析.ppt

  1. 1、本文档共26页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
11第七章节--面向对象分析

第七章 面向对象分析 (Object-Oriented Analysis) 7.1 分析过程: OOA基本任务 运用OOM,对问题域和系统责任进行分析和理解,对其中的事物和它们之间的关系产生正确的认识,找出描述问题域及系统责任所需的类及对象,定义这些类和对象的属性与服务,以及它们之间所形成的结构、静态联系和动态联系。最终产生一个符合用户需求,并能够直接反映问题域和系统责任的OOA模型及其详细说明。 7.3 建立 Object Model 第2步:去粗取精 7.3 建立 Object Model 7.3 建立 Object Model ② 需求陈述中隐含的关联 ? 总行由各个分行组成 ? 系统维护事务日志 ? 分行保管账户 ? 系统提供必要的安全性 ? 总行拥有中央计算机 ? 储户拥有现金兑换卡 7.3 建立 Object Model 第2步:筛选删除 —— * * Requirement statement ? Rapid prototype ? Models 其中model 有三个: Object model:最重要,开发任何系统都需要; Dynamic model:对于开发交互式系统(interactive system)很重要; Function model:对于开发大运算量问题(如科学计算、编译系统等)很重要。 Category Class--Object Structure 1+ 1+ Attribute Method 7.1 分析过程 Object model 由五个层次组成(CoadYourdon, 1991),相当于把五张透明胶片(transparencies)叠在一起,每一层显示更多的细节。 7.2 需求陈述 第三章中已介绍过,需求陈述的内容包括: 问题范围、功能需求、性能要求、应用环境、假设条件等等。陈述方式可繁可简,说明What 而不是 How。 例:教材p.150,对Automated Teller Machine (ATM) 的需求陈述。 7.3 建立 Object Model 1、确定Class--Object: 第1步:列出所有候选对象(candidates),它们可能是 ? 物理实体 ? 人或组织 ? 要处理的事件 ? 对象间的活动 ? 抽象概念 等等 非正式分析:从需求陈述中挑出 名词 ? Class--Object 形容词 ? Attribute 动词 ? Method 例:从ATM需求分析中提出的名词集合 银行、ATM、系统、中央计算机、分行计算机、 柜员终端、网络、总行、分行、软件、成本、市、 街道、营业厅、储蓄所、柜员、储户、现金、支票、账户、事务、现金兑换卡、余额、磁卡、分行代码、卡号、用户、副本、信息、密码、类型、取款额、 账单、访问 筛选时依下列标准删除: 、通信链路、事务日志 ? 冗余 ? 无关 ? 笼统 ? 属性 ? 操作 既可为名词又可为动词的词,应慎重考虑。 ? 实现 2、确定关联 ? 结构层 第1步:收集 —— ① 需求陈述中涉及objets的动词短语: ? 分行计算机维护账户 ? 柜员终端与分行计算机通信 ? 柜员输入针对账户的事务 ? ATM与中央计算机交换关于事务的信息 ? 中央计算机确定事务与分行的对应关系 ? ATM读现金兑换卡 ? ATM与用户交互 ? ATM吐出现金 ? ATM打印账单 ? 系统处理并发的访问 ? ATM、中央计算机、分行计算机及柜员终端组成网络 ? 总行拥有多台ATM ? ATM设在主要街道上 ? 分行提供分行计算机和柜员终端 ? 柜员终端设在分行营业厅及储蓄所内 ? 分行分摊软件开发成本 ? 储户拥有账户 ? 分行计算机处理针对账户的事务 ③ 根据问题域知识得出的关联 ? 现金兑换卡访问账户 ? 分行雇用柜员 ? 分行计算机处理针对账户的事务 ? 分行计算机维护账户 ? 柜员终端与分行计算机通信 ? 柜员输入针对账户的事务 ? ATM与中央计算机交换关于事务的信息 ? 中央计算机确定事务与分行的对应关系 ? ATM读现金兑换卡 ? ATM与用户交互 ? ATM吐出现金 ? ATM打印账单 ? 系统处理并发的访问 ① 与已删去的object 有关的关联 ② 与问题无关的或应在实现阶段考虑的关联 ? ATM、中央计算机、分行计算机及柜员终端组成网络 ? 总行拥有多台ATM ? ATM设在主要街道上 ? 分行提供分行计算机和柜员终端 ? 柜员终端设在分行营业厅及储蓄所内 ? 分行分摊软件开发成本 ? 储

文档评论(0)

ctuorn0371 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档