软考下午题--UML建模练习(四)

例:阅读下列说明和图,回答问题1至问题3,将解答填入答题纸的对应栏内。

 

【说明】

某物品拍卖网站为参与者提供物品拍卖平台,组织拍卖过程,提供在线或线下交易服务。网站主要功能描述如下:

(1)拍卖参与者分为个人参与者和团体参与者两种。不同的团体也可以组成新的团体参与拍卖活动。网站记录每个参与者的名称。

(2)一次拍卖中,参与者或者是买方,或者是卖方。

(3)一次拍卖只拍出来自一个卖方的一件拍卖品;多个买方可以出价:卖方接受其中一个出价作为成交价,拍卖过程结束。

(4)在拍卖结算阶段,买卖双方可以选择两种成交方式:线下成交,买卖双方在事

先约定好的成交地点,当面完成物价款的支付和拍卖品的交付;在线成交,买方通过网上支付平台支付物价款,拍卖品由卖方通过快递邮寄给买方。

一次拍卖过程的基本事件流描述如下:

(1)卖方在网站上发起一次拍卖,并设置本次拍卖的起拍价。

(2)确定拍卖标的以及拍卖标的保留价(若在拍卖时间结束时,所有出价均低于拍卖标的保留价,则本次拍卖失败)。

(3)在网站上发布本次拍卖品的介绍。

(4)买方参与拍卖,给出竟拍价。

(5)卖方选择接受一个竟拍价作为成交价,结束拍卖。

(6)系统记录拍卖成交价,进入拍卖结算阶段。

(7)卖方和买方协商拍卖品成交方式,并完成成交。

现采用面向对象方法对系统进行分析与设计,得到如表3-1所示的类列表以及如图3-1所示的类图,类中关键属性与方法如表3-2所示。

 

 

 

 

 

 

【问题1】(7分)

根据说明中的描述,给出图3-1(1)(7)所对应的类名(类名使用表3-1中给出的序号)。

 

【问题2】(5分)

 

根据说明中的描述,确定表3-2中的属性/方法分别属于哪个类(类名、方法/属性名使用表3-13-2中给出的序号)。

 

【问题3】(3分)

 

在图3-1采用了何种设计模式?以100字以内文字说明采用这种设计模式的原因。

解析:【问题一】图3-1共需要确定7个类,可以先从图中几个特殊关系处入手,即(1)〜(3)和(4)〜(6)。

 

先来分析(1)〜(3),这是一个继承+聚集的结构,而且联系的名称“participants” 是一个比较明显的提示,说明这个层次结构是与【说明】中的功能描述(1)相对应的。 表3-1,与之相关的类是C5 (AuctionParticipant)、C7 (OneParticipant)和C9 (CompositeParticipant)。C7、C9是特殊的参与者,所以(1)处应该为C5; (2)处应该 为C9,这个聚集关系针对着【说明】中的“不同的团体也可以组成新的团体参与拍卖活动”需求;(3)处为C7。

 

结合【说明】和表3-1,另外一组具有“一般-特殊”关系的类只有C6 (Interchange), C8 (OfflinePay)C10 (OnlinePay)。显而易见,C8C10C6的两种具体方式, 所以(4)处应该为C6, (5)、(6)处分别为C8C10

 

这样(7)处对应的类只能是Item了。结合【说明】和表3-1可知,(7)处对应的类表达的应该是拍卖中的拍卖品,所以(7)处应该是C2

【问题二】

 

【问题3

采用了组合模式。以树形结构表示个人参与者和团体参与者之间的“部分-整体”关系,使得对单个对象和组合对象的使用具有一致性。

【注意】要结合题目进行阐述。

 

posted @ 2021-05-26 15:00  洛飞  阅读(709)  评论(1编辑  收藏  举报