吉林大学软件学院——UMl作业3

五. 简答题(共4题,34分)

31. (简答题, 8分)

某银行计划开发一个自动存提款机模拟系统(ATM System)。系统通过读卡器(CardReader)读取ATM卡;系统与客户(Customer)的交互由客户控制台(CustomerConsole)实现;银行操作员(Operator)可控制系统的启动(System Startup)和停止(System Shutdown);系统通过网络和银行系统(Bank)实现通信。

当读卡器判断用户已经将ATM卡插入后,创建会话(Session)。会话开始后,读卡器进行读卡,并要求客户输入个人验证码(PIN)。系统将卡号和个人验证码信息送到银行系统进行验证。验证通过后,客户可从菜单选择如下事务(Transaction):

1.      从ATM卡帐户取款(Withdraw);

2.      向ATM卡帐户存款(Deposit);

3.      进行转帐(Transfer);

4.      查询(Inquire)ATM卡帐户信息。

一次会话可以包含多个事务,每个事务处理也会将卡号和个人验证码信息送到银行系统进行验证。若个人验证码错误,则转个人验证码错误处理(Invalid PIN Process)。每个事务完成后,客户可选择继续上述事务或退卡。选择退卡时,系统弹出ATM卡,会话结束。

系统采用面向对象方法开发,使用UML进行建型。一次会话的序列图(不考虑验证)如图3-2所示。消息名称见表3-1。

表3-1 可能的消息名称列表

名称

说明

名称

说明

cardInserted()

ATM卡已插入

performTransaction()

执行事务

performSession()

执行会话

readCard()

读卡

readPIN()

读取个人验证码

PIN

个人验证码信息

create(atm,this,card,pin)

为当前会话创建事务

create(this)

为当前ATM创建会话

card

ATM卡信息

doAgain

执行下一个事务

ejectCard()

弹出ATM卡

图3-2 一次会话的序列图(无验证消息)

【问题】

根据说明中的描述,使用表3-1中的英文名称,给出图3-2中6~9对应的消息。

正确答案:

6: readPIN()  

7: PIN  

8: create(atm, this, card, pin)    

9: performTransaction()

32. (简答题, 8分)

绘制“删除读者信息”用例的活动图。删除读者信息按照以下步骤进行:

1)管理员在录入界面,输入待删除的读者名;

2)“业务逻辑”组件在数据库中,查找待删除的读者名;

3)如果不存在,则显示出错信息,返回步骤(1),如果存在则继续;

4)“业务逻辑”组件判断“待删除的读者”是否可以删除;

5)如果不可以,则显示出错信息,返回步骤(8),如果可以则继续;

6)在数据库中,删除相关信息;

7)显示删除成功信息;

8)结束。

33. (简答题, 8分)

按照如下描述完成超市结账系统活动图。

活动图开始,客户(Customer)推着购物车到达收银台;收银员(Cashier)扫描或者输入客户所购商品;收银系统(Pos)计算总价格;根据结账方式(现金、银行卡),确定后续的操作;如果选择了银行卡,则提交银行卡授权请求,银行(Bank)授权结账;打印小票;收银员装袋,客户拿到小票;活动图结束。

34. (简答题, 10分)纠正以下活动图中的问题,给出一个合理的活动图。

答案: 

 

  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Code Slacker

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值