uml实验-时序图与协作图
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验四时序图与协作图
[实验目的和要求]
1、掌握时序图与协作图的概念及作用。
2、掌握UML中静态图形和动态图形的区别和联系。
3、掌握UML时序图与协作图的基本图形,了解它们各自的组成元素、特定作用和适用场合。
4、重点掌握时序图的画法以及其中元素所代表的意义。
[实验内容和步骤]
1、UML中的时序图与协作图之间各有什么区别和联系?
答:时序图:强调消息的时间顺序,强调交互的时间。
协作图:强调的是发送和接收消息的对象之间的组织结构
联系:都是描述对象之间的交互。
2、在顺序图和协作图中,应如何表示“循环”,“判断”等结构?答:循环:一条连接两个角色的实现路径来表示。
判断:增加消息进行判断。
3、什么是消息?消息在交互中扮演什么角色?
答:消息是对象之间某种形式的通信,在垂直生命线之间,用带有箭头的线段并附以消息表达式方式表示。他可以激发某个操作、唤起信号或导致目标对象的创建和撤销。
4、交互图中有哪几种消息?它们之间具体有何分别?应如何表
示?
答:
表示
5、已知某一个用例实现的类图如下,画出一个能和该类图对应的
时序图。
6、假设有一系统得协作图局部如图所示,print方法的功能是将传入的参数的值打印在屏幕上,fact方法是计算阶乘,如果test的初值为1,那么最终将打印出什么?(写出计算过程)
1: print(test)
答:
消息执行三次:
1、test=1+1=2;
2、test=2+2!=4;
3、test=4+4!=28;
所以最后打印的是28.
[分析与讨论]
1、讨论并总结在建模过程中运用交互图的重要作用及意义答:
作用:准确的描述各个对象之间的关系及各种消息。
意义:用于对系统中多个对象的相互作用的过程进行建模。
2、画出网上书店系统购书的时序图。
答:
3、下图是购物网站的“编辑购物车”用例中的部分的类图
基本事件流:
用户在Shopping Cart页面上修改购物车中商品数量,然后单击Update按钮。系统存储新的数量,然后计算并显示该商品的新价格。
用户单击Continue Shopping按钮。系统将控制权返回给浏览商品用例。
扩展事件流:
用户将商品数量改为0,则系统从购物车中删除该商品
用户点击Delete 按钮,系统从购物车中删除该商品
用户点击Check Out按钮,系统将控制权转到结账用例。
用户点击Clear Cart按钮,系统将购物车内所有商品删除。
请根据给出的类图,在下面的顺序图上画出“编辑购物车”用例内各个事件流(注意消息和类图提供的方法保持一致)。