序列图主要描述按照时间的先后顺序对象之间的交互动作过程。
序列图强调消息的时间顺序。顺序图以二维图表来显示交互。纵向是时间轴,时间显示为自上而下。横向显示了交互中各个对象的角色。每个对象用方框表示,对象可以表示出对象出自的类,中间用冒号区别,冒号前面是对象名称,后面是类的名字。同时一个方框内对象加上下划线。
消息表示的是一个方法的名称。从一个对象到一个对象的生命线上的箭头表示。从上到下表示消息的时间顺序。UML须垒土的一个用途是显示用例的行为序列。当行为被实现时,每个序列图中的消息同对象的操作或状态机中迁移上的事件触发相一致。
序列图中的元素。
1、生命线:
每个角色都有一列生命线,用一条向下延伸的虚线表示;当角色处于激活的时间内是,生命线为两条双线。
2、消息:
同步消息:消息的发送者把控制传递给消息的接收者,然后停止活动,等待消息的接收者放弃或者返回控制。
异步消息:发送人发送一个消息,不需要等待对方响应,就可以去做另一件事。
自关联消息:表示方法的自身调用以及一个对象内的一个方法调用另外一个方法。
(例)一张序列图:
客人去饭店吃饭,需要涉及到四个角色,即客人、服务员、厨师和老板。客人需要服务员来点菜并且传递给厨师,厨师做好菜之后服务员给客人上菜,最后通过服务员的服务客人向老板结账付款。如下图:
机房收费系统中,学生用户需要刷卡进行上机,系统通过验证学生用户卡号是否存在密码是否正确来验证用户是否可以上机。上机成功后需要将相关信息保存在数据库相应表中。最后下机,下机之前好要进行随时检查学生用户卡上余额是否充足。