交互图(序列协作)_第1页
交互图(序列协作)_第2页
交互图(序列协作)_第3页
交互图(序列协作)_第4页
交互图(序列协作)_第5页
已阅读5页,还剩48页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、交互图,交互图概述 序列图的定义和作用 序列图的组成元素 协作图,交互图概述,交互图(Interaction Diagram) 描述对象之间的关系 描述对象之间的信息传递 作用 通常用来描述某个用例的行为 为实现某个用例,为系统的动态行为建模 种类 序列图(Sequence Diagram) 协作图(Collaboration Diagram),序列图(sequence diagram),定义:描述对象之间的消息交互的二维图 又称“时序图”或“顺序图” 横向:代表在协作中各独立对象的角色 纵向:时间轴,沿竖线向下延伸。 用于强调消息在时间轴上的先后顺序,序列图(sequence diagram

2、),作用: 通常用来描述用例的实现:表明了由哪些对象,通过消息相互协作来实现用例的功能 可以根据对象之间的交互关系来定义类的职责,序列图(sequence diagram),自动车锁系统中的锁车用例,序列图的组成元素,组成元素 对象 生命线:表示对象的生存期 激活(控制焦点):表示对象正在执行某个操作 消息:表示对象之间的通讯,生命线,激活,对象,顺序图的组成,消息,对象,序列图中的对象 系统的参与者 任何有效的系统对象 对象的表示形式 图形:包围名称的矩形框 名称:对象名 :类名 特点:下部有一条被称为“生命线”的垂直虚线,对象,对象的类型 Persistence(持续性) Persiste

3、nt(持续):对象能够保存在数据库或其它持续存储器中 Static(静态):保存在内存中,直至程序终止才会销毁 Transient(临时):临时保存在内存中,对象,对象的位置 对象置于顺序图的顶部:意味着在交互开始的时候对象就已经存在 对象的位置不在顶部:表示对象是在交互的过程中被创建的 主角:一个交互的发起对象,通常在最左边 反应系统角色:与主角交互的对象,通常在图的右边,生命线,生命线(Lifeline) 对象的底部中心位置的一条垂直的虚线 这是一个时间线,其长度取决于交互持续的时间,用来表示对象在一段时间内的存在 对象存在的时段 对象在拥有控制线程时 被动对象被外部调用时,销毁对象,激活

4、/控制焦点(Focus of Control),在对象的生命线上,包含一个矩形,表示对象处于激活状态 处于激活状态的对象正在执行某个任务 对象在完成自己的工作后,去除激活,处于空闲状态 顶端与激活时间对齐,底端与完成时间对齐,激活/控制焦点,可以通过修改Options中的Diagram来决定是否显示激活状态。,消息,消息的定义: 一个对象(发送者)向另一个或几个其他对象(接收者)发送信息号 一个对象(调用者)调用另一个对象(被调用者)的操作 消息的组成 包括消息号、消息名、消息参数。 例如:1.login(uName, uPwd),不同类型的消息,不同类型的消息,不同类型的消息,Synchro

5、nization(同步性) Simple(常规) Synchronous(同步) Balking(阻止) Timeout(超时) Procedure Call(过程调用) Asynchronous(异步) Return(返回) Frequency(频率) Periodic(定期):按照固定时间间隔发送 Aperiodic(不定期):只发送一次,或者在不规则的时间发送,不同类型的消息,序列图的绘制顺序,练习1:绘制序列图,仓库管理员处理产品入库工作流程,基本工作流程如下: 1.仓库管理员将通过库存管理子系统将生产的产品处理入库。 2.仓库管理员通过库存管理子系统中的产品入库界面获取产品信息。 3

6、.产品入库界面根据产品的编号将产品类实例化并请求该类产品信息。 4.产品类实例化对象根据产品的编号加载产品信息,并提供给产品入库界面。 5.仓库管理员通过产品入库界面增加产品数目。 6.产品入库界面通过产品类实例化对象修改产品信息。 7.产品类实例化对象向产品入库界面返回修改信息。 8.产品入库界面向仓库管理员显示添加成功信息。,练习1:绘制序列图,练习2,为ATM存款用例绘制一个序列图,转账用例序列图,练习3,为选课系统中的选课用例绘制序列图。假设学生已经成功登陆系统,选择的事件可以简化如下: 选课事件: 1.进入选课主界面。 2.点击选课。 3.系统显示所有课程信息。 4.学生选择课程。

7、5.系统验证课程是否可选。 6.系统提示课程选择成功,提示学生交费。 7.用例结束。 错误事件: 5A: 课程不可选。 5A1:系统提示课程不可选原因。、 5A2:重新选课。,练习3,练习3(查询课程),练习4:绘制序列图,以饮料自动销售系统为例,对“买饮料”的种场景进行建模,对每一个场景,绘制其对应的顺序图 1)买饮料的正常场景,基本事件流如下: (1)顾客从机器的前端钱币口投入钱币,然后选择想要的饮料 (2)钱币到达钱币记录仪,记录仪更新自己的存储 (3)记录仪通知分配器分发饮料到机器前端 2)饮料“已售完”的场景 3)机器没有合适的零钱的场景,练习4:绘制序列图,1)买饮料的“正常”场景

8、,练习4:绘制序列图,2)饮料“已售完”的场景,练习4:绘制序列图,3)“没有合适的零钱”的场景,练习5:绘制序列图,打印文件 用户通过计算机向打印服务器发送打印命令 打印机如果空闲,则直接执行打印操作 否则,将打印文件存储在打印队列之中,练习5:绘制序列图,借书处理(需求描述),读者在借书时,先由管理员把借书证上的读者编号扫描给系统,系统检查这个读者的借书证合法信息;如果不合法,则系统给出提示,如果正确系统返回读者的身份信息,以及读者的借阅信息。 如果读者借书数量没有超过借书的上限,则把要借书的图书编号输入系统,系统登记借书信息,并返回借书成功信息,借书过程完成,图书馆借书处理的顺序图,用例

9、:借书 参与者:管理员,借阅者 基本事件流: 1. 借阅者带着借书证和书来到柜台。 2. 管员输入借阅者的借书证编码。 3. 系统检查借阅者的合法性。 4. 系统显示借阅者的信息。 5. 系统检查借阅者的借阅信息。 6. 管员输入所借图书的条码。 7. 系统显示所借图书的信息,并登记图书。 管员重复67步,直到结束。 8. 系统登记借阅者的本次借阅信息,并显示。 扩展事件流: 3a. 借阅者身份非法,则提示,本次拒借。 5a. 该借阅者所借图书中有超期的, 则提示, 本次拒借。 5b. 该借阅者所借图书数量超过了上限, 则提示, 本次拒借。,还书处理(需求描述),读者在还书时,先由管理员把所借

10、图书的图书编号扫描给系统,系统接收到这个信息,则显示这个该读者信息,以及这本书的信息。 管理员确认还书,则系统登记还书信息,并返回还书成功信息,还书过程完成。,图书馆还书处理的序列图,用例:还书 参与者:管理员,借阅者 操作流: 管理员进入图书借阅界面,用例开始。 系统要求输入所还图书的条码。 系统显示所还图书的图书、读者、借阅等信息 确认还书。 系统回到上一界面,等待处理下一业务。,图书馆还书处理的序列图,协作图 Collaboration Diagram,协作: 在一定的语境中,一组用以实现某些行为的对象之间的相互作用 它描述了若干对象为实现某种目的,而组成相互合作的“对象社会” 协作图:

11、表现对象协作关系的图 是对“对象图”的扩展(增加消息传递) 序列图和协作图可以相互转化 强调:参与交互对象的角色位置与组织关系,组成协作图的元素对象,对象的角色表示一个或一组对象在完成目标的过程中所应起的那部分作用。 不需要关于某个类的所有对象都出现 同一个类的对象可能充当多个角色 表示形式 和序列图中的对象的表示方式基本一样 与序列图不同的是,协作图中的对象的下部没有 “生命线”,并且对象存在多对象的形式,组成协作图的元素消息,作用:通过一系列的消息来描述系统的动态行为 表示形式: 每个消息包括一个顺序号以及消息的名称 使用带有标签的箭头来表示,箭头指向接收者 附在连接发送者和接收者的链上

12、消息的名称也可以是一个方法,包含一个名字和参数表、可选的返回值表。,组成协作图的元素链,在协作图中的链和对象图中链的概念和表示形式都相同,都是两个或多个对象之间的独立连接。 链的表示形式 普通:连接在两个对象之间的线或弧。 自身关联:两端指向同一对象的回路,是一条弧。,多重对象,多个对象的集合,往往是同类对象 用于表示:同一消息同时发给多个对象 在顺序图中仍然显示为单一对象的图标,练习,画出对应的顺序图,答案,练习:协作图,练习:协作图,顺序图与协作图的关系,顺序图与协作图都表示对象之间的交互作用,只是侧重点有所不同: 顺序图描述了对象交互的时间顺序,但没有明确地表达对象之间的关系(多用于用例

13、描述) 协作图描述了对象在交互中承担的角色,但对象在交互中的时间顺序必须从消息的顺序号获得(多用于详细设计时对象关系的描述) 顺序图可以表示出对象的激活状态和非激活状态,也可以表示出对象的创建和销毁的相对时间;协作图则没有这些功能。 两种图的语义是等价的,可以采用Rational Rose工具相互转化,而不丢失任何信息。,练习,用例“新增书籍” 基本事件流 图书管理员向系统发出“新增书籍信息“请求。 系统要求图书管理员选择要新增的书籍是计算机类还是非计算机类。 图书管理员做出选择后,显示相应界面,让图书管理员输入信息,并自动根据书号规则生成书号。 图书管理员输入书籍的相关信息,包括:书名、作者、出版社、ISBN号、开本、页数、定价、是否有CD-ROM。 系统确定输入的信息中书名没有重复。 系统将所输入的信息存储建档。,练习,扩展事件流 如果输入的书名有重名现象,则显示

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论