[论文]用例图和类图
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
用例图和类图
教学目标:
(1)掌握用例图的参与者识别和绘制方法;
(2)掌握类图的备选类分析和绘制方法;
(3)比较用例图和类图的区别与联系。
教学对象:
初专计算机07级
学生分析:
(1)已掌握用例图的基本概念及其主要构成元素;
(2)已具备统一建模语言(UML)基础及面向对象的软件开发基本思想。
单元概述:
在UML中,用例图主要用来图示化系统的主事件流程,它主要用来描述客户的需求,即用户希望系统具备的完成一定功能的动作,通俗地理解用例就是软件的功能模块。
而类图是描述系统中的类,以及各个类之间的关系的静态视图,能够让我们在正确编写代码以前对系统有一个全面的认识。
类图是一种模型类型,确切的说,是一种静态模型类型。
0
用例图侧重描述用户需求,而类图侧重描述系统具体实现。
0
在面向对象的软件工程开发思想中,应能够使用UML,建立起对对象建模的分析过程,然后掌握用例图和类图的绘制方法及两者的相互转换。
0
教学内容:0
一、建立用例模型0
【基本概念】:(复习上节课内容)0
用例(Use Case)是一种描述系统需求的方法,其描述的过程就是用例建模。
用例图的主要构成元素:0
1.参与者(Actor):0
参与者指存在于系统外部并与该系统发生交互的人或者其他系统,他们代表
的是系统的使用者或者使用环境。
0
2.用例(User Case):0
用例表示系统所提供的服务,它定义了系统是如何被参与者所使用的,描述的是参与者为了使用系统所提供的某一完整功能而与系统之间发生的一段对话。
3.关联(Association):0
关联用于表示参与者和用例之间的对应关系,它表示参与者使用了系统中的哪些服务(用例)。
0
【用例图的组成元素】(复习上节课内容)0
用例图的组成元素包括:参与者、用例、一个方框和一些表示关系的连接线。
所有的用例都位于方框之内,该方框称为“系统边界”0
参与者与用例的关系:参与者和用例之间的关联是用一根带箭头的线来表示的。
【识别参与者】:(开始学习新课)0
参与者是为了完成一个事件而与系统交互的实体,是用户相对系统而言所演的角色
参与者不仅可以由人承担,还可以是其它系统、硬件设备、甚至是时钟。
0
1.其它系统:当系统需要与其它系统交互时,如ATM柜员机系统中,银行后台
系统就是一个参与者;0
2.硬件设备:如果系统需要与硬件设备交互时,如在开发IC卡门禁系统时,IC
卡读写器就是一个参与者;0
3.时钟:当系统需要定时触发时,时钟就是参与者。
0
【案例描述】——酒店管理系统(前台)0
事件描述:客户前来酒店预定座位,由前台服务人员为其检查座位信息。
如果客满或客户对座位不满意,则进入等待队列;如果有满意座位,则由前台服务人员为其安排座位。
客户完成消费后,至前台服务人员处办理结账,其可选择现金付款或刷卡消费2种结账方式。
0
要求:寻找其参与者、用例及用例间的关系,逐步绘制出用例图。
0
【用例之间的关系】0
用例之间的关系:0
1.包含关系(include):被包含的用例不是孤立存在的,它仅作为某些包含它的更
大的基用例的一部分出现。
0
2.扩展关系(extend):基用例是可以独立于扩展用例存在的,只是在特定的条件
下,它的行为可以被另一个用例的行为所扩展。
0
3.泛化关系(generalization):可以用来表示参与者与参与者之间,用例与用例之
间的特殊/一般化关系(一般具有互斥性)。
0
(完善刚才绘制的用例图,为其中的用例添加关系,使其完整。
)0
【读图小结】0
这张用例图定义了三个基用例:预订座位、安排座位和处理结账。
0
客户通过“预订座位”用例,在“预订座位”用例的执行过程中,将“检查座位信息”(被包含用例),如果没有空闲的座位或满意的座位,可以选择进入等候队列,这样就将启动扩展用例“处理等候队列”。
0
总台服务员在客户到酒店时,启动“安排座位”用例,在执行过程中,将启动被包含用例“检查座位信息”。
0
当客户要离开酒店时,总台服务员将启动“处理结账”用例,并且定义了两种“收款”用例,一个是“处理现金结账”,另一个是“处理银行卡结账”,而后一个用例将通过与外部系统“银联POS系统”交互来完成。
0
【想一想】0
1.ATM机服务中,无论取款、存款、还是转账,系统都会提示“是否打印回执单”,
那么“打印回执”这个单独用例与取款、存款、转账这三个事件之间是什么关
系?0
2.对于电话业务,在基本通话事件中,还有一些增值业务,如:呼叫等待、呼叫
转移、短信通知机主……它们之间是什么关系?0
3.在有收银台的商场购物与在自动售货机上购物,购物者是否都作为售货系统的
参与者?0
二、建立分析模型0
【基本概念】0
面向对象分析产生分析模型。
分析时用例模型作为输入,对用例模型进行分析,把系统分解为相互协作的分析类——边界类、控制类和实体类。
通过类图来描述对象、对象的属性和对象之间的关系,产生系统的静态模型。
0
类图在UML中由类的名称、类的属性、类的操作三个部分组成。
0
【类图的需求分析】——个人图书管理系统0
事件描述:小王是一个爱书之人,家里各类书籍已过千册,而平时又时常有朋友外借,因此需要一个个人图书管理系统。
该系统应该能够将书籍的基本信息按计算机类、非计算机类分别建档,实现按书名、作者、类别、出版社等关键字的组合
查询功能。
在使用该系统录入新书籍时系统会自动按规则生成书号,可以修改信息。
该系统还应该能够对书籍的外借情况进行记录,可对外借情况列表打印。
另外,还希望能够对书籍的购买金额、册数按特定时间周期进行统计。
0
要求:筛选备选类并确定候选类,完成关联分析和多重性分析,并建模。
然后
根据职责分析,确定类图及其三要素。
0
三、 用例图和类图的区别0
1. 用例图 (Use Case Diagram)0
① 用例视图强调从系统的外部参与者(主要是用户)的角度看到的或需要的
系统功能。
② 用例视图描述系统应该具备的功能,也就是外部参与者所需要的功能,但是并不描述这些功能在系统内部的具体实现。
0
③ 用例是系统中的一个功能模块,一个用例对应着一个功能模块,系统要提
供的功能都是在用例视图中描述的。
④ 参与者可以是一个用户或者是另一个系统,一个参与者可以参与多个用例的执行,用例视图列出了哪个参与者参与了哪些用例的执行。
2. 类图 (Class Diagram)0
① 类图显示了系统的静态结构,表示不同的实体(人、事物)是如何彼此相关
联的。
② 绘制类图时使用由3个部分组成的矩形来描述,最上面的矩形部分显示类的名称,中间矩形部分显示了类的各种属性,下面的矩形部分显示了类的操作或方法。
③ 在类图中要注意的是如何描述类与类之间的关系。
类与类之间通常有关联关系、依赖关系和泛化关系。
0
【学生注册事件】0
一、用例图:
类的名称 类的属性
类的操作
参与者
用例
关联。