《统一建模语言(UML)》第4章 顺序图与协作图.ppt

《统一建模语言(UML)》第4章 顺序图与协作图.ppt

ID:56293166

大小:864.00 KB

页数:46页

时间:2020-06-09

《统一建模语言(UML)》第4章  顺序图与协作图.ppt_第1页
《统一建模语言(UML)》第4章  顺序图与协作图.ppt_第2页
《统一建模语言(UML)》第4章  顺序图与协作图.ppt_第3页
《统一建模语言(UML)》第4章  顺序图与协作图.ppt_第4页
《统一建模语言(UML)》第4章  顺序图与协作图.ppt_第5页
资源描述:

《《统一建模语言(UML)》第4章 顺序图与协作图.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、《统一建模语言(UML)》第4章顺序图与协作图4.1交互图概述Interactiondiagram,是描述对象之间的关系和对象之间的信息传递的图;通常用来描述一个用例的行为,实现一个用例,完成对系统的动态行为建模;包含两种:顺序图(或时序图,sequencediagram)协作图(collaborationdiagram)顺序图面向时间描述对象交互的图协作图对象间消息的结构化视图4.2顺序图按照时间顺序显式对象之间交互的图4.2.1顺序图的组成活动者(actor)或者对象(object)生命线(lifeline)激活(activation)/控

2、制焦点(focusofcontrol)消息(message)4.2.2活动者或对象活动者和对象按照从左到右的顺序排列一般最多两个活动者,他们分列两端。启动这个用例的活动者往往排在最左边;接收消息的活动者则排在最右端;对象从左到右按照重要性排列或按照消息先后顺序排列。4.2.2活动者或对象对象的命名方式有三种:包括对象名和类名类名(匿名对象)对象名(不关心类)4.2.3生命线生命线(Lifeline):每个对象都有自己的生命线,用来表示在该用例中一个对象在一段时间内的存在垂直的虚线如果对象生命期结束,则用注销符号表示对象默认的位置在图顶部,表示对

3、象在交互之前已经存在如果是在交互过程中由另外的对象所创建,则位于图的中间某处。4.2.4激活期激活期(activation)/控制焦点(focusofcontrol)对象在一段时间内获得了焦点,也称激活期对象执行某个动作的时期空心矩形条激活期的长短意味着对象执行某个动作的时间有多长,可以通过约束{10ms}来限制执行时间的长短。4.2.5消息面向对象方法中,消息是对象间交互信息的主要方式。结构化程序设计中,模块间传递信息的方式主要是过程(或函数)调用。对象A向对象B发送消息,可以简单地理解为对象A调用对象B的一个操作(operation)。4.

4、2.5消息顺序图中,尽力保持消息的顺序是从左到右排列的。一个顺序图的消息流开始于左上方,消息2的位置比消息1低,这意味着消息2的顺序比消息1要迟。因为西方的阅读习惯是从左到右。顺序图中消息编号可显示,也可不显示。协作图中必须显示。4.2.5消息UML三种消息:调用(ProcedureCall)异步(Asynchronous)返回(Return)Rose扩充:阻止(Balking)超时(Time-out)4.2.5消息UML三种消息:调用(ProcedureCall)发送者把消息发送后,等待直到接收者返回控制,可以表示同步;实心箭头符号4.2.5

5、消息UML三种消息:异步(Asynchronous)消息发送后,发送者继续操作,不等待,常用于并发;4.2.5消息UML三种消息:返回(Return)表示消息的返回。消息上方放置返回值同步消息的返回可以画出(如果想明确表达返回值),也可以不画出,直接隐含。异步消息可以有返回,也可以没有。(可以响应异步消息,也可以不响应该异步消息。)如果顺序图上显示有编号,则返回消息的编号和当初发送消息的编号完全一样。虚线箭头表示,和依赖关系不要混淆4.2.5消息自调用(SelfCall)某对象自己调用自己的操作UML标记(嵌套的矩形条)Rose标记4.2.5消

6、息Rose新增消息阻止(Balking)接收者如果无法立即接收消息,则发送者放弃该消息超时(Time-out)如果接收者无法在指定的时间内接收消息,则发送者放弃该消息Q:这两种消息可以看做是同步or异步消息?4.2.5消息格式[前缀][守卫条件][顺序表达式][返回值:=]消息名([参数列表])例:2:display()简单消息1.3.1:p:=find()带返回值的嵌套消息[x<0]4:invert(x,color)条件消息3.1*[x=1..10]:update()循环消息a3,b4/c2:copy(a,b)线程同步1.1a,1.1b/1.

7、2:continue()带前缀消息在发送线程c的第2个消息之前,必须先发送线程a的第3个消息和线程b的第4个消息在发送消息1.2之前必须已经同时发送并发消息给线程a和b前缀(predecessor)语法:消息序列号,消息序列号,.../前缀是一个用来同步线程或路径(path)的表达式意思是在发送当前消息之前指定序列号的消息被处理(必须连续执行)消息序列号之间用逗号隔开,用斜杠结束例如1.1a,1.1b/1.2:continue(),在发送消息1.2之前必须已经同时发送并发消息给线程a和b守卫条件(guard-condition)语法:[条件短语

8、]条件短语通常用伪代码或真正的程序语言来表示,UML并不规定其语法例如,[x<0]4:invert(x,color)序列表达式(sequence-ex

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。