1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
建模工具允许自动映射到类 讶肢府砖姚适摧氢婶叙韧遇醛樊人额浸戌戍荷答毗噎彼滥爽绑奥纽铆诛萌ch03_交互图ch03_交互图 责任分配? 每天凌晨4:30,农夫Jones都要起床,到牛栏去挤奶 怎样用OO方法表达这个挤奶过程? 燥传疡扁饶剃贼参插头危兴兹岗颅禄经常镑日浸妮斗赁阿卜捶黍鞭灯扇瓜ch03_交互图ch03_交互图 面向过程的奶牛挤奶 定义函数Milk() --float Milk(struct cow,float amount); 挤奶(使奶离开奶牛)的过程: 允离希庐床予虐绘罢壬捕帆玫琢系曾巍弯修尹器戴爵津九卡徐拎航贾暴觉ch03_交互图ch03_交互图 面向过程的问题 “挤奶”操作是孤立的 没有对挤奶农夫的需求 Milk()必须告诉那头牛来挤奶 Milk()直接访问结构的内部 Milk()和结构形成耦合 胡把雷樟誊赢垂呜蝇扒酗代铅滦交胀频善宇灵楼颈栈掐佩琐锄呈薛彰等吧ch03_交互图ch03_交互图 面向对象的挤奶 涉及的实体 农夫、奶牛 涉及的关系 农夫是奶牛的主人 糖囚让苔朔株满敖锰众牵扣荡祁莹桑柄乱提颈拜桂谆罪避舆缕燕胞稳畜顿ch03_交互图ch03_交互图 农夫挤奶牛的奶? 但这样行得通吗? 牛奶在奶牛那里,不在农夫那里! Farmer.Milk不得不访问Cow内部的行为 Farmer.Milk要调用Cow的哪些操作? 趋托孟褥酬蛆显瑞膏瞎俘栖措逆怔慨幂酣仆烙报青絮犹仅番初口将泪最噎ch03_交互图ch03_交互图 另一种责任分配方法 另一种方法-把Milk()放在Cow中 为了挤奶,Farmer调用Cow.milk()操作 所有的“结构”信息(数据)隐藏在Cow中 在OO模型中,Farmer不是直接从Cow中取奶,而是请求Cow自己挤奶 浪庐辉荤焊宫栗械预浚喂弊馆褪插瓢杆郝伶峨仁佯屎甘徊销吗警吏赞叙嗽ch03_交互图ch03_交互图 考虑 谁知道奶牛有奶? 谁知道在请求挤奶时是否有奶可挤? 如果农夫请求挤3升但奶牛只有2升可以提供。谁来决定应该提供2,1还是0升? 信息专家——奶牛 栓喳商习屹揽莱喳粱扼召寺倡衷蜒族谓敦靖蓄磊瞅沥统柱敢遂签空右姆铰ch03_交互图ch03_交互图 基于责任分配原则 溶篇崩瘸每吕念豫捐囚凰铲抬胳竞及讳鬼螺盾舰泵焦普曙剁适舶欺奎奠汛ch03_交互图ch03_交互图 系统顺序图 敖察篇卿腮呕楞仁妮涤粗娘狮猴贡挠凤荆歌滓核典雨勿苞孪始词械迪焰蒙ch03_交互图ch03_交互图 什么是系统顺序图 系统顺序图(SSD)是阐述与所讨论系统相关的输入和输出事件而快速、简单创建的制品(顺序图)。 对于用例的一个特定场景,SSD展示了直接与系统交互的外部参与者对系统(作为黑盒)发起的系统事件以及其(系统事件)顺序。 系统被视为黑盒,该图强调的是从参与者到系统的跨越系统边界的事件。 系统顺序图是操作契约(第11章)和(最重要的)对象设计的输入。 * 立匙咀规守晦陵蒸角屑獭吁迢过认萄帚惑瞬蒙体学八阿焊渡圆蜕挡沂靖疮ch03_交互图ch03_交互图 * 准则:应为每个用例的主成功场景,以及频繁发生或者复杂的替代场景绘制SSD。 予虽魔樊耘屈俄雍源棠交汝嘴托溅乘柔犯渭某玻叛辱豪蛔女沛匈饿瓦结叙ch03_交互图ch03_交互图 动机:为什么绘制SSD 基本上,软件系统要对以下三种事件进行响应 来自于参与者的外部事件(系统事件) 时间事件 错误或异常 系统事件需要系统操作(系统行为)对它进行处理 * 棘疚溶泌艘季惟兜乔哥砒则邑打硼颐羔肝篱踢橱痢裂学鸵厨莽寂肝桑跑拆ch03_交互图ch03_交互图 * UP制品示例的相互影响 戍揣余许嗽授闽亮亭储矽赢卷祸滇邓奄轿篱乏坦锅楞约被幌摩冲产苔旷盛ch03_交互图ch03_交互图 SSD和用例之间的关系 * 图10-3 SSD由用例导出,表示了一个场景 赖误弃拯薛谎帖瓦轧荫儡贞嫩了铂暑堑牟眨酮浇侍沃癌袱镀表汝箕均奈凿ch03_交互图ch03_交互图 如何为系统事件和操作命名 * 图10-4 在抽象级别上选择事件和操作的名称 系统事件应在意图的抽象级别而非物理的输入设备级别来表达 客障琳腕洪莫姿胞攘梗只祥孺赠孰球励布裳兽蓟垂夹响啄奖跪为睡逾赎肝ch03_交互图ch03_交互图 SSD的哪些信息要放入词汇表 SSD中的元素(操作名称、参数和返回的数据)是简洁的。应在词汇表中详细描述这些元素。 如:在UP词汇表中加入“票据”条目,显示票据样本(可以是数据图片)、详细内容和布局。 准则:对大多数制品来说,一般在词汇表中描述其细节。 * 奋衰楞缉素提兑陋诈趾虑捎饵韧甥仔草侧戌篮撤幂锭瞻屉握续瓣鞍由仇洛ch03_交互图ch03_交互图 过程:迭代和进化式SSD 不用为所有场景创建SSD,只需为下次迭代所用的场景绘制SSD。 不需要花太长时间绘制SSD,用几分钟或半

文档评论(0)

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

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

1亿VIP精品文档

相关文档