- 1、本文档共60页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
19-面向对象分析
第8章 面向对象系统分析 本章主要内容 面向对象方法的优势 面向对象方法的基本概念 UML概况 需求建模 用例分析、用例图、用例描述 面向对象分析模型 对象分析、类图 8.5 分析模型 面向对象分析的主要内容是:开发一系列模型,以描述计算机软件结构,从而满足客户定义的需求(分析模型) 分析模型主要包括:描述领域对象(静态结构)的类图,描述对象交互(动态交互)的交互图 类图(class diagram):描述了构成一类对象特征的状态和行为(描述软件架构) 交互图(interaction diagram):描述对象之间的交互行为(描述系统行为) 每个用例会涉及一组对象的交互 分析模型与用例模型 软件的基本组成——类 学习OOA,找到实现用例功能的类 如何建立分析模型 8.5.1 定义概念类 有两种方法用来识别领域中的概念,从而确定概念类 从用例描述中获取候选概念 摘取用例的详细文档中的名词(术语或名词短语),然后进行分析 通过不同类别发现候选概念 1、Wirfs-Brock名词短语策略 阅读理解需求文档(或用例说明); 反复阅读,筛选出名词或名词短语,建立初始对象清单(候选对象); 将候选对象分成三类,即显而易见的对象、明显无意义的对象和不确定类别的对象; 舍弃明显无意义的名词或短语; 小组讨论不确定类别的对象,直到将它们都合并或调整到其它两类。 阅读需求说明或用例描述 1.图书管理员将读者借书卡提供给系统; 2.系统验证读者身份和借书条件; 3.图书管理员将读者所借图书输入系统; 4.系统记录借书信息,并且修改图书的状态和此种书的可借数量; 5.系统修改读者的可用限额; 6.重复3-5,直到图书管理员确认全部图书登记完毕; 7.系统打印借书清单,交易成功完成。 图书馆系统的对象 阅读用例描述 用例名:购买商品 参与者:出纳员 描述:顾客带着所要购买的商品来到收款处。出纳员记录下商品信息并收款。付款完成后,顾客带着所购买的商品和收据离开。 阅读用例规格说明 用例名称:预定房间 涉及的参与者:酒店前台 正常事件流: 1) 前台人员向系统提供需要预定房间的类型、日期和预定天数。 2) 系统确认有相应档次的空闲房间,并计算出总费用和定金。 3) 前台人员向系统提供旅客信息(姓名、地址、联系电话、证件号等)。 4) 系统记录旅客信息。 5) 前台人员确认已经交纳定金。 6) 系统记录房间已经预定,工作完成。 2、不同类别的概念 人员:系统需要保存或管理其信息的人员(如录象商店的会员、图书馆的读者),或在系统中中扮演一定角色的人员(如录象商店的职员、论文评阅教师)。 组织:在系统中发挥一定作用的组织机构(如录象商店的连锁店,医疗保险系统中的医院,学校中的系)。 物品:需要由系统管理的各种物品(如录象商店的商品、图书),包括无形事物(如学校的一门课程、毕设题目)。 设备:在系统中被使用或由系统进行监控的设备、仪器等,系统运行中的硬件设备(如打印机)除外。 事件:需要由系统长期记忆的事件(如在自动柜员机上的每次取款事件、每次借书事件)。 不同类别的概念(续) 规格说明:系统中关于对象的规格信息的描述。 如图书品种,每种图书有一个唯一的馆藏号,同时该图书还包含一些描述信息,如书号、价格、作者、出版社等,多本图书对象共用这些规格说明。这是一种经过了抽象的概念,应该识别为概念类。 业务规则或政策:系统中经常使用的业务规则或政策的文字描述。 业务规则通常会在用例文档之外以其它条款说明。如图书馆系统中,对不同违规行为指定不同的罚款金额,商店对不同顾客或产品有不同的折扣策略等。如果这些规则无法并入到其他对象中,则可以作为概念类建立。 通常规则可能仅有属性,或者仅有操作,比如折扣策略可能是一个纯粹的计算类。 图书馆系统的概念类 图书馆系统的第1张类图 8.5.2 识别概念类的属性 属性是描述对象静态特征的一个数据项。 发现属性的策略: 如何为对象做一般性的描述?比如人,一般的描述信息有姓名、性别、出生日期、身高、体重等。 在当前问题域,对象还具备那些特定描述项?比如人作为门诊系统的患者,还需要考虑血型、药物过敏、家族病史等。 对象的责任是什么?在系统中对象还需要了解或提供哪些信息?比如图书馆要实现催还功能,与该责任相关的就需要为书籍或借书事项定义借书日期和期限。 对象可能处于什么状态?对象的状态不同,则可能执行的操作也不同。比如出租物品就有在库、出租、维修三个状态。 属性的表示 定义领域类属性的原则 仅定义与系统责任和系统目标有关的属性。 使用简单数据类型来定义属性。如数字、字符串、日期、布尔、文本等。还包含多种特征或规则的数据,可考虑作为独立的对象类。 一般不使用可导出的属性。 不为对象关联定义属性。属性只用于体现对象本身的内在性质,关联属性来
您可能关注的文档
最近下载
- 人教新课标数学六年级下册《自行车里的数学》PPT课件.ppt
- 机电一体化毕业论文7000字.doc VIP
- 2023年4月河南省考公务员结构化面试真题试题试卷答案解析.doc VIP
- 《英语学术论文写作教程》教学课件 Unit 1 Writing Foundation.pptx VIP
- AI+智慧医疗整体解决方案 人工智能+智慧医疗整体解决方案.pdf VIP
- 中药制剂生产工艺流程.pptx VIP
- 口腔颌面部解剖(淋巴).ppt
- 9A文孟洪涛谈威科夫交易法.pdf
- GBZT201.2-2011 放射治疗机房的辐射屏蔽规范 第2部分:电子直线加速器放射治疗机房.pdf
- 详细解读2021年新修订《中华人民共和国科学技术进步法》PPT教学课件.pptx VIP
文档评论(0)