问题描述:
软件学院的项目组近期接到一个大项目----为银行开发一个ATM系统。银行方面希望新的系统能够安全高效地服务大众。新的系统不仅要实现用户使用ATM机进行查询余额,取款,转账,更换密码等基本功能,还要实现高效,简单并且安全的人性化流程,以供用户使用。
银行方面表示资金充足,主要是系统的可靠性和方便性。故可以租匿多个服务器,实现负载均衡访问,服务器均选择linux服务器,如果技术人员允许的情况下,可以采用项目docker化,为ATM机提供各种需要的接口。数据库方面的安全性是必须要有保障的,因为这是本项目的根本,故可以把项目的大部分资金用在安全性的实现上,也可在运维上下功夫。
用户进入系统,输入密码可选取款,存款,转账,查询余额等操作。
取款:输入取款金额,验证金额是否合法,如果合法则吐出现金,否则跳回输入金额页面。
存款:放入现金,验证是否有假币,只把有效的数值存入数据库。
转账:选择转账的账户,验证账户是否合法,输入转账金额,验证金额是否合法,完成转账。
查询余额:系统查询余额,显示余额。
每当有用户使用ATM机时,会播放一个教学视频,显示了ATM机的各种操作,还时刻播放警惕安全的录音。
摄像头也把用户的操作以及周边的环境都录下来,以便应对特发情况。
词汇表:
- 插卡
用户把存蓄卡插入到ATM机的卡控
2.选择目录
ATM机可选的操作目录
3.验证
验证输入是否正确
3.1验证密码
验证输入的密码与数据库中密码是否对等
3.2验证金额
验证输入的金额是否正确
3.3验证通过
输入正确
3.4验证失败
输入不通过,不能进行下一步操作
4.吐出金钱
取款时ATM机吐出的现金
5.继续请求
完成一个操作后,可选继续操作
6.退卡
完成系列操作后,将卡从ATM机吐出
用况图:
ATM用况图.png业务详细描述:
- 用况名
登录
1.1 简述
描述用户或ATM管理员录入卡号并输入密码进入主界面的动作。
1.2参与者
用户、ATM管理员。
1.3前置条件
ATM系统处于开始界面,用户或管理员插卡操作
1.4 后置条件
输入的密码正确,系统进入主界面/管理员界面;或者密码错误,系统退回到开始界面,并冻结了银行卡/管理员卡;或者取消输入密码,系统退卡并退回到开始界面。
2.用况名
查询余额
2.1简述
这个用例是描述用户到ATM上查询账户余额信息的操作。
2.2参与者
用户。
2.3前置条件
用户成功进入主界面。
2.6后置条件
系统回到主界面。
ATM类图:
image.pngATM取款顺序图:
image.pngATM存款顺序图:
image.png
ATM查询余额顺序图:
image.pngATM转账顺序图:
image.png
一、图形文档
1、取款
image.png- 存款
- 转账
- 查询账户信息活动图
二、文字说明
1、取款活动图 描述客户取款的过程,包含的动作有:选择取款功能、提示输入取款金额、输入取款金额、吐出相应金额的钱、取走现金、发送取款金额和账户、修改账户余额、返回账户余额、显示账户余额、选择退出。具有的泳道有:用户、取款界面、取款控制、银行主机。 2、存款活动图 描述客户存款的过程,包含的动作有:选择取款功能、提示将现金放入槽中、将现金放入槽中、发送存款金额和账户、修改账户余额、返回账户余额、显示账户余额、选择退出。具有的泳道有:存款界面、存款控制、银行主机、客户。 3、转账活动图 描述客户转账的过程,包含的动作有:选择转账功能、提示输入转账金额和账户、输入转账金额和账户、发送转账金额和账户、修改账户余额、返回账户余额、显示账户余额、选择退出。具有的泳道有:转账界面、转账控制、银行主机、客户。
4、查询账户信息活动图 描述客户查询信息的过程,包含的动作有:具有的泳道有:选择查询账户信息功能、发送帐号、查询账户信息、返回账户信息、显示账户信息、选择退出。查询账户信息界面、查询账户信息控制、银行主机、客户。
1.ATM状态机图
image.png1.状态机图综述 状态机图描述了ATM机使用时的状态变化,包含登录、取款、存款、转账、修改密码、打印凭条、查询余额、退卡、查询交易记录、主界面状态。 2.状态描述 图中涉及的所有状态都是简单状态。 (1)登录:用户/ATM管理员登陆ATM系统,入口动作为输入密码,密码错误时,重新输入密码。 (2)主界面:用户/ATM管理员登陆ATM系统后系统显示的主界面,以供选择操作类型,入口动作为选择操作。 (3)取款:取款动作,入口动作为输入金额,出口动作为生产交易记录。 (4)存款:存款动作,入口动作为放入现金,出口动作为生产交易记录。 (5)转账:转账动作,入口动作为输入账号,出口动作为生产交易记录。 (6)修改密码:修改密码动作,入口动作为输入旧密码,出口动作为生产交易记录。 (7)打印凭条:打印凭条动作,入口动作为打印,出口动作为生产交易记录。 (8)查询余额:查询余额动作,入口动作为显示余额,出口动作为生产交易记录。 (9)查询交易记录:查询交易记录动作,入口动作为显示交易记录,出口动作为生产交易记录。 (10)退卡:退卡动作,入口动作为退卡。 3.状态转移 (1)登录到主界面:当输入密码正确时执行。 (2)主界面到取款、存款、转账、修改密码、打印凭条、查询余额、查询交易记录、退卡:当该状态被选中时执行。 (3)取款、存款、转账、修改密码、打印凭条、查询余额、查询交易记录到主界面:当该状态退出时执行。
类图综述
类图描述了ATM系统的全部类的关系和功能。
ATM类图.png类描述
user 类是描述使用者的实体类,是client和administrator的父类,属于抽象类。 client类和administrator类继承自user类,cardNum和ID属性的数据类型不同,具有多态性。
bankCard类bankCard类特有balance(余额)属性,adCard类特有ATMNum(ATM编号)属性,均私有,并封装。bankCard类通过银行卡信息接口获得银行卡信息。 record****类管理是控制类,有增删查改的基本操作。 record类是实体类,关联bankCard类,每个record信息会关联一个银行卡信息,record类有serialNum(流水号)、tradeType(交易类型)、date(交易日期)、time(交易时间)、amount(交易金额)、cardNum(卡号)、tradeCard(交易卡号)、result(交易结果)、remark(备注)九个属性,均私有,并封装。record类中有增删查改基本操作。 record类是控制类,管理record类,有recordList(记录列表)一个属性,有增上查改的基本操作。 ATM类是实体类,administrator类与ATM类关联,1或多个管理员管理一个ATM,ATM类中有ID(编号)、bank(所属银行)、balance(余额)三个属性,均私有,并封装。
网友评论