- 1、本文档共24页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
海软院 软件工程系 详细设计UML建模—时序图 主讲:李传科 Tel1.0 动态模型—时序图 1.0 动态模型—时序图 什么是时序图? 时序图描述了对象之间在一定时间段内按特定顺序发生的交互序列。 时序图如何表示? 时序图将交互关系表示为一个二维图。其中,纵轴为时间轴(生命线),横轴代表了在协作中各独立的对象。 1.1 时序图的组成 对象(Object) 生命线(Lifeline) 激活(Activation) 消息(Messages) 1.1.1 对象(Object) 序列图中的对象可以是系统的参与者或者任何有效的系统对象,是类的实例。 1.1.2 生命线(Lifeline) 生命线(Lifeline)是一条垂直的虚线,用来表示序列图中的对象在一段时间内的存在。 1.1.3 激活(Activation) 激活表示该对象被占用以完成某个任务,一个对象处于激活期时,表明该对象正在执行某个动作。 去激活则是指对象处于休眠状态。当一条消息被传递给该对象的时候,它会触发该对象的某个行为,这是就说该对象被激活了。 1.1.4 消息(Messages) 消息(Messages)是从一个对象(发送者)向另一个或其他几个对象(接收者)发送信号,或由一个对象(发送者或调用者)调用另一个对象(接收者)的操作。 什么是同步消息与异步消息? 消息的类型与符号 什么情况下用同步消息或是异步消息? 1.2 对象的创建和撤销 撤销一个对象,只要在其生命线终止点放置一个“X”符号即可,撤销一个对象也会同时回收其拥有的资源。 一个对象可以销毁自己,也可以通过一个对象发送一条消息来销毁另一个对象。 实例 教师查看学生成绩 1.确定工作流程 基本的工作流程如下: 老师希望通过系统查询某名学生的学科成绩。 老师通过用户界面录入学生的学号。 用户界面根据学生的学号向数据库访问层请求学生信息。 数据库访问层根据学生的学号加载学生信息。 数据库访问层根据学生信息和学科科目获取该名学生的分数信息。 数据库访问层将学生信息和分数信息提供给用户界面。 用户界面将学生信息和分数信息显示出来。 2.确定交互的场景 存在的情况A: 该名学生没有学科成绩。 1)数据访问层返回学科成绩为空。 2)系统提示老师没有该学生的成绩。 存在的情况B: 系统没有该学生的信息。 1)数据访问层返回学生信息为空。 2)系统提示老师该学生不存在。 3.确定对象 时序图建模的下一步是从左到右布置在该工作流程中所有的参与者和对象,同时也包含要添加消息的对象生命线。 4.确定消息和条件 接下来对系统的基本工作流程进行建模,按照消息的过程一步一步将消息绘制在序列图中,并添加适当的脚本绑定到消息中。 场景A: 场景B: 5.汇总 最后整理关于该用例的序列图的一张总图,可以通过分支和从属流的手段将其整合到一张序列图中。 结束 * * * * 要记住哦! 对象在生命线上的两种状态: (1)激活状态 (2)休眠状态 A叫B去吃饭,B听到了就和A去吃饭;如果B没有听到,A就不停的叫,直到B告诉A听到了,才一起去吃饭。 A叫B去吃饭,然后A自己去吃饭,B得到消息后可能立即走,也可能等过会儿才去吃饭。 同步消息 异步消息 简单消息(包括反身消息) 同步消息 异步消息 返回消息 同步消息,主要用于过程化的系统流。在控制流 继续之前,消息必须已被接收和完成。该情况下 使用同步消息。 异步消息, 主要用于控制流在完成前不需要中断的情况。 对象创建 交互开始时创建 交互过程中创建 位于时序图顶部 位置不在时序图顶部
文档评论(0)