- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第10章时序图顺序图郭
交互片段的组合 可以用多种方式来组合交互片段。操作符表示了不用的组合方类型。 为了表示这种组合,将整个片段帧化,再用一条虚线表示邻接交互片段的边界。 被广泛使用的组合类型有两种,这两种类型的操作分别被标注为alt和par操作符。 第63页/共80页 在alt组合中,每个片段都是一种可选情况,只能在一定的条件下执行。保护条件指明了哪个片段将会执行。 根据判断条件,选择片段中的一个交互执行。类似于程序设计语言中的if…else…语句。 在par组合中,组合片段并列工作而不会互相交互。用于各个片段并行执行。 第64页/共80页 第65页/共80页 第66页/共80页 第67页/共80页 第68页/共80页 第69页/共80页 第70页/共80页 第71页/共80页 第72页/共80页 第73页/共80页 10.8 实例——图书馆管理系统的时序图 10.5.1 使用Rational Rose绘制时序图的步骤 10.5.2 图书馆管理系统的时序图 第74页/共80页 10.5.1 使用Rational Rose绘制时序图的步骤 1. 创建时序图 2. 时序图工具栏按钮简介 3. 添加对象 4. 添加消息 第75页/共80页 10.5.2 图书馆管理系统的时序图 1. 系统管理员添加书籍的时序图 2. 图书管理员处理借书的时序图(不包括 预留书籍的情况) 3. 系统管理员删除书目的时序图 4. 借阅者预留书籍的时序图 第76页/共80页 1. 系统管理员添加书籍的时序图 第77页/共80页 图书管理员处理借书的时序图(不包括预留书籍的情况) 第78页/共80页 3. 系统管理员删除书目的时序图 第79页/共80页 4. 借阅者预留书籍的时序图 第80页/共80页 递归:当一个操作调用它自身时,递归就会出现。 当一个操作调用它自身时,所产生的消息总是同步的,因此在顺序图中总是将递归的消息绘制成同步消息。 第31页/共80页 第32页/共80页 嵌套消息 第33页/共80页 非嵌套消息 第34页/共80页 注意以下区别 第35页/共80页 嵌套消息的画法 第36页/共80页 10.4 顺序图中的时间建模 消息箭头通常是水平的,说明传递消息的时间很短,在此期间不会“发生”其他事件。 对多数计算而言,这是正确的假设。但有时从一个对象到另一个对象之间的消息之间可能存在一定的时间延迟,即消息传递不是瞬间完成的。 如果消息的传送需要一定时间,在此期间可以出现其他事件(来自对方的消息到达),则消息箭头可以画为向下倾斜的。 第37页/共80页 这种情况发生在两个应用程序通过网络相互通信时。如图 第38页/共80页 一个消息需要一段时间才能完成的最好示例是使用电子邮件服务器进行通信。 因为电子邮件服务器是外部对象,具有潜在的消耗通信时间的可能性,可以把发送到电子邮件服务器和从中接收到的消息建模为耗时的消息。 第39页/共80页 10.5 建模迭代 通过建模迭代可以实现消息的重复执行。在顺序图中,建模人员常用的建模迭代消息是通过一个矩形把重复执行的消息包括在矩形框中,并且提供一个控制重复执行的控制条件。 如图所示重复执行的消息。 第40页/共80页 10.6 顺序图建模步骤 第41页/共80页 时序图建模技术 设置交互的语境。 通过识别对象在交互中扮演的角色,设置交互的场景。 为每个对象设置生命线。 从引发某个消息的信息开始,在生命线之间画出从顶到底依次展开的消息,显示每个消息的特性(如参数)。 如果需要可视化消息的嵌套或实际计算发生时的时间点,可以用激活修饰每个对象的生命期。 如果需要说明时间或空间的约束,可以用时间标记修饰每个消息,并附上合适的时间和空间约束。 如果需要更形式化的说明某控制流,可以为每个消息附上前置和后置条件。 第42页/共80页 例子: 汽车和车钥匙 能够遥控锁车和开锁的车钥匙 车主按下“锁车”按钮时,汽车自动上锁,闪动一下车灯并发出一声蜂鸣,告诉你它已经把车门上锁了。 CarOwner(车主) Car(汽车) CarKey(车钥匙) 第43页/共80页 信号 接收信号 第44页/共80页 顺序图中使用异步消息符号来对这两个信号建模。 第45页/共80页 例题: 第46页/共80页 注意: 一个用例可对应多个顺序图。 通常来说,一个完整的控制流有时是很复杂的,随意,将一个大的控制流分为几个部分放在不同的顺序图中是比较合适的。 一些顺序图用来描述主要事件流,另一些可以用来描述可选择的路径或例外条件,然后用包来组织这些顺序图的集合。 第47页/共80页 第48页/共80页 第49页/共80页 第50页/共80页 第51页/共80页 10.6 补充知识帧化
文档评论(0)