时序图(Sequence Diagram),亦称为序列图或循序图,是一种UML行为图。它通过描述对象之间发送消息的时间顺序显示多个对象之间的动态协作。它可以表示用例的行为顺序,当执行一个用例行为时,时序图中的每条消息对应了一个类 *** 作或状态机中引起转换的触发事件。
时序图中包括如下元素:角色,对象,生命线,激活期和消息。
系统角色,可以是人或者其他系统,子系统。
对象代表时序图中的对象在交互中所扮演的角色,位于时序图顶部和对象代表。
对象一般包含以下三种命名方式:
生命线代表时序图中的对象在一段时期内的存在。时序图中每个对象和底部中心都有一条垂直的虚线,这就是对象的生命线,对象间 的消息存在于两条虚线间。
激活期代表时序图中的对象执行一项 *** 作的时期,在时序图中每条生命线上的窄的矩形代表活动期。它可以被理解成C语言语义中一对花括号“{}”中的内容。
消息是定义交互和协作中交换信息的类,用于对实体间的通信内容建模,信息用于在实体间传递信息。允许实体请求其他的服务,类角色通过发送和接受信息进行通信。
然后说下画时序图的工具:
http://www.sybase.com/products/modelingdevelopment/powerdesigner
当然推荐使用StartUML了。以下是简单的 *** 作方法。
然后用它简要画了几个简单的图:
1.基本用例图:
2.场景一:基本时序图:
3.场景二:简要的另一份时序图:
4.场景3:另外一种场景简要描述
这里主要说一下关于竖线的问题,很多人不知道这个竖线怎么来的。其实在用例图上面,右键,选择 Add Diagram -->Sequence Diagram ,然后在新的标签下,建立相应的 Object 之类的,就可以了
也就是你要注意下面这两副图片的区别:
在用例图模式下,和序列分布模式左侧的是不同的。
当然,如果你想了解更多的关于 StarUML 应用的东西,可以参考: http://wenku.baidu.com/view/196c5a4c69eae009581bec69.html
另外,这位大神在6年前写的文章更为实用: http://www.cnblogs.com/daizhj/archive/2008/04/14/1153121.html
还有这份文档,步骤写得比较详细: http://wenku.baidu.com/view/2a67901efc4ffe473368ab08.html
时序图是用来表示对象之间的交互关系,对象按照时间顺序排列,图中会表示参与交互的对象以及对象之间消息传递的顺序。时序图在项目中可以清晰的表达出各个对象或者各个系统之间的关系,在开发设计中起到很重要的作用。
时序图中包含元素有:对象、生命线、控制焦点、消息等;
系统角色,可以是人或者其它系统。角色可以用下面的图表示:
整个交互过程中的实体,可以是一个具体的类也可以是另外一个系统。对象可以用下面的图表示:
生命线在顺序图中表示为从对象图标向下延伸的一条虚线,表示对象存在的时间,如下图:
控制焦点是顺序图中表示时间段的符号,在这个时间段内对象将执行相应的 *** 作。用小矩形表示,如下图:
消息又分如下几种:
在做微信支付时经常会遇到跨系统的复杂交互,我们可以用时序图很好的表达出系统与系统之间的关系:
〖坚持的一俢〗
StarUml可以完美的支持ration rose 的uml图,而且是免费开源的。画时序图、等图时,需要如下 *** 作:
选择右上角的model expoloer
选中其中一个model
顶部菜单=>model=>add diagram
然后选择相应的图
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)