学习参考链接:
百度百科:
https://baike.baidu.com/item/%E6%97%B6%E5%BA%8F%E5%9B%BE/3659178?fr=aladdin
power designer 时序图教程:
https://wenku.baidu.com/view/5fc6a90e763231126edb110b.html
https://www.cnblogs.com/zsg88/p/7631236.html
http://www.cnblogs.com/ywqu/archive/2009/12/22/1629426.html
图书管理系统时序图案例:
https://wenku.baidu.com/view/6a9a2f05ba1aa8114431d95d.html
感觉UML建模用EA更简单好用一些:
https://jingyan.baidu.com/article/da1091fb0b8395027849d6e5.html
https://www.cnblogs.com/blfshiye/p/4747252.html
https://www.cnblogs.com/rhcad/archive/2011/09/08/2171753.html
时序图(Sequence Diagram),又名序列图、循序图,是一种UML交互图。它通过描述对象之间发送消息的时间顺序显示多个对象之间的动态协作。它可以表示用例的行为顺序,当执行一个用例行为时,其中的每条消息对应一个类操作或状态机中引起转换的触发事件。
一、EA序列图工具箱说明
Actor:角色/执行者,通常用于用例场景图中,在描述用户交互时表示当前用户/操作者。
Lifeline:生命线,最常用,例如系统、子系统、岗位角色、模块、类。
Boundary、Control、Entity是三种特殊的生命线对象类型,通常一起使用(MVC模式、控制模式):
Boundary:边界对象,初学者用得少,在MVC模式、控制模式、需求分析过渡到系统设计中用得多些,可用于表示交互界面、子系统。
Control:控制对象,用于表示业务逻辑、分工协调的职责对象,采用控制模式分析设计时用得多。
Entity:实体对象,用于表示需要永久保存或较长生命期的数据对象,例如票据、文件、数据库(通常不直接说数据库等技术实现方式,而说逻辑意义的名称)。
Fragment:片段,表示某一局部序列图单元,例如条件分支、循环、子图或子图链接,后者可用于序列图分层建模。
EndPoint:结束点,表示流程退出、异常退出、子图结束,一般与“Diagram Gate”搭配使用。
Diagram Gate:图入口,表示进入序列图的一个入口。用于在子序列图中表示是在什么情况下由上一级序列图进来的。
用于在生命线之间表达消息流转方向,在EA中这四种消息类型是可以快速转换的,所以不用担心画错了。
时序图描述对象是如何交互的,并且将重点放在消息序列上。
也就是说,描述消息是如何在对象间发送和接收的。时序图有两个坐标轴:纵坐标轴显示时间,横坐标轴显示对象。每一个对象的表示方法是:矩形框中写有对象和 / 或类名,且名字下面有下划线;同时有一条纵向的虚线表示对象在序列中的执行情况 ( 即发送和接收的消息对象的活动 ) , 这条虚线称为对象的生命线。对象间的通信用对象的生命线之间的水平的消息线来表示,消息线的箭头说明消息的类型,如同步,异步或简单 。 浏览时序图的方法是,从上到下查看对象间交换的消息,分析那些随着时间的流逝而发生的消息交换。
组成元素
时序图中包括如下元素:角色,对象,生命线,控制焦点和消息。
1、角色(Actor)
系统角色,可以是人或者其他系统,子系统。
2、对象(Object)
对象代表时序图中的对象在交互中所扮演的角色,位于时序图顶部和对象代表
对象实例
对象实例 [1]
类角色。
对象一般包含以下三种命名方式:
第一种方式包含对象名和类名。
第二种方式只显示类名不显示对象名,即为一个匿名对象。
第三种方式只显示对象名不显示类名。
3、生命线(Lifeline)
生命线实例
生命线实例
生命线代表时序图中的对象在一段时期内的存在。时序图中每个对象和底部中心都有一条垂直的虚线,这就是对象的生命线,对象间 的消息存在于两条虚线间。
4、控制焦点(Activation)
控制焦点代表时序图中的对象执行一项操作的时期,在时序图中每条生命线上的窄的矩形代表活动期。它可以被理解成C语言语义中一对花括号“{}”中的内容。
激活期实例
激活期实例
5、消息(Message)
消息是定义交互和协作中交换信息的类,用于对实体间的通信内容建模,信息用于在实体间传递信息。允许实体请求其他的服务,类角色通过发送和接受信息进行通信。