资源描述
交互图交互图概述序列图的定义和作用序列图的组成元素协作图交互图交互图概述交互图概述交互图(Interaction Diagram)描述对象之间的关系描述对象之间的信息传递作用通常用来描述某个用例的行为为实现某个用例,为系统的动态行为建模种类序列图(Sequence Diagram)协作图(Collaboration Diagram)交互图概述交互图(Interaction Diagram)序列图(sequence diagram)定义:描述对象之间的消息交互的二维图又称“时序图”或“顺序图”横向:代表在协作中各独立对象的角色纵向:时间轴,沿竖线向下延伸。用于强调消息在时间轴上的先后顺序序列图(sequence diagram)定义:描述对象之间序列图(sequence diagram)作用:通常用来描述用例的描述用例的实现实现:表明了由哪些对象,通过消息相互协作来实现用例的功能可以根据对象之间的交互关系来定定义类义类的的职责职责序列图(sequence diagram)作用:序列图(sequence diagram)自动车锁系统中的锁车用例序列图(sequence diagram)自动车锁系统中的锁序列图的组成元素组组成元素成元素 对对象象生命生命线线:表示对象的生存期激活激活(控制焦点):表示对象正在执行某个操作消息消息:表示对象之间的通讯生命线激活对象顺顺序序图图的的组组成成消息 序列图的组成元素组成元素 生命线激活对象顺序图的组成消息 对象序列序列图图中的中的对对象象系统的参与者任何有效的系统对象对对象的表示形式象的表示形式图形:包围名称的矩形框名称:对象名:类名特点:下部有一条被称为“生命线”的垂直虚线对象序列图中的对象对象对对象的象的类类型型Persistence(持(持续续性)性)Persistent(持(持续续):):对对象能象能够够保存在数据保存在数据库库或其它持或其它持续续存存储储器中器中Static(静(静态态):保存在内存):保存在内存中,直至程序中,直至程序终终止才会止才会销销毁毁Transient(临时临时):):临时临时保保存在内存中存在内存中对象对象的类型对象对对象的位置象的位置对对象置于象置于顺顺序序图图的的顶顶部:部:意味着在交互开始的时候对象就已经存在对对象的位置不在象的位置不在顶顶部:部:表示对象是在交互的过程中被创建的主角:主角:一个交互的发起对象,通常在最左边反反应应系系统统角色:角色:与主角交互的对象,通常在图的右边对象对象的位置生命线生命线(Lifeline)对象的底部中心位置的一条垂直的虚线这是一个时间线,其长度取决于交互持续的时间,用来表示对象在一段时间内的存在对象存在的时段对象在拥有控制线程时被动对象被外部调用时销销毁毁对对象象生命线生命线(Lifeline)销毁对象激活/控制焦点(Focus of Control)在对象的生命线上,包含一个矩形,表示对象处于激活状态处于激活状态的对象正在执行某个任务对象在完成自己的工作后,去除激活,处于空闲状态顶端与激活时间对齐,底端与完成时间对齐激活/控制焦点(Focus of Control)在对象的生激活/控制焦点可以通过修改Options中的Diagram来决定是否显示激活状态。激活/控制焦点可以通过修改Options中的Diagram来消息消息的定义:一个对象(发送者)向另一个或几个其他对象(接收者)发送信息号一个对象(调用者)调用另一个对象(被调用者)的操作消息的组成包括消息号、消息名、消息参数。例如:1.login(uName,uPwd)消息消息的定义:不同类型的消息不同类型的消息不同类型的消息不同类型的消息不同类型的消息Synchronization(同步性)(同步性)Simple(常规)Synchronous(同步)Balking(阻止)Timeout(超时)Procedure Call(过程调用)Asynchronous(异步)Return(返回)Frequency(频频率)率)Periodic(定期):按照固定时间间隔发送Aperiodic(不定期):只发送一次,或者在不规则的时间发送不同类型的消息Synchronization(同步性)不同类型的消息不同类型的消息序列图的绘制顺序序列图的绘制顺序练习1:绘制序列图仓库管理员处理产品入库工作流程,基本工作流程如下:1.仓库管理员将通过库存管理子系统将生产的产品处理入库。2.仓库管理员通过库存管理子系统中的产品入库界面获取产品信息。3.产品入库界面根据产品的编号将产品类实例化并请求该类产品信息。4.产品类实例化对象根据产品的编号加载产品信息,并提供给产品入库界面。5.仓库管理员通过产品入库界面增加产品数目。6.产品入库界面通过产品类实例化对象修改产品信息。7.产品类实例化对象向产品入库界面返回修改信息。8.产品入库界面向仓库管理员显示添加成功信息。练习1:绘制序列图仓库管理员处理产品入库工作流程,基本工作流练习1:绘制序列图练习1:绘制序列图练习2为ATM存款用例绘制一个序列图练习2为ATM存款用例绘制一个序列图交互图(序列+协作)课件转账转账用例序列用例序列图图转账用例序列图练习3为选课系统中的选课用例绘制序列图。假设学生已经成功登陆系统,选择的事件可以简化如下:选课事件:1.进入选课主界面。2.点击选课。3.系统显示所有课程信息。4.学生选择课程。5.系统验证课程是否可选。6.系统提示课程选择成功,提示学生交费。7.用例结束。错误事件:5A:课程不可选。5A1:系统提示课程不可选原因。、5A2:重新选课。练习3为选课系统中的选课用例绘制序列图。假设学生已经成功登陆练习3练习3练习3(查询课程)练习3(查询课程)练习4:绘制序列图以饮料自动销售系统为例,对“买饮料”的种场景进行建模,对每一个场景,绘制其对应的顺序图1)买饮料的正常场景,基本事件流如下:(1)顾客从机器的前端钱币口投入钱币,然后选择想要的饮料(2)钱币到达钱币记录仪,记录仪更新自己的存储(3)记录仪通知分配器分发饮料到机器前端2)饮料“已售完”的场景3)机器没有合适的零钱的场景练习4:绘制序列图以饮料自动销售系统为例,对“买饮料”的种练习4:绘制序列图 1 1)买饮买饮料的料的“正常正常”场场景景练习4:绘制序列图 1)买饮料的“正常”场景练习4:绘制序列图 2 2)饮饮料料“已售完已售完”的的场场景景练习4:绘制序列图 2)饮料“已售完”的场景练习4:绘制序列图3 3)“没有合适的零没有合适的零钱钱”的的场场景景练习4:绘制序列图3)“没有合适的零钱”的场景练习5:绘制序列图打印文件打印文件用户通过计算机向打印服务器发送打印命令打印机如果空闲,则直接执行打印操作否则,将打印文件存储在打印队列之中练习5:绘制序列图打印文件练习5:绘制序列图练习5:绘制序列图借书处理(需求描述)读读者在借者在借书时书时,先由管理,先由管理员员把借把借书证书证上的上的读读者者编编号号扫扫描描给给系系统统,系,系统检查这统检查这个个读读者的借者的借书证书证合法信息;如果不合法合法信息;如果不合法,则则系系统给统给出提示,如果正确系出提示,如果正确系统统返回返回读读者的身份信息,以者的身份信息,以及及读读者的借者的借阅阅信息。信息。如果如果读读者借者借书书数量没有超数量没有超过过借借书书的上限,的上限,则则把要借把要借书书的的图图书编书编号号输输入系入系统统,系,系统统登登记记借借书书信息,并返回借信息,并返回借书书成功信成功信息,借息,借书过书过程完成程完成借书处理(需求描述)读者在借书时,先由管理员把借书证上的读者图书馆借书处理的顺序图用例:用例:借借书书参与者:参与者:管理管理员员,借借阅阅者者基本事件流:基本事件流:1.借借阅阅者者带带着借着借书证书证和和书书来到柜台。来到柜台。2.管管员输员输入借入借阅阅者的借者的借书证编码书证编码。3.系系统检查统检查借借阅阅者的合法性。者的合法性。4.系系统显统显示借示借阅阅者的信息。者的信息。5.系系统检查统检查借借阅阅者的借者的借阅阅信息。信息。6.管管员输员输入所借入所借图书图书的条的条码码。7.系系统显统显示所借示所借图书图书的信息,并登的信息,并登记图书记图书。管管员员重复重复67步,直到步,直到结结束。束。8.系系统统登登记记借借阅阅者的本次借者的本次借阅阅信息,并信息,并显显示。示。扩扩展事件流:展事件流:3a.借借阅阅者身份非法,者身份非法,则则提示,本次拒借。提示,本次拒借。5a.该该借借阅阅者所借者所借图书图书中有超期的中有超期的,则则提示提示,本次拒借。本次拒借。5b.该该借借阅阅者所借者所借图书图书数量超数量超过过了上限了上限,则则提示提示,本次拒借。本次拒借。图书馆借书处理的顺序图用例:借书交互图(序列+协作)课件还书处理(需求描述)读读者在者在还书时还书时,先由管理,先由管理员员把所借把所借图书图书的的图书编图书编号号扫扫描描给给系系统统,系,系统统接收到接收到这这个信息个信息,则显则显示示这这个个该读该读者信息者信息,以及以及这这本本书书的信息。的信息。管理管理员员确确认还书认还书,则则系系统统登登记还书记还书信息,并返回信息,并返回还还书书成功信息,成功信息,还书过还书过程完成。程完成。还书处理(需求描述)读者在还书时,先由管理员把所借图书的图书图书馆还书处理的序列图用例:用例:还书还书参与者:参与者:管理管理员员,借借阅阅者者操作流:操作流:管理管理员进员进入入图书图书借借阅阅界面,用例开始。界面,用例开始。系系统统要求要求输输入所入所还图书还图书的条的条码码。系系统显统显示所示所还图书还图书的的图书图书、读读者、借者、借阅阅等信息等信息 确确认还书认还书。系系统统回到上一界面,等待回到上一界面,等待处处理下一理下一业务业务。图书馆还书处理的序列图用例:还书图书馆还书处理的序列图图书馆还书处理的序列图交互图(序列+协作)课件协作图 Collaboration Diagram协作:在一定的语境中,一组用以实现某些行为的对象之间的相互作用它描述了若干对象为实现某种目的,而组成相互合作的“对象社会”协作图:表现对象协作关系的图是对“对象图”的扩展(增加消息传递)序列图和协作图可以相互转化强调:参与交互对象的角色位置与组织关系协作图 Collaboration Diagram协作:组成协作图的元素对象对象的角色表示一个或一组对象在完成目标的过程中所应起的那部分作用。不需要关于某个类的所有对象都出现同一个类的对象可能充当多个角色表示形式表示形式和序列图中的对象的表示方式基本一样与序列图不同的是,协作图中的对象的下部没有“生命线”,并且对象存在多对象的形式组成协作图的元素对象对象的角色表示一个或一组对象在完成目组成协作图的元素消息作用:通过一系列的消息来描述系统的动态行为表示形式:每个消息包括一个顺序号以及消息的名称使用带有标签的箭头来表示,箭头指向接收者附在连接发送者和接收者的链上消息的名称也可以是一个方法,包含一个名字和参数表、可选的返回值表。组成协作图的元素消息作用:通过一系列的消息来描述系统的动组成协作图的元素链在协作图中的链和对象图中链的概念和表示形式都相同,都是两个或多个对象之间的独立连接。链链的表示形式的表示形式普通:连接在两个对象之间的线或弧。自身关联:两端指向同一对象的回路,是一条弧。组成协作图的元素链在协作图中的链和对象图中链的概念和表示多重对象多个对象的集合,往往是同类对象用于表示:同一消息同时发给多个对象在顺序图中仍然显示为单一对象的图标多重对象多个对象的集合,往往是同类对象练习画出对应的顺序图练习画出对应的顺序图答案答案练习:协作图练习:协作图练习:协作图练习:协作图顺序图与协作图的关系顺顺序序图图与与协协作作图图都表示都表示对对象之象之间间的交互作用,只的交互作用,只是是侧侧重点有所不同:重点有所不同:顺序图描述了对对象交互的象交互的时间顺时间顺序序,但没有明确地表达对象之间的关系(多用于用例描述)协作图描述了对对象在交互中承担的角色象在交互中承担的角色,但对象在交互中的时间顺序必须从消息的顺序号获得(多用于详细设计时对象关系的描述)顺序图可以表示出对象的激活状态和非激活状态,也可以表示出对象的创建和销毁的相对时间;协作图则没有这些功能。两种两种图图的的语义语义是等价的,可以采用是等价的,可以采用Rational RoseRational Rose工具相互工具相互转转化,而不化,而不丢丢失任何信息。失任何信息。顺序图与协作图的关系顺序图与协作图都表示对象之间的交互作用,练习用例用例“新增新增书书籍籍”基本事件流基本事件流图书管理员向系统发出“新增书籍信息“请求。系统要求图书管理员选择要新增的书籍是计算机类还是非计算机类。图书管理员做出选择后,显示相应界面,让图书管理员输入信息,并自动根据书号规则生成书号。图书管理员输入书籍的相关信息,包括:书名、作者、出版社、ISBN号、开本、页数、定价、是否有CD-ROM。系统确定输入的信息中书名没有重复。系统将所输入的信息存储建档。练习用例“新增书籍”练习扩扩展事件流展事件流如果输入的书名有重名现象,则显示出重名的书籍,并要求图书管理员选择修改书名或取消输入。图书管理员选择取消输入,则结束用例,不做存储建档工作。图书管理员选择修改书名后,转到5绘绘制制顺顺序序按照从左到右的顺序,依此将参与者、边界对象和实体对象放在最顶部,参与者放在最左边,实体类放在最右边。注意,在分析模型中可以先不考虑控制类的引用(有必要时也可以引入)。然后根据事件流描述逐一导出其相应的消息流,即可得到顺序图。练习扩展事件流序列图顺顺序序图图序列图顺序图协作图协协作作图图协作图协作图此课件下载可自行编辑修改,供参考!感谢您的支持,我们努力做得更好!此课件下载可自行编辑修改,供参考!54
展开阅读全文