- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Thank you UML中的聚合 当对象A被加入到对象B中,成为对象B的组成部分时,对象B和对象A之间为聚合关系。聚合是关联关系的一种,是较强的关联关系,强调的是整体与部分之间的关系。 UML中的依赖 对于两个相对独立的对象,当一个对象负责构造另一个对象的实例,或者依赖另一个对象的服务时,这两个对象之间主要体现为依赖关系。 第三部分 案例分析 我们以餐馆的例子来展开分析。 我们会学到 1 开发初步类图 2 收集系统需求 3 开发用例 4 交互 请看下面的描述。(请注意其中的名词和动词) 餐馆案例 感谢您花费宝贵的时间与我交谈,分析员说. 不客气,您想知道些什么呢?,餐馆的工作人员说. 让我们先从一次具体的业务过程开始吧.当一名顾客走进餐馆时,你们要做些什么呢? 经过是这样的,如果客户穿着外套,我们会帮助他脱下外套,将外套存放在存衣间里面,并给客户一张取衣票, 对戴帽子的客户也是如此的“ 假设顾客比较多,需要排队等候,怎么办呢? 餐馆案例 如果确实要排队的话,我们会询问客户是否要预定席位,并尽可能处理好客户的预定,让客户尽快入席.如果没有空缺的席位可供预定,顾客可以登记下他的名字,并且可以选择先到我们安排的休息室喝点饮料,休息一会.当然顾客也可以不去休息室,也可以到一个指定的候餐区等候.“ 通过上一段的描述,我们可以绘制出活动图 餐馆案例 餐馆案例 “在顾客入座之前,餐桌必须要提前准备好,清洁师要事先清理桌面,除去旧的桌布,换上新的桌布,还要调整好桌子和座位.当一切准备就绪后,领餐员将顾客领到餐桌前就座,并且叫一名服务员来招待顾客. “然后服务员就接管了这一桌的顾客.他给每一位就餐者一份菜单,并且询问顾客是否要预定酒水,然后服务员会叫一名助手,助手会负责酒水,面包,黄油,等等.不需要则等待顾客点菜. 通过上一段的描述,我们可以绘制出活动图 餐馆案例 泳道活动图,每个泳道只有这个对象的活动, 这样图会很好扩展(视频) 餐馆案例 顾客点了菜,服务员记录下顾客所点的菜,接着呢? 接着通知厨师,服务员将顾客的选择填写在一张表格中然后交给厨师 “就餐完毕后,服务员会上前咨询顾客是否要些甜食,如果顾客要吃,服务员要给顾客上一份甜食菜单,并记录,如果客户不吃则服务员拿来帐单让顾客来确认,过几分钟后服务员回来收钱,给顾客收据,顾客离开座位,取回衣帽,离开餐馆. 顾客走后,服务员还要找来清洁师清理餐桌,并重新布置餐桌和座椅准备下一批客户使用. 通过上一段的描述,我们可以绘制出活动图 餐馆案例 开发初步类图 经过上述的描述我们已经作出了活动图,下面我们要根据活动图和描述中的名词构造出一些类. 名词: 我们很容易的发现在一些名词中有很多的相近的.比如说 侍者(waiter)和服务员(server)是同义词,所以我们保留一个好听的吧服务员(server).再有顾客(customer)和就餐者(diner)也是同义词,所以我们也保留一个,就叫顾客(customer),还有很多大家请细看. 开发初步类图 经过上述的描述我们已经作出了活动图,下面我们要根据活动图和描述中的名词构造出一些类. 整理后的名词: 顾客(customer),外套(coat),储衣室(cloakroom),取衣票(coat-check ticket),帽子(hat),队列(waiting list),休息室(cocktail lounge),饮料(drink),正餐(dinner),餐桌(table),清洁师(busser),桌布(tablecloth),领餐员(maitre d’),菜单(menu),助手(assistant),服务员(server),厨师(chef),订单(order)….等等 其实这些就是我们所需要的类 开发初步类图 需要用到的类(后面的步骤将对这些类逐步细化): 形成关联 有一些类是有关系的,我们要合理的组织这些关系,后期的代码编写量会少一些. 例如: 这几个类可以预见有很多属性是相同的,所以我们就创建一个它们都有的父类 形成关联 还要找出这些类会和那些类有交互,以便为后面的用例图打基础. 填充类的信息 关系都找完后,下面要做的就是,要对类的信息进行详细的填充.填充类的时候,通常还需要和客户进行沟通,必要时也可以自己添加. 填充类的信息 和客户交互后发现 Customer类 属性:name,arrivaltime,order,serveTime 事件:eat(),drink(),order(),pay() Employee类 属性:name,address,socialSecurityNumber,yearsExperience,hireDate,salary 事件:carry(),pour(),
文档评论(0)