题目详情

某图书公司欲开发一个基于Web的书籍销售系统,为顾客(Customer)提供在线购买书籍(Books)的功能,同时对公司书籍的库存及销售情况进行管理。系统的主要功能描述如下:

(1)首次使用系统时,顾客需要在系统中注册(Registerdetail)。顾客填写注册信息表要求的信息,包括姓名(name)、收货地址(address)、电子邮箱(email)等,系统将为其生成一个注册码。

(2)注册成功的顾客可以登录系统在线购买书籍(Buybooks)。购买时可以浏览书籍信息,包括书名(title)、作者(author)、内容简介(introduction)等。如果某种书籍的库存量为0,那么顾客无法查询到该书籍的信息。顾客选择所需购买的书籍及购买数量(quantities),若购买数量超过库存量,提示库存不足;若购买数量小于库存量,系统将显示验证界面,要求顾客输入注册码。注册码验证正确后,自动生成订单(Order),否则,提示验证错误。如果顾客需要,可以选择打印订单(Printorder)。

(3)派送人员(Dispatcher)每天早晨从系统中获取当日的派送列表信息(Producepicklist),按照收货地址派送顾客订购的书籍。

(4)用于销售的书籍由公司的采购人员(Buyer)进行采购(Reorderbooks)。采购人员每天从系统中获取库存量低于再次订购量的书籍信息,对这些书籍进行再次购买,以保证充足的库存量。新书籍到货时,采购人员向在线销售目录(Catalog)中添加新的书籍信息(Addbooks)。

(5)采购人员根据书籍的销售情况,对销量较低的书籍设置折扣或促销活动(Promotebooks)。

(6)当新书籍到货时,仓库管理员(Warehouseman)接收书籍,更新库存(Updatestock)。

现采用面向对象方法开发书籍销售系统,得到如图3-1所示的用例图和图3-2所示的初始类图(部分)。

中级软件设计师,历年真题,2019年上半年(下午)《软件设计师》真题

中级软件设计师,历年真题,2019年上半年(下午)《软件设计师》真题

【问题1】(6分)

根据说明中的描述,给出图3-1中A1?A3所对应的参与者名称和U1?U3处所对应的用例名称。

【问题2】(6分)

根据说明中的描述,给出图3-1中用例U3的用例描述。(用例描述中必须包括基本事件流和所有的备选事件流)。

【问题3】(3分)

根据说明中的描述,给出图3-2中C1?C3所对应的类名。

正确答案及解析

正确答案
解析

【问题1】(6分)

A1:采购人员或Buyer

A2:仓库管理员Warehouseman

A3:派送人员或Dispatcher

U1:注册或Registerdetail

U2:打印订单或Printorder

U3:购买书籍或Buybooks

【问题2】

U3用例描述

参与者顾客。

主要事件流:

1、顾客登录系统;

2、顾客浏览书籍信息;

3、系统检查某种书籍的库存量是否为0;

4、顾客选择所需购买的书籍及购买数量;

5、系统检查库存量是否足够;

6、系统显示验证验证界面;

7、顾客输入验证码验证;

8、系统自动生成订单;

备选事件流:

3a.若库存量为0则无法查询到该书籍信息,退回到2;

5a.若购买数量超过库存量,则提示库存不足,并退回到4;

7a.若验证错误,则提示验证错误,并退回到6;

8a.若顾客需要可以选择打印订单。

前置条件:

1、注册成功。

后置条件:

1、购买成功

【问题3】

C1:顾客或Customer

C2:订单或Order

C3:书籍或Books

【问题1】

(1)根据题干描述“用于销售的书籍由公司的采购人员(Buyer)进行采购(Reorderbooks)”,与采购(Reorderbooks)相关的参与者是采购人员(Buyer),因此A1为采购人员或Buyer;

(2)根据题干描述“当新书籍到货时,仓库管理员(Warehouseman)接收书籍,更新库存(Update stock)。”,与更新库存(Updatestock)相关的参与者是仓库管理员(Warehouseman),因此A2为仓库管理员或Warehouseman;

(3)根据题干描述“派送人员(Dispatcher)每天早晨从系统中获取当日的派送列表信息(Producepicklist)”,与Producepicklist相关的参与者是派送人员(Dispatcher),因此A3为派送人员或Dispatcher;

(4)根据题干描述“(1)首次使用系统时,顾客需要在系统中注册(Registerdetail)。顾客填写注册信息表要求的信息,包括姓名(name)、收货地址(address)、电子邮箱(email)等,系统将为其生成一个注册码。”这里有顾客相关用例注册(Registerdetail)。

根据题干描述“(2)注册成功的顾客可以登录系统在线购买书籍(Buybooks)。购买时可以浏览书籍信息,包括书名(title)、作者(author)、内容简介(introduction)等。如果某种书籍的库存量为0,那么顾客无法查询到该书籍的信息。顾客选择所需购买的书籍及购买数量(quantities),若购买数量超过库存量,提示库存不足;若购买数量小于库存量,系统将显示验证界面,要求顾客输入注册码。注册码验证正确后,自动生成订单(Order),否则,提示验证错误。如果顾客需要,可以选择打印订单(Printorder)。”这里有顾客相关用例在线购买书籍(Buybooks)、打印订单(Printorder),并且这里提到如果顾客需要,可以选择打印订单,可以知道打印订单(Printorder)是在线购买书籍(Buybooks)在某个条件下的扩展。打印订单(Printorder)是在线购买书籍(Buy books)的扩展,体现在图示当中,<<extend>>箭头指向基用例在线购买书籍(Buybooks)即U3,<<extend>>箭头流出端为扩展用例打印订单(Printorder)即U2,注意箭头指向的区别。

U1与其他用例没有相关关系,即U1为注册(Registerdetail)。

【问题2】

当用例图不能提供用例所具有的全部信息,需要使用文字描述那些不能反映在图形上的信息。用例描述是加上关于参与者和系统如何交互的规格说明,在编写用例描述的时候,应该只注重外部能力,不涉及内部细节。一般用例描述包括以下内容:

1.目的:简要描述系统的最终任务和结果。

2.事件流:

(1)说明用例是怎么启动的,那些参与者在什么情况下启动执行用例;

(2)说明参与者和用例之间的信息处理过程;

(3)说明用例在不同的条件下,可以选择执行的多种方案;

(4)说明用例在什么情况下才能被视作完成,完成时结果传给参与者;

基本流说明了参与者和系统之间的相互交互或对话的顺序,当这种交互完成后,参与者便实现了预期目的;可选流程也可以促进成功的完成任务,但他们代表了任务的细节或用于完成任务的途径的变化部分。

3.特殊要求:说明此用例的特殊要求。

4.前提条件:说明此例的前提条件。

5.后置条件:用例执行结束后,结果应该传给说明参与者。

本题用例描述可以大致概括为:

参与者顾客。

主要事件流:

1、顾客登录系统;

2、顾客浏览书籍信息;

3、系统检查某种书籍的库存量是否为0;

4、顾客选择所需购买的书籍及购买数量;

5、系统检查库存量是否足够;

6、系统显示验证界面;

7、顾客输入验证码验证;

8、系统自动生成订单。

备选事件流:

3a.若库存量为0则无法查询到该书籍信息,退回到2;

5a.若购买数量超过库存量,则提示库存不足,并退回到4;

7a.若验证错误,则提示验证错误,并退回到6;

8a.若顾客需要可以选择打印订单。

【由于本题用例给出的并不详细,没有给出登录用例等内容,所有描述都在购买书籍用例描述当中,所以这里也就没有给出前置条件和后置条件,将所有内容都放在了主要事件流当中。此处答案不唯一。】

【问题3】

(1)根据题干描述“顾客填写注册信息表要求的信息,包括姓名(name)、收货地址(address)、电子邮箱(email)等”,包含name、address、email属性的类应该是顾客,即C1:顾客或Customer;

(2)根据题干描述“购买时可以浏览书籍信息,包括书名(title)、作者(author)、内容简介(introduction)等”,包含title、author、introduction属性的类应该是书籍,即C3:书籍或Books;

(3)根据图示OrderedBook类即已订购的书籍类,与顾客相关的类,并且是已订购书籍的整体,所以C2应该是生成的订单,列出已订购书籍,并且与顾客有依赖关系,即C2:订单或Order。

包含此试题的试卷

你可能感兴趣的试题

单选题

E-mail地址由分隔符“()”分为前后两部分,分别指明用户名及邮件

  • A.//
  • B.\\
  • C.@
查看答案
单选题

某 html 文档中有如下代码,则在浏览器中打开该文档时显示为( )。

<form>

Listl:

<input type="text" name="List1" />

<br / >

List2:

<input type="text" name="List 2 " />

< /form>

初级程序员,章节练习,初级程序员真题

  • A.见图A
  • B.见图B
  • C.见图C
  • D.见图D
查看答案
单选题

设有商品关系P(商品名,条形码,供应商号,价格,数量), “条形码”唯一标识关系P中的每一个元组,商品名不能为空,供应商号是关系P的外键。另有供应商关系S(供应商号,供应商名,地址,电话)。关系 P 中的商品名是唯一的。建立商品关系 P 的 SQL语句如下所示:

CREATE TABLE P( 商品名CHAR(30)( ),

条形码CHAR(30) ( ) ,

供应商号 CHAR(5) ,

价格 CHAR(20) ,

数量CHAR(20)

( )(供应商号) REFERENCES S(供应商号));

查询供应商及价格小于等于 2500 元且大于等于 1280 元的“电冰箱”的数量的SQL语句为:

SELECT商品名,供应商名,价格,数量

FROM P

WHERE商品名= ’电冰箱’ AND ( ) ;

将供应商号“12021”所供应的商品价格上涨3%的SQL语句为:

UPDATE P

( )

WHERE 供应商号= ’12021’;

查询供应商地址包含“西安”的供应商名及电话的SQL语句为:

SELECT供应商名,电话

FROM S

WHERE ( );

  • A.NULL
  • B.UNIQUE
  • C.NOT NULL
  • D.NOT NULL UNIQUE
查看答案
单选题

函数f()、g()的定义如下所示。已知调用f时传递给其形参x的值是1,若以传值方式调用g,则函数f的返回值为( );若以传引用方式调用g,则函数f的返回值为( )。

初级程序员,章节练习,初级程序员真题

  • A.3
  • B.4
  • C.6
  • D.7
查看答案
单选题

初级程序员,章节练习,初级程序员真题

初级程序员,章节练习,初级程序员真题

  • A.见图A
  • B.见图B
  • C.见图C
  • D.见图D
查看答案

相关题库更多 +