- 1、本文档共43页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
得到候选类 在使用“名词动词法”寻找类的时候,很多团队会在此耗费大量的时间,特别是对于中大型项目,这样很容易迷失方向。其实在此主要的目的是对问题领域建立概要的了解,无需太过咬文嚼字 书籍 计算机类书籍 非计算机类书籍 借阅记录 借阅记录列表 书籍列表 关联分析,建模,多重性分析,再建模 职责分析 书籍类:从需求描述中,可找到书名、类别、作者、出版社;同时从统计的需要中,可得知“定价”也是一个关键的成员变量。 书籍列表类:书籍列表就是全部的藏书列表,其主要的成员方法是新增、修改、查询(按关键字查询)、统计(按特定时限统计册数与金额)。 借阅记录类:借阅人(朋友)、借阅时间。 借阅记录列表类:主要职责就是添加记录(借出)、删除记录(归还)以及打印借阅记录 限定与修改 导航性分析:Book与BookList之间、BorrowRecord和BorrowList之间是组合关系均无需添加方向描述,而Book与BorrowRecord之间则是双方关联,也无需添加 约束:Book对象创建后就不能够被删除只能被修改,因此在Book类边上加上用自由文本写的约束 ;一本书要么属于计算机类,要么属于非计算机类,因此在ItBook和OtherBook间加了 “{Xor}”约束 限定符:一本书只有一册,因此只能够被借一次,因此对于一本Book而言只能有一个RecordId与其对应 Agenda 什么是类 如何阅读类图 其他高级概念 如何绘制类图 类图应用说明 复合结构图 本章小结 软件系统模型 领域模型是从面向对象的视角看待现实世界的结果,也就是通过类图来描述现实世界中各种事物的关系。 分析模型和领域模型是很相近的,分析模型主要是针对软件系统的分析,领域模型则更多是偏重对业务领域的分析 设计模型则是在分析模型的基础上添加设计元素的结果。与分析模型相比,设计模型中的类的属性集更趋完善; 《UML面向对象建模基础》 类图 知识图谱 Agenda 什么是类 如何阅读类图 其他高级概念 如何绘制类图 类图应用说明 复合结构图 本章小结 Agenda 什么是类 如何阅读类图 其他高级概念 如何绘制类图 类图应用说明 复合结构图 本章小结 面向对象思想 面向对象思想 每个对象都扮演了一个角色,并为其它成员提供特定的服务或执行特定的行为。 在面向对象世界中,行为的启动是通过将“消息”传递给对此行为负责的对象来完成的;同时还将伴随着执行要求附上相关的信息(参数);而收到该消息的对象则会执行相应的“方法”来实现需求 用类和对象表示现实世界,用消息和方法来模拟现实世界的核心思想 如何用UML表示一个类 名称:每个类都有一个惟一的名称,通常采用CamelCase格式表示 属性:是已被命名的类的特性,它描述该类实例中包含的信息 操作:是类所提供的服务,它可以由类的任何对象请求以影响其行为 属性名和操作名也通常采用CamelCase格式表示,只不过首字母通常为小写。 Agenda 什么是类 如何阅读类图 其他高级概念 如何绘制类图 类图应用说明 复合结构图 本章小结 示例类图 先看清有哪些类,然后看看类之间存在的关系,并结合多重性来理解类图的结构特点以及各个属性和方法的含义 读图过程 读出类:图中共有7个类,Order、OrderItem、Customer、Consignee、DeliverOrder、Peddlery、Prodcut 读出关系:从图中关系最复杂(也就是线最密集)的类开始阅读,本图中最复杂的就是Order类。1)OrderItem和Order之间是组合关系,根据箭头的方向可知Order包含了OrderItem。2)Order类和Customer、Consignee、DeliverOrder是关联关系。也就是说,一个订单和客户、收货人、送货单是相关的。 读图过程 多重性:用来说明关联的两个类之间的数量关系 产品是属于某个商户的,可以注册0到多个产品 Prodcut(0…n) Peddlery(1) 每个订单项中都包含着唯一的一个产品 Product(1) OrderItem(1) 每个商户可以有相关的0个或多个送货单 DeliverOrder(0…n) Peddlery(1) 每张送货单都对应着一个收货人 Consignee(1) DeliverOrder(1) 一张送货单对应订单中的一到多个订单项 OrderItem(1…n) DeliverOrder(1) 说明:系统根据订单项的产品所属的商户,将其分发给商户,拆成了多个送货单! 一个订单有一个或多个送货单 DeliverOrder(1…n) Order(1) 订单是由订单项组成的,至少
您可能关注的文档
- ProENGINEER Wildfire 2.0中文版数控加工教程 岳贵友 第七章新.ppt
- ProENGINEER Wildfire 2.0中文版数控加工教程 岳贵友 第三章新.ppt
- ProENGINEER Wildfire 2.0中文版数控加工教程 岳贵友 第四章新.ppt
- ProENGINEER Wildfire 2.0中文版数控加工教程 岳贵友 第五章新.ppt
- Red Hat Enterprise Linux 5基础教程 王路群 第1章 Red Hat Enterprise Linux简介和安装新.ppt
- Red Hat Enterprise Linux 5基础教程 王路群 第6章 Shell的基本使用新.ppt
- Red Hat Enterprise Linux 5基础教程 王路群 第7章 系统配置及管理新.ppt
- Red Hat Enterprise Linux 5基础教程 王路群 第8章 文件和磁盘管理新.ppt
- SPSS数据分析:问题提出与实例导学 赵小军 理论+实验 课件 第04部分新.ppt
- SPSS数据分析:问题提出与实例导学 赵小军 理论+实验 课件 第06部分新.ppt
文档评论(0)