第6-顺序图和协作图.pptx
《第6-顺序图和协作图.pptx》由会员分享,可在线阅读,更多相关《第6-顺序图和协作图.pptx(46页珍藏版)》请在咨信网上搜索。
1、第6章 顺序图和协作图 顺序图(顺序图(Sequence Diagram)和协作图)和协作图(Communication Diagram)统称交互图,用来)统称交互图,用来描述系统中多个对象之间的相互关系及对象间消息描述系统中多个对象之间的相互关系及对象间消息传递,用于对系统中多个对象的相互作用的过程进传递,用于对系统中多个对象的相互作用的过程进行建模行建模。在面向对象分析过程中,可以使用顺序图来描述完在面向对象分析过程中,可以使用顺序图来描述完成一个用例的过程,使用协作图来分析系统中的对成一个用例的过程,使用协作图来分析系统中的对象和对象之间传递的消息。象和对象之间传递的消息。6.1 顺序图
2、概述 顺序图的主要用途之一是用来为某个用例的泛化顺序图的主要用途之一是用来为某个用例的泛化功能提供其所缺乏的解释,即把用例表达的需求,功能提供其所缺乏的解释,即把用例表达的需求,转化为进一步、更加正式层次的精细表达。转化为进一步、更加正式层次的精细表达。顺序图描述了对象之间传递消息的时间顺序,用顺序图描述了对象之间传递消息的时间顺序,用来表示用例中行为顺序。用例常常被细化为一个来表示用例中行为顺序。用例常常被细化为一个或多个的顺序图。或多个的顺序图。顺序图用一个二维图描述系统中各个对象之间的交顺序图用一个二维图描述系统中各个对象之间的交互关系。互关系。主要由四个标记符组成:对象、生命线、主要由
3、四个标记符组成:对象、生命线、消息和激活。消息和激活。6.1 顺序图概述 在顺序图中参加交互的各个对象沿横轴排列,发在顺序图中参加交互的各个对象沿横轴排列,发起交互的对象通常放在左边,其他对象依次放在起交互的对象通常放在左边,其他对象依次放在右边。这些对象发送和接收的消息沿纵轴方向右边。这些对象发送和接收的消息沿纵轴方向按按时间顺序时间顺序从上到下放置。该在顺序图中纵轴为从上到下放置。该在顺序图中纵轴为时时间轴间轴。顺序图清晰地描述了系统随时间推移的控制流轨顺序图清晰地描述了系统随时间推移的控制流轨迹。迹。图中每个对象在单独的一列中,每个对象符图中每个对象在单独的一列中,每个对象符号放置在代表
4、生成对象消息的箭头末端,其垂直号放置在代表生成对象消息的箭头末端,其垂直位置表示该对象第一次生成的时间。位置表示该对象第一次生成的时间。6.2 顺序图元素 顺序图描述了对象以及对象之间传递的消息,强顺序图描述了对象以及对象之间传递的消息,强调对象之间的交互是按照时间的先后顺序发生的,调对象之间的交互是按照时间的先后顺序发生的,这些特定顺序发生的交互序列从开始到结束需要这些特定顺序发生的交互序列从开始到结束需要一定的时间。一定的时间。在顺序图中主要包括了以下四种元在顺序图中主要包括了以下四种元素:素:对象对象生命线生命线激活激活消息消息6.2 顺序图元素 类定义了对象可执行的各种行为,但在面向对
5、象类定义了对象可执行的各种行为,但在面向对象系统中,行为的执行者是对象,而不是类,因此系统中,行为的执行者是对象,而不是类,因此在顺序图中通常描述的是对象层次而不是类层次在顺序图中通常描述的是对象层次而不是类层次。面向对象分析中最基本的单位是对象,它代表现面向对象分析中最基本的单位是对象,它代表现实世界中一个一个地具体事物。实世界中一个一个地具体事物。在顺序图中使用一个方框表示在顺序图中使用一个方框表示一个对象,对象的名字下面有一一个对象,对象的名字下面有一个下划线,一个学生对象个下划线,一个学生对象“张三张三”如图所示。如图所示。6.2.1 对象对象 张三6.2 顺序图元素 在顺序图中也可以
6、使用用例图中的在顺序图中也可以使用用例图中的参与者图符参与者图符。如果一个对象在顺序图的第一个操作之前就已经如果一个对象在顺序图的第一个操作之前就已经存在,那么该对象的图符就应该存在,那么该对象的图符就应该画在顺序图的顶画在顺序图的顶部部。如果一个对象是在顺序图的交互过程中,由其他如果一个对象是在顺序图的交互过程中,由其他对象创建的,那么该对象就不应该出现在顺序图对象创建的,那么该对象就不应该出现在顺序图的顶端,而应该的顶端,而应该出现在创建该对象消息的末端出现在创建该对象消息的末端。6.2 顺序图元素 对象在垂直方向拖出的虚线是对象的生命线,用对象在垂直方向拖出的虚线是对象的生命线,用于表示
7、对象是存在的时间范围。于表示对象是存在的时间范围。对象的生命线是一个时间线,从顺序图的顶部一对象的生命线是一个时间线,从顺序图的顶部一直延续到顺序图的底部,所用的长度取决于交互直延续到顺序图的底部,所用的长度取决于交互的维持长度。的维持长度。6.2.2 生命线生命线 6.2 顺序图元素 对象生命线上的窄矩形条被称为激活,激活表示对象生命线上的窄矩形条被称为激活,激活表示该对象正在执行某个操作该对象正在执行某个操作,图符如图所示。激活,图符如图所示。激活条的长短表示执行操作的时间。一个被激活的对条的长短表示执行操作的时间。一个被激活的对象要么执行自己的代码,要么等待另一个对象的象要么执行自己的代
8、码,要么等待另一个对象的返回结果。返回结果。6.2.3 激活激活 6.2 顺序图元素 激活在顺序图中不能够单独存在必须与生命线连激活在顺序图中不能够单独存在必须与生命线连在一起使用在一起使用,当一条消息被传递给对象的时候,当一条消息被传递给对象的时候,该消息将触发该对象的某个行为,此时该对象就该消息将触发该对象的某个行为,此时该对象就被激活了。被激活了。通常情况下,通常情况下,表示激活的矩形的顶点是消息和生表示激活的矩形的顶点是消息和生命线交汇的地方,表示对象从此时起开始获得控命线交汇的地方,表示对象从此时起开始获得控制权,而矩形的底部则表示该次交互已经结束,制权,而矩形的底部则表示该次交互已
9、经结束,或对象的已经交控制权交出或对象的已经交控制权交出。6.2 顺序图元素 在顺序图中,对象都不是孤立存在的,这些对象在顺序图中,对象都不是孤立存在的,这些对象之间是通过消息进行通讯。之间是通过消息进行通讯。对象通过相互传递消对象通过相互传递消息来进行相互作用。使用消息是用来说明顺序图息来进行相互作用。使用消息是用来说明顺序图中不同活动对象之间的通信过程。一个消息可以中不同活动对象之间的通信过程。一个消息可以激发一个对象的某个操作,完成一定的功能。激发一个对象的某个操作,完成一定的功能。6.2.4 消息消息 顺序图中,顺序图中,消息由从一个对象的生命线指向另一消息由从一个对象的生命线指向另一
10、个对象的生命线的直线箭头表示,箭头上标注要个对象的生命线的直线箭头表示,箭头上标注要发送的消息名。发送的消息名。在消息的起点隐含着发送事件,在消息的起点隐含着发送事件,消息的终点隐含着接收事件消息的终点隐含着接收事件。6.2 顺序图元素 在顺序图中消息的次序是由它们在垂直轴上的位在顺序图中消息的次序是由它们在垂直轴上的位置来决定的置来决定的,在垂直轴上靠上的消息先发送,靠,在垂直轴上靠上的消息先发送,靠下的消息后发送。下的消息后发送。在在UML中,中,消息的发送方和消息的接收方可以是消息的发送方和消息的接收方可以是同一个对象同一个对象。也就是说,对象也可以将消息发送。也就是说,对象也可以将消息
11、发送给自己本身,也就是自己给自己发送消息给自己本身,也就是自己给自己发送消息 在在UML中,每一条消息可以带有一个名称说明,中,每一条消息可以带有一个名称说明,可以带参数。可以带参数。消息还可以包含条件以限制它们只消息还可以包含条件以限制它们只在满足条件时才能被发送。条件标注在消息的名在满足条件时才能被发送。条件标注在消息的名称上的方括号中。称上的方括号中。6.2 顺序图元素 从消息和消息端的元模型可以得知,消息包含了从消息和消息端的元模型可以得知,消息包含了消息种类(消息种类(message kind)和和消息性质消息性质(message sort)两个属性。两个属性。消息中包括四种消息种类
12、:消息中包括四种消息种类:完完整整消消息息(complete message):一一般般常常见见的的消消息息都都是是完完整整消消息息,该该消消息息的的发发送送事事件件和和接接受受事事件件都是存在的。都是存在的。迷迷途途消消息息(lost message):只只有有发发送送事事件件,但但没没有有接接收收事事件件的的消消息息称称为为迷迷途途消消息息,对对于于迷迷途途消消息息,在在表表示示时时需需要要在在消消息息的的箭箭头头端端加加上上一一个个实实心心的小圆。的小圆。6.2 顺序图元素 寻寻获获消消息息(found message):缺缺少少了了发发送送事事件件,只只有有接接收收事事件件的的消消息息
13、称称为为寻寻获获消消息息。对对于于寻寻获获消消息息,在在表表示示时时需需要要在在消消息息的的非非箭箭头头端端加加上上一一个个实实心的小圆。心的小圆。未未知知消消息息(unknown message):既既没没有有发发送送事事件件,也也没没有有接接收收事事件件的的消消息息称称为为未未知知消消息息。对对于于未未知知消消息息,UML中中也也没没有有详详细细说说明明这这种种消消息息,也也许这个消息在实际应用时并不真实存在。许这个消息在实际应用时并不真实存在。6.2 顺序图元素 根据通信性质的不同根据通信性质的不同,UML中定义了几种消息的中定义了几种消息的性质。在性质。在UML 2.0规格书中,定义了
14、规格书中,定义了四种四种消息性消息性质,在质,在UML 2.1.1中,消息性质从原来的四种变中,消息性质从原来的四种变为了为了六种六种,这是,这是UML中变化比较大的部分。中变化比较大的部分。创创建建消消息息(createMessage):用用来来创创建建对对象象的的消消息息,称称为为创创建建消消息息。它它的的图图符符是是带带开开放放性性箭箭头头的虚线,箭头的指向目标对象,如下图所示。的虚线,箭头的指向目标对象,如下图所示。6.2 顺序图元素 同步调用(同步调用(synchCall):):同步调用消息代表一个同步调用消息代表一个操作调用的控制流。同步调用消息的发送方把控操作调用的控制流。同步调
15、用消息的发送方把控制传递给消息的接收者,然后暂停活动,等待消制传递给消息的接收者,然后暂停活动,等待消息接受者的应答,收到应答后才继续自己的操作。息接受者的应答,收到应答后才继续自己的操作。同步调用消息被水平的置于对象的生命线之间,同步调用消息被水平的置于对象的生命线之间,水平放置的方式说明消息的传递是瞬时的,即消水平放置的方式说明消息的传递是瞬时的,即消息在发出之后会马上被收到。它的图符是带实心息在发出之后会马上被收到。它的图符是带实心箭头的实现,如下图所示。箭头的实现,如下图所示。6.2 顺序图元素 回复消息(回复消息(reply message):):目标对象执行结束目标对象执行结束时,
16、会发出回复消息给来源对象。它的图符是带时,会发出回复消息给来源对象。它的图符是带开放式箭头的虚线,从负责执行的目标对象反向开放式箭头的虚线,从负责执行的目标对象反向指回给来源对象,如下图所示。指回给来源对象,如下图所示。异步调用(异步调用(asynchCall):):异步调用消息表示消异步调用消息表示消息的发送对象不用等待消息接收对象回应的返回息的发送对象不用等待消息接收对象回应的返回消息,即可以开始另一个活动。异步调用消息在消息,即可以开始另一个活动。异步调用消息在某种程度上规定了发送方和接收方的责任,即发某种程度上规定了发送方和接收方的责任,即发送方只负责将消息发送到接收方,至于接收方如送
17、方只负责将消息发送到接收方,至于接收方如何响应,发送方则不需要知道。何响应,发送方则不需要知道。6.2 顺序图元素 最常见的实现异步消息的方式是使用线程。最常见的实现异步消息的方式是使用线程。当系当系统发送异步消息时,需要启动一个线程在后台运统发送异步消息时,需要启动一个线程在后台运行。异步调用的图符如下图所示。行。异步调用的图符如下图所示。异步信号(异步信号(asynchSignal):):同步信号消息和异同步信号消息和异步信号消息的区别在于,消息发送对象是否等待步信号消息的区别在于,消息发送对象是否等待目标执行结束才继续往下执行。异步信号消息类目标执行结束才继续往下执行。异步信号消息类似于
18、最常用的简单消息,一般情况下,如果不必似于最常用的简单消息,一般情况下,如果不必强调消息的性质,则可以使用异步信号消息代表强调消息的性质,则可以使用异步信号消息代表其他性质的消息。它的图符如下图所示。其他性质的消息。它的图符如下图所示。6.4 顺序图理解 下图给出了一个图书超期检查系统的顺序图示例,下图给出了一个图书超期检查系统的顺序图示例,用来描述图书馆中图书超期检查的过程。参与图用来描述图书馆中图书超期检查的过程。参与图书检查的对象有四个:书检查的对象有四个:系统、图书、读者及通知系统、图书、读者及通知单单。PrintNotice()CheckAllBooks()CheckTimeExce
19、ding()GetBookInformations()GetReaderInformations()Create()系统图书读者通知单6.4 顺序图理解 对象对象“系统系统”是图书管理系统中的一个控制程序,是图书管理系统中的一个控制程序,它负责定期检查是否有超期图书;它负责定期检查是否有超期图书;“图书图书”对象对象是图书馆中的每一本具体的图书;是图书馆中的每一本具体的图书;“读者读者”对象对象是借阅图书的某个具体的读者;是借阅图书的某个具体的读者;“通知单通知单”对象对象是一个具体的超期通知单。是一个具体的超期通知单。通过图中对象的放置位置可以看出,对象通过图中对象的放置位置可以看出,对象“
20、系统系统”、“图书图书”和和“读者读者”是在发送第一条消息前是在发送第一条消息前就存在的,而对象就存在的,而对象“通知单通知单”的位置没有在顺序的位置没有在顺序图的顶端,它是在消息发送的过程中,通过对象图的顶端,它是在消息发送的过程中,通过对象“系统系统”发送的发送的“Create”消息创建的。消息创建的。6.4 顺序图理解 上图描述的超期检查过程如下:上图描述的超期检查过程如下:第一步第一步,系统程序对象负责定期对所有外借图书,系统程序对象负责定期对所有外借图书进行超期检查,每次检查时首先发送消息进行超期检查,每次检查时首先发送消息“CheckAllBooks”,用来检查所有外借图书,获,用
21、来检查所有外借图书,获取图书借阅时间和期限信息。取图书借阅时间和期限信息。第二步第二步,系统程序对象向对象,系统程序对象向对象“图书图书”发送消息发送消息“CheckTimeExceding”检测每一本外借图书是否检测每一本外借图书是否超期。超期。第三步第三步,系统程序对象向对象,系统程序对象向对象“图书图书”发送消息发送消息“GetBookInformations”来获取超期图书的信息。来获取超期图书的信息。6.4 顺序图理解 第四步第四步,系统程序对象向对象根据超期图书信息,系统程序对象向对象根据超期图书信息向相应的向相应的“读者读者”对象发送消息对象发送消息“GetReaderInfor
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 顺序 和协 作图
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【w****g】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【w****g】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。