UML: 序列图
摘自http://www.umlonline.org/school/thread-37-1-1.html
大家都进过餐馆吃饭吧?你是如何和餐厅服务员“眉来眼去”的呢?回忆一下从你进餐馆开始到你离开餐馆的整个过程,期间都发生了一些什么事情?
这个过程,我们通过序列图展示出来,可能是这样子的:

注意:红色虚线以及黄底色的文字不是序列图的一部分,它们是用来说明这个序列图的。
序列图的语法并不复杂,简述如下:
1.有两条竖轴,分别代表了顾客和服务员两个角色。
2.两条竖轴之间有一些带箭头的线条,线条上有一些文字,顺着箭头方向来读这个图,就是谁对谁做了什么事情。“领导座位”这条线是从“服务员”指向“顾客”的,这就表示:“服务员”对“顾客”做了“领到座位”这个事情。
3.有些线条是自己指向自己的,如“进门”,线条从“顾客”开始,最后还是指向“顾客”,意思就是自己对自己做了什么事情,“进门”这条线是从“顾客”指向“顾客”的,这就表示:顾客自己进门了,这个事情是自己对自己发起的,没有别人介入。
4.由上往下读这个图,就是事情安排时间发生的顺序了。
5.由这个图可以很清楚的了解到谁与谁发生了那些交互,事情的先后顺序是怎样的。
上面这个图,还有另外一种画法:

注意:红色虚线以及黄底色的文字不是序列图的一部分,它们是用来说明这个序列图的。
这个图多了一种带箭头的虚线,“菜单”这条虚线,由“服务员”指向“顾客”,表示:“服务员”将“菜单”给“顾客”。
顾客先向服务员要菜单,然后服务员将菜单给顾客。通过实线与虚线,可以表达出不同角色的交互过程。
顾客向服务员点菜,过一会服务员就会将菜送上来,我们都知道,菜不是服务员做出来的,她背后有人,她背后的故事又是怎样的呢?

上面这个图,揭示了点菜、结帐的完整过程。
通过序列图,我们可以清楚地看到各角色之间是如何交互,角色之间的“接口”是怎样的,通过怎样的步骤最终会让事情办完。

UML: 序列图的更多相关文章
- UML序列图参考资料
UML各个图的说明:http://www.uml.org.cn/oobject/201509015.asp?artid=16901 UML类图的说明:https://www.cnblogs.com/a ...
- UML序列图的理解:
UML序列图的理解:UML序列图是指一个对象的方法在处理过程中调用其他对象的图:重点是要突出调用其他对象的序列:
- UML 序列图
序列图 序列图主要用于按照交互发生的一系列顺序,显示对象之间的这些交互.显示不同的业务对象如何交互,对于交流当前业务如何进行很有用.序列图是一个用来记录系统需求,和整理系统设计的好图.序列图 ...
- UML 序列图详解
现在是二月,而且到如今你或许已经读到.或听到人们谈论UML 2.0 —— 包括若干进步的 UML 的新规范,所做的变化.考虑到新规范的重要性,我们也正在修改这个文章系列的基础,把我们的注意力从 OMG ...
- 【夯实PHP基础】UML序列图总结
原文地址 序列图主要用于展示对象之间交互的顺序. 序列图将交互关系表示为一个二维图.纵向是时间轴,时间沿竖线向下延伸.横向轴代表了在协作中各独立对象的类元角色.类元角色用生命线表示.当对象存在时,角色 ...
- 软件工程里的UML序列图的概念和总结
俗话说,自己写的代码,6个月后也是别人的代码……复习!复习!复习! 软件工程的一般开发过程:愿景分析.业务建模,需求分析,健壮性设计,关键设计,最终设计,实现…… 时序图也叫序列图(交互图),属于软件 ...
- UML序列图总结(Loop、Opt、Par和Alt)
序列图主要用于展示对象之间交互的顺序. 序列图将交互关系表示为一个二维图.纵向是时间轴,时间沿竖线向下延伸.横向轴代表了在协作中各独立对象的类元角色.类元角色用生命线表示.当对象存在时,角色用一条虚线 ...
- 【UML】UML序列图总结
序列图主要用于展示对象之间交互的顺序. 序列图将交互关系表示为一个二维图. 纵向是时间轴,时间沿竖线向下延伸. 横向轴代表了在协作中各独立对象的类元角色. 类元角色用生命线表示. 当对象存在时,角色用 ...
- UML序列图总结
转载请注明出处:htt://blog.csdn.net/tianhai110 序列图主要用于展示对象之间交互的顺序. 序列图将交互关系表示为一个二维图.纵向是时间轴,时间沿竖线向下延伸.横向轴代表了在 ...
- (转)UML序列图总结
序列图主要用于展示对象之间交互的顺序. 序列图将交互关系表示为一个二维图.纵向是时间轴,时间沿竖线向下延伸.横向轴代表了在协作中各独立对象的类元角色.类元角色用生命线表示.当对象存在时,角色用一条虚线 ...
随机推荐
- qTip2 精致的jQuery提示信息插件
qTip2 精致的jQuery提示信息插件 出处:http://www.cnblogs.com/lwme/archive/2012/02/16/qtip2-jquery-plugin.html ...
- myeclipse调式与属性显示
最近做项目的时候发现一个奇怪的东西,当我用myeclipse调式时,调式窗口显示实体user所关联的role的对象属性是空的,但是,从syst打印出来是有的,最近感到很奇怪,后来发现这只是调式的一种显 ...
- Java中类名与文件名的关系
1.Java保存的文件名必须与类名一致: 2.如果文件中只有一个类,文件名必须与类名一致: 3.一个Java文件中只能有一个public类: 4.如果文件中不止一个类,文件名必须与public类名一致 ...
- Linux最常用命令及快捷键整理
最近在学Linux系统命令,在阿里云买了一台linux服务器.为方便自己也方便他人,整理了Linux常用命令及快捷键. 用命令: 文件和目录: # cd /home ...
- table 操作
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/ ...
- Objdump-查看汇编指令
作用 Objdump可以用来看汇编指令 查看汇编指令 测试文件 编译指令 gcc -g -o objtest 1.8.c objdump -S objtest |more /main 查看结果
- PresentViewController切换界面(一些系统自带的页面切换动画)
视图切换,没有NavigationController的情况下,一般会使用presentViewController来切换视图并携带切换时的动画, 其中切换方法如下: – presentViewCon ...
- Introduction to Project Management(II)
Introduction The purpose of this paper is to gain an understanding of project management and to give ...
- 【转】Android性能优化之布局优化篇
转自:http://blog.csdn.net/feiduclear_up/article/details/46670433 Android性能优化之布局优化篇 分类: andorid 开发2015 ...
- MySQL注释符
mysql注释符有三种:1.#...(注释至行末,推荐)2.-- ...(两条短线之后又一个空格)3./*...*/(多行注释) 1.