版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第6章交互与交互图在分析阶段,开发人员用交互来详细描述用例的场景,这有助于项目团队对用例场景达成共识。在详细设计阶段,交互也能精确描述进程间的通信协议。当执行测试时,跟踪系统也可描述为交互,并且能与先前的交互进行比较。6.1一个序列图例子序列图强调消息的时间顺序,将交互表示成二维表。6.2交互一个交互interaction是一个行为单位,描述对象之间可观察的信息传递。一个交互所描述的行为往往与特定语境相关。6.3生命线一条生命线lifeline表示参与交互的一个实体或实体集合。6.4消息消息message是一种命名元素,在生命线之间表示一种特定通信。6.4消息-同步与异步同步调用synchCall:对一个操作的一个同步调用所发出的消息。应答reply:对一个操作调用的应答消息。异步调用asynchCall:对一个操作的一个异步调用所发出的消息。异步信号asynchSignal:异步发送信号动作所发出的消息。
6.4消息同步还是异步?6.4消息-创建与撤销创建消息createMessage:创建一条新生命线的消息。
撤销消息deleteMessage:终止一条生命线序列图中的消息类A具有名为doOne的方法和类型为B的属性,类B具有doTwo和doThree的方法PublicclassA{PrivateBmyB=newB();PublicvoiddoOne(){myB.doTwo();myB.doThree();}}6.4消息-消息的种类从发送者和接收者的角度,消息的种类有4种:complete:消息的发送者和接收者都完整描述。lost:描述了发送事件,但未描述接收事件。found:接收事件发生了,但未描述发送事件。
unknown:发送者和接收者都不清楚,这是不应出现的情形。6.5发生规范与执行规范在生命线上发生的事件主要是接收到消息或信号,而后执行一定的动作。发生规范occurrencespecification发生规范是系统执行过程中对某个“事件发生”所做的说明。
2.执行规范executionspecification执行规范(控制焦点)是对一条生命线中所执行的行为的描述。6.6组合片断一个组合片断(combinedfragment)定义了多个交互片断的一个“表达式”,由一个操作符(operator)和若干操作域(operand)组成,其中每个操作域是整个交互的一个结构化的子片断。缩写操作符操作域个数altAlternatives多个optOption1个breakBreak1个parParallel多个seqWeakSequencing多个strictStrictSequencing多个negNegative1个6.6组合片断6.7交互的使用在一个交互的定义中使用了另一个交互,这就是一个“交互使用interactionuse”,也称为引用(reference)一个交互,在图中表示为一个矩形框并用“ref”作为标签。6.8门门gate表示一个交互或交互片断的内部与外部之间的消息连接点。6.9增强生命线在一条生命线上,沿时间顺序,对象的状态受到一定的约束,可表示为状态不变式。生命线上可能执行一些重要的动作,这要求增强生命线的表达力。生命线上的状态不变式生命线上执行的动作6.10主动对象主动(active)对象是主动类的实例,一个类是主动类,当且仅当其实例持有自己的控制线程,能启动控制活动。主动类和主动对象6.11序列图建模技术如何采用序列图对交互进行建模?设置交互的语境。识别参与交互的对象。确定消息及消息的特征。增强交互的描述。与类图的协调性。明确序列图的作用。6.12序列图示例在Department类的语境中给出一个序列图序列图Department.setManagervoidsetManager(Personp){if(p!=null&&p.getDept()!=this)p.setDept(this);manager=p;}6.12序列图示例交互Person.setDept(d:Department)voidsetDept(Departmentd){if(this.isManager()&&this.getDept()!=d)this.getDept().setManager(null);dept=d;}Person类的一个方法6.13通信图通信图(communicationdiagram)也是用来对交互进行建模,它强调对象的组织结构。通信图通信图与序列图是同构的!两者可以互相转换6.13通信图一个通信图首先描述一个交互实现所涉及到的对象和链。通信图中的消息嵌套、并发与循环6.13通信图通信图与序列图都能表示交互,但强调不同的侧面。序列图能清晰地表示时间序列,但不能表示对象间关系。而通信图可以清楚地表示对象间关系,但时间序列就只能从序号中反映出来。序列图常用于表示交互的场景,而通信图则表示过程设计的结构。一旦过程的结构确定之后,序列图又擅长详尽表示控制的细节。所以,在建模过程中,这两种图之间扬长避短,相互配合。6.14计时图计时图timingdiagram是序列图的另一种表现方式,目的是清晰地表示生命线的状态改变与时间度量。计时图很大程度上借鉴了时序逻辑的表示方法。计时图:门禁系统6.14计时图计时图可表示多种时间约束6.15 交互纵览图交互纵览图Interactionoverviewdiagram也是一种交互图,使用了活动图的元素来描述控制流,而其中的一个结点则是一个交互或者交互使用,再用序列图来描述结点内部子活动或动作的细节。6.16小结一个交互是一个行为单位,描述一组对象之间可观察的信息传递。一个交互可以定义在一个类的语境中,也可以定义在一个协作的语境中。一个交互可用于描述一个用例或一个操作内部的消息流,即用消息流来描述用例或操作如何实现。一个交互的标签包括名字、形参、返回值,前置条件和后置条件。一个交互之内封装了一组生命线、生命线之间的消息、交互片断、门、动作、约束等内容。6.16小结序列图是描述交互的最重要的图,自上而下表示时间顺序,水平方向展开多条生命线。一条生命线表示参与交互的一个实体或实体集合。一个消息定义了交互中的一种特定通信,如调用一个操作、发出一个信号、创建或撤销一个实例等。发出一个同步调用需要等待一个应答消息,而异步调用或异步信号就没有应答。交互中创建一个对象就是创建一条新的生命线,撤销一个对象就是终止一条生命线。一种事件是在特定时间、地点发生的一类重要的事情。而一个事件发生则是某种事件的一个具体实例。发生规范是对事件发生的描述。6.16小结执行规范是对生命线中所执行的行为的描述,也称为控制焦点。组合片断用于对交互中的条件、循环、并发行等特性进行建模。一个交互的定义中可使用了另一个已定义的交互,就是一个交互使用,反映了交互之间的依赖关系。门表示一个交互或交互片断的内部与外部之间的消息连接点。在一条生命线上,沿时间顺序,对象的状态受到一定约束,可表示为状态不变式。生命线上也可能执行一些重要的动作。6.16小结主动类的对象持有自己的控制线程,能启动控制活动,称为主动对象。用序列图对交互建模需要一定的方法指导。如果一个序列图定义在一个类的语境中,它就说明了一个操作的具体实现,该图可转换为程序实现。通信图也能描述交互,基于类元或协作所提供的语境结构来表示交互。计时图是序列图的另一种表现方式,目的是清晰地表示生命线的状态改变与时间度量。交互纵览图也是一种交互图,使用了活动图的元素来描述控制流,而其中的一个结点则是一个交互或交互使用,再用序列图来描述结点内部子活动或动作的细节。6.16小结交互图中的主要元素课堂练习根据下图完成填空(4分)。1.1、在UML中,该图称为__________图,主要描述了______________________。1.2、图中的(1)和(2)分别表示的__________、___________。练习:某个网上银行的用户登录过程如下:用户先填写用户名和口令,要求登录。如果用户名和密码正确,则要求输入一个验证码。此时该用户的手机上将接受一个短信,包含一个验证码,用户再将此码填入下一个页面,再提交服务器。如果验证码正确,则能正常登录。验证码一次有效。用一个序列图描述这个过程。(提示:注意区分参与交互的所有实例:用户、Web客户端、Web服务器、用户手机。注意区分同步消息和异步信号。)要点:(1)抽取出4个
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 酒店管理经纪合同
- 网络营销合同范本合同协议速览
- 质量第一施工保证
- 国外材料采购合同的注意事项
- 软件开发服务合同
- 房屋宅基地买卖合同的重点提示
- 简单共享服务合同范本
- 观光电梯招标维修要求
- 室内外设计合同范本
- 网站策划合同样本
- 期中重难点卷(试题)-2024-2025学年数学六年级上册北师大版
- 财经素养知识考试题及答案
- 广东省深圳市2024年中考英语真题(含答案)
- Unit 5 TV Shows lesson 1(教学设计)-2024-2025学年人教新起点版英语五年级上册
- 十五五规划编制指导手册
- 2024年秋季学期新外研版英语三年级上册课件 Unit 6 第2课时(Speed up)
- 2024届川庆钻探工程限公司高校毕业生春季招聘10人高频500题难、易错点模拟试题附带答案详解
- 护理收费标准课件
- 人教版九年级物理全一册期末测试卷(附答案与解析)
- 期中测试卷(1-4单元)(试题)-2024-2025学年六年级上册数学
- (完整)六年级语文非连续性文本阅读训练
评论
0/150
提交评论