UML软件建模教程实验五顺序图实例

实验五 顺序图实例

一、实验目的

1.掌握顺序图基本要素

2.了解何时使用顺序图

二、实验条件

   计算机一台,windows操作系统,rational rose或visio软件(2003-2023版)

三、实验原理及内容

顺序图显示具体用例(或者是用例的一部分)的详细流程。它几乎是自描述的,并且显示了流程中不同对象之间的调用关系,同时还可以很详细地显示对不同对象的不同调用。 顺序图有两个维度:垂直维度以发生的时间顺序显示消息/调用的序列;水平维度显示消息被发送到的对象实例。

顺序图的绘制非常简单。横跨图的顶部,每个框(参见图)表示每个类的实例(对象)。在框中,类实例名称和类名称之间用空格/冒号/空格来分隔,例如,myReportGenerator : ReportGenerator。如果某个类实例向另一个类实例发送一条消息,则绘制一条具有指向接收类实例的开箭头的连线,并把消息/方法的名称放在连线上面。对于某些特别重要的消息,您可以绘制一条具有指向发起类实例的开箭头的虚线,将返回值标注在虚线上。就我而言,我总喜欢绘制出包括返回值的虚线,这些额外的信息可以使得序列图更易于阅读。

阅读顺序图也非常简单。从左上角启动序列的"驱动"类实例开始,然后顺着每条消息往下阅读。记住:虽然图所示的例子顺序图显示了每条被发送消息的返回消息,但这只是可选的。

例1:绘制如下顺序图

图5.1 简单顺序图

例2:某客户取款顺序图

理解:顺序图显示了用例中的功能流程。我们对取款这个用例分析,它有很多可能的程序,如想取钱而没钱,想取钱而PIN错等等,正常的情况是取到了钱,下面的顺序图就对某客户Joe取20美元,分析它的顺序图。

顺序图的顶部一般先放置的是取款这个用例涉及的参与者,然后放置系统完成取款用例所需的对象,每个箭头表示参与者和对象或对象之间为了完成特定功能而要传递的消息。

取款这个用例从客户把卡插入读卡机开始,然后读卡机读卡号,初始化ATM屏幕,并打开Joe的账目对象。屏幕提示输入PIN,Joe输入PIN(1234),然后屏幕验证PIN与账目对象,发出相符的信息。屏幕向Joe提供选项,Joe选择取钱,然后屏幕提示Joe输入金额,它选择20美元。然后屏幕从账目中取钱,启动一系列账目对象要完成的过程。首先,验证Joe账目中至少有20美元;然后,它从中扣掉20美元,再让取钱机提供20美元的现金。Joe的账目还让取钱机提供收据,最后它让读卡机退卡。

图5.2 ATM取款顺序图

例3:

四、实验思考题

1 请简述建立顺序图的过程。

打开Rational Rose->在Logical View的右键菜单->new->Sequence Diagram->创建成功后右击菜单中选择new->class并拖入视图中->按要求增加Object和Actor等元素->最后用Object Message进行连接。

2 请简述顺序图和状态图的不同?

顺序图 :用于表示程序执行时 各个对象的交互过程 (这些对象会按调用时间顺序排序);

状态图 :描述一个特定对象的所有可能状态,以及由于各种事件的发生而引起的状态之间的转移,其最主要的就是程序目前的状态,每一个状态总结记录程序由开始到目前所有接到的输入。

3 实验例题完成后,将截图粘贴到实验报告中

  • 4
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小孙同学1024

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值