实验1 UML类图实训
实验目的:加深对类图的理解
实验环境:Microsoft Office Visio 2003 及以上版本,或Rational Rose 2003等
实验内容:
1、问题(一)陈述
某图书管理系统的主要功能如下:
(1)图书管理系统的资源目录中记录着所有可供读者借阅的资源,每项资源都有一个唯一的索引号。系统需登记每项资源的名称、出版时间和资源状态(可借阅或已借出)。
(2)资源可以分为两类:图书和唱片。对于图书,系统还需登记作者和页数;对于唱片,还需登记演唱者和介质类型(CD或者磁带)。
(3)读者信息保存在图书管理系统的读者信息数据库中,记录的信息包括读者的识别码和读者姓名。系统为每个读者创建了一个借录文件,用来保存读者所借资源的相关信息。
2、构建类图的步骤:
第一步:识别类
(1)寻找问题描述中的名词
提取本实例中出现的所有名词如下表1:
(2)从这些名词中删除不可能成为类的名词,最终得到构成该系统的类。部分类的命名及说明如下表2:
第二步:画出类图
第三步:补充完整
[问题1]表2所给出的类并不完整,根据已知条件和表1,将上面类图1中的(a)--(c)处补充完整。
[问题2]根据说明中的描述,给出图1中的类CatalogItem以及(b)、(c)处所对应的类的关键属性(使用表1中给出的词汇),其中,CatalogItem有4个关键属性;(b)、(c)处对应的类各有2个关键属性。
[问题3]识别关联的多重度是面向对象建模过程中的一个重要步骤。根据说明中给出的描述,完成图1中的①一⑥。
3、问题(二)陈述
某商场会员管理系统包含一个会员类(Member ),会员的基本信息包括会员编号
( memberNo)、会员姓名(memberName )、联系电话(memberTel )、电子邮箱(memberEmail)、地址(memberAddress)等,会员可分为金卡会员( GoIdMember)和银卡会员( SilverMember)两种,不同类型的会员在购物时可以享受不同的折扣;每个会员可以拥有一个或多个订单( Order),每一个订单又包含至少一条商品销售信息(productItem),商品销售信息包括订单编号(orderNo)、商品编号( productNo)、商品数量(productNum)、商品单价( productPrice)和折扣(productDiscount);每一条商品销售信息对应一类商品(product ),商品信息包括商品编号(productNo)、商品名称(productName)、商品单价(productPrice )、商品库存量( productStock)、商品产地(productPlace)等。
根据以上描述构造系统的初始类模型(分析模型)。
第一步:明确类之间的泛化关系、关联关系、关联重数
第二步:画出系统的初始类模型图
4、课后实验(按学院规定的实验报告格式交作业)
某运输公司决定为新的售票机开发车票销售的控制软件。下图给出了售票机的面板示意图以及相关的控制部件。
售票机相关部件的作用如下所述:
①目的地键盘用来输人行程目的地的代码(例如,2U0表示总站)。
②乘客可以通过车票键盘选择车票种类(单程票、多次往返票和坐席种类)。
③继续/取消键盘上的取消按钮用于取消购票过程,继续按钮允许乘客连续购买多张票。
④显示屏显示所有的系统输出和用户提示信息。
③插卡口接受MCard(现金卡),硬币口和纸币槽接受现金。
⑥打印机用于输出车票。
⑦所有部件均可实现自检并恢复到初始状态。
现采用面向对象方法开发该系统,使用UML,进行建模,绘制该系统的初始类图。
附问题(二)的初始类模型UML图