(2012年上半年下午试题三)阅读下列说明和图,回答问题1至问题3,将解答填入答题纸的对应栏内。 【说明】 某网上购物平台的主要功能如下。 (1)创建订单。顾客(Customer)在线创建订单(Order),主要操作是向订单中添加项

admin2018-07-27  66

问题 (2012年上半年下午试题三)阅读下列说明和图,回答问题1至问题3,将解答填入答题纸的对应栏内。
    【说明】
    某网上购物平台的主要功能如下。
    (1)创建订单。顾客(Customer)在线创建订单(Order),主要操作是向订单中添加项目、
从订单中删除项目。订单中应列出所订购的商品(Product)及其数量(quantity)。
    (2)提交订单。订单通过网络来提交。在提交订单时,顾客需要提供其姓名(name)、收货地址(address)以及付款方式(form ofpayment)(预付卡、信用卡或者现金)。为了制订送货计划以及安排送货车辆,系统必须确定订单量(volume)。除此之外,还必须记录每种商品的名称(name)、造价(cost price)、售价(sale price)以及单件商品的包装体积(cubic volume)。
    (3)处理订单。订单处理人员接收来自系统的订单;根据订单内容,安排配货,制订送货计划。在送货计划中不仅要指明发货日期(delivery date),还要记录每个订单的限时发送要求(Delivery Time Window)。
    (4)派单。订单处理人员将已配好货的订单转交给派送人员。
    (5)送货/收货。派送人员将货物送到顾客指定的收货地址。当顾客收货时,需要在运货单(delivery slip)上签收。签收后的运货单最终需交还给订单处理人员。
    (6)收货确认。当订单处理人员收到签收过的运货单后,会和顾客进行一次再确认。
    现采用面向对象方法开发上述系统,得到如图10.27所示的用例图和图10.28所示的类图。

根据说明中的描述,给出图10.28中C1~C3所对应的类名以及(1)~(4)处所对应的多重度(类名使用说明中给出的英文词汇)。

选项

答案C1:Customer C2:Order C3:Product (1)1 (2)0..n或0..* (3)0..n或0..* (4)1..n或1..

解析 类的UML表示是一个长方形,垂直地分为三个区:项部区域显示类的名字,中间的区域列出类的属性,底部的区域列出类的操作。由题目提供的类图可知,C1有name属性和address属性;C3有name属性。C1单向关联C2,C1可以调用C2的公共属性和方法。C2和C3之间是聚合的关系,表示C2聚合C3,但是C3可以离开C2而独立存在。在C2和C3类之间的关联,产生了称为Order Product Quantity的关联类。C2是整个类图的中心,购物的所有活动都是围绕着订单展开的,因此C2为Order。订单中记录着所订购的商品,因此C3为Product。用户创建订单,需要调用订单的属性和方法,因此C1为Customer。
    UML中关联的多重度是指一个类的实例能够与另一个类的多少个实例相关联。具体取值的含义如下。
      0..1:0个或1个。
      1:只能1个。
      0..*:0个或多个。
      *:0个或多个。
      1..*:1个或多个。
    一个客户可以提交多份订单,一份订单只能是某一个客户的,当然,客户也可以不提交订单,当一个Customer实体存在时,可以有也可以没有Order实体与之关联;而当一个Order实体存在时,必然有一个Customer实体与之关联。显然(1)处多重度为1,(2)处为0..*。(3)处和(4)处要填入的是Order和Product实体之间的关联,订单中至少有一件商品,因此(4)处应填入1..*;商品和订单之间是聚合的关系,商品可以包含在订单中,也可以独立存在,不属于任何订单,因此(3)处应填入0..*。
转载请注明原文地址:https://kaotiyun.com/show/77DZ777K
0

相关试题推荐
随机试题
最新回复(0)