1、 ATM系统需求分析设计和改善 目录1引言11.1编写目标11.2定义12总体设计12.1需求概述12.2软件结构23.基于UMLATM自动取款机系统分析设计23.1 CIM-1定义业务步骤23.2 CIM-2 分析业务步骤43.2.1 用户取钱业务步骤活动图.43.2.2 用户转账业务步骤活动图.43.2.3 用户修改密码业务用例活动图53.2.4 用户查询余额业务用例活动图63.3 CIM-3定义系统范围.83.3.1 用户包下可开启系统用例83.3.2 银行管理员包下系统用例图83.2.3定时开启者包下系统用例93.4 PIM-1分析业务步骤93.4.1 SUC001-取款系统用例业务9
2、3.4.2 SUC002-转账业务系统用例103.4.3 SUC003- 修改密码业务系统用例113.4.4 SUC004- 查询余额业务系统用例123.5 PIM-2 分析业务规则状态图(取款)134程序描述144.1 取款子系统174.1.1功效174.1.2性能174.1.3输入项目174.1.4输出项目184.1.5算法184.1.6程序逻辑194.1.7接口193.1.8存放分配203.1.9限制条件203.1.10测试关键点204.2存款子系统204.2.1功效204.2.2性能204.2.3输入项目204.2.4输出项目204.2.5算法214.2.6程序逻辑224.2.7接口2
3、24.2.8存放分配234.2.9限制条件234.2.10测试关键点234.3 转账子系统234.3.1功效234.3.2性能234.3.3输入项目234.3.4输出项目234.3.5算法244.3.6程序逻辑254.3.7接口254.3.8存放分配264.3.9限制条件264.3.10测试关键点264.4 查询余额子系统264.4.1功效264.4.2性能264.4.3输入项目264.4.4输出项目264.4.5算法274.4.6程序逻辑284.4.7接口284.4.8存放分配294.4.9限制条件294.4.10测试关键点294.5 修改密码子系统294.5.1功效294.5.2性能294
4、.5.3输入项目294.5.4输出项目294.5.5算法304.5.6程序逻辑314.5.7接口314.5.8存放分配324.5.9限制条件324.5.10测试关键点324.6 打印凭条子系统324.6.1功效324.6.2性能324.6.3输入项目324.6.4输出项目334.6.5算法334.6.6程序逻辑344.6.7接口344.6.8存放分配354.6.9限制条件354.6.10测试关键点351引言1.1编写目标 ATM自动取款机系统是银行业务步骤过程中十分关键且必备步骤之一,在银行业务步骤当中起着承上启下作用,其关键性不言而喻。不过,现在很多银行在具体部分业务步骤处理过程中仍然使用手
5、工操作方法来实施,不仅费时、费力,效率低下,而且无法达成理想效果。为此,我们在明确该软件需求基础上,安排项目计划和进度、组织软件开发和测试,撰写本文档。本文档针对上述问题,采取软件工程开发原理,依据软件步骤过程规范,根据需求分析,概要设计,程序编码,软件应用等过程,开发了这个系统。 1.2定义专业术语和缩略词帐号:在银行中,事物应用单个帐号。每个用户能够拥有多个帐号。用户:拥有银行一个或多个帐号人。能够是一个人或多个人,或是企业。相同人,拥有不一样银行帐号被认为是不一样落户。ATM:ATM是Automatic Teller Machine 缩写,意为自动取款机。是一个高度精密机电一体化设备,利
6、用磁卡或智能IC卡储存用户信息并经过加密键盘输入密码然后经过银行内部网络验证并进行多种交易金融自助设备。2总体设计2.1需求概述 伴随科技发展,大家生活水平不停提升,高性能高效率产品越来越受到大家欢迎。 ATM自动取款机是一个很智能机器,大家能够直接和它交互,替换以前手工操作,大大提升了银行工作效率。针对银行业务种类繁多、用户需求量大等现象,为了降低银行人员工作任务,方便用户,使用户自己就能够在ATM机上存款、取款、查询余额、转账、修改密码、打印凭条、退卡等基础功效。在这么需求下我们模拟开发了ATM自动取款机系统。 2.2软件结构系统层次结构图图2.1 图2.1 系统层次结构3.基于UMLAT
7、M自动取款机系统分析设计3.1 CIM-1定义业务步骤ATM自动取款机系统业务用例图.该系统关键有两个实施者:银行管理员和用户。银行管理员会开启或参与业务关键有添加现金、维护ATM硬件设备和帮助用户改密码。用户开启或参与业务关键有修改密码、取钱、转账和查询余额。 图3-1 用户ATM自动取款机业务用例业务用例名称简述(1)修改密码用户于ATM自动取款机上能够进行修改密码业务操作(2)取钱用户于ATM自动取款机上能够进行取钱操作(3)查询余额用户于ATM自动取款机上能够进行查询余额操作(4)转账用户于ATM自动取款机上能够进行转账操作 银行管理员ATM自动取款机业务用例业务用例名称简述(1)修改
8、密码银行管理员帮助用户修改密码并做统计(2)添加现金银行管理员适时添加现金,方便用户取款(3)维护ATM硬件设备维护ATM硬件设备,确保ATM机正常工作3.2 CIM-2 分析业务步骤3.2.1 用户取钱业务步骤活动图.用户首先将磁卡插入ATM机中,初始化ATM屏幕;依据屏幕提醒输入密码,系统验证密码正确性,若不正确,重新输入密码,若连续输入密码三次不正确,退出服务.若输入密码正确,用户依据提醒选择取款服务,然后输入取款数额,系统判定输入取款数额正当性,若不正当(这里不考虑透支)退出服务;若正当,吐款机吐款. 图3-23.2.2 用户转账业务步骤活动图. 用户首先将磁卡插入ATM机中,初始化A
9、TM屏幕;依据屏幕及语音提醒输入密码,系统验证密码正确性,若不正确,重新输入密码,若连续输入密码三次不正确,退出服务.若输入密码正确,用户依据屏幕提醒选择转账服务,进入转账/汇款操作界面,选择要转入卡账户类型(银行卡或存折),然后输入所要转入卡卡号,输入转账金额。退出 图3-33.2.3 用户修改密码业务用例活动图用户首先将磁卡插入ATM机中,初始化ATM屏幕;依据屏幕及语音提醒输入密码,系统验证密码正确性,若不正确,重新输入密码,若连续输入密码三次不正确,退出服务.若输入密码正确,用户依据屏幕提醒选择修改密码服务,进入修改密码服务界面。依据语音及界面提醒两次输入用户欲设置新密码。系统验证新密
10、码正当性,看是否是六位数,两次输入是否一致等。如经过验证,系统经过AYM屏幕提醒用户密码修改成功。最终退出服务。 图3-43.2.4 用户查询余额业务用例活动图用户首先将磁卡插入ATM机中,初始化ATM屏幕;依据屏幕及语音提醒输入密码,系统验证密码正确性,若不正确,重新输入密码,若连续输入密码三次不正确,退出服务.若输入密码正确,用户依据屏幕提醒选择修改密码服务,进入查询余额服务界面。按下确定按钮.系统连接综存系统,计算用户账户余额,并经过ATM机显示器幕显示给用户. 图3-53.3 CIM-3定义系统范围.3.3.1 用户包下可开启系统用例 图3-6系统用例名称简述(1)转账用户到ATM机使
11、用系统实施转账业务(2)取款用户到ATM机使用系统实施取款业务(3)修改密码用户到ATM机使用系统实施修改密码操作(4)查询余额用户到ATM机使用系统实施查询余额操作3.3.2 银行管理员包下系统用例图 图3-7系统用例名称简述(1)添加现金银行管理员用ATM系统添加现金(2)维护硬件设备银行管理员维护硬件系统3.2.3定时开启者包下系统用例 图3-8 系统用例名称简述(1)计算利息系统于约定时间自动计算利息(2)扣除利息和手续费系统于交易发生后扣除手续费,系统于约定时间扣除利息税(3)业务短信系统于交易发生后自动发送短信给用户3.4 PIM-1分析业务步骤3.4.1 SUC001-取款系统用
12、例业务用例名称取款用例编号SUC001用例简述用户在ATM机上取款用例图关键步骤(1) 用户插入磁卡,初始化ATM系统屏幕(2) 系统提醒输入密码。(3) 用户输入密码并经过系统验证(4) 系统列出服务项目(5) 用户选择取款,输入取款金额,按下确定键。(6) 系统验证取款数额正当性。并计算出手续费(7) 系统连接到综存系统,查询账户余额,确定余额是否足够。(8) 吐款机吐款,交易成立(9) 系统提供打印功效,供用户选择是否打印替换步骤(3)a密码错误系统出现密码错误警告。并返回关键步骤(2),供用户重新输入密码(6)a金额不符系统出现取款金额必需为50元整数信息,回到关键步骤(5),供用户重
13、新输入取款金额(6)b金额过低系统出现最低取款信息,回到关键步骤(5),供用户重新输入取款金额(6)c 金额过高系统出现最高取款信息,回到关键步骤(5),供用户重新输入取款金额(7)a余额不足系统出现余额不足信息,回到关键步骤(5),供用户重新输入取款金额业务规则(1) 交易款项=取款金额+手续费(2) 手续费=取款金额*银行管理费*银行折扣(3) 取款金额最低为50元,取款金额最高为5000(4) 取款金额为非作50元整数倍(5) 系统根据银行原有编码方法生成交易编号其它打印了取款凭条3.4.2 SUC002-转账业务系统用例用例名称转账用例编号SUC002用例简述用户ATM机上转账用例图关
14、键步骤(1) 用户插入磁卡,初始化ATM系统屏幕(2) 系统提醒输入密码。(3) 用户输入密码并经过系统验证(4) 系统列出服务项目(5) 用户选择取款,输入转账金额,按下确定键。(6) 系统验证转账数额正当性。并计算出手续费(7) 系统连接到综存系统,查询账户余额,确定余额是否足够。(8) 交易成立,系统提供打印功效,供用户选择是否打印替换步骤3)a密码错误系统出现密码错误警告。并返回关键步骤(2),供用户重新输入密码(6)a金额不符系统出现转账金额必需为50元整数信息,回到关键步骤(5),供用户重新输入取款金额(6)b金额过低系统出现最低取款信息,回到关键步骤(5),供用户重新输入取款金额
15、(6c金额过高系统出现最高取款信息,回到关键步骤(5),供用户重新输入取款金额(7)a余额不足系统出现余额不足信息,回到关键步骤(5),供用户重新输入取款金额业务规则(1) 交易款项=转账金额+手续费(2) 手续费=转账金额*银行管理费*银行折扣(3) 转账最低金额为50元,最高为5000元(4) 系统根据银行原有编码方法生成交易编号3.4.3 SUC003- 修改密码业务系统用例用例名称修改密码用例编号SUC003用例简述用户在ATM机上修改用户密码用例图关键步骤(1) 用户插入磁卡,初始化ATM系统屏幕(2) 系统提醒输入密码。(3) 用户输入密码并经过系统验证(4) 系统列出服务项目(5
16、) 用户选择修改密码,按下确定键。(6) 用户连续三次输入新密码,按下确定键。替换步骤3)a密码错误系统出现密码错误警告。并返回关键步骤(2),供用户重新输入密码6)a密码不符系统出现密码格式必需为6位数字信息,回到关键步骤(5),供用户重新输入新密码。6) b密码不一样系统出现三次输入密码不一致信息,回到关键步骤(5),供用户重新输入新密码。3.4.4 SUC004- 查询余额业务系统用例用例名称查询余额用例编号SUC004用例简述用户在ATM机上查询余额用例图关键步骤(1) 用户插入磁卡,初始化ATM系统屏幕(2) 系统提醒输入密码。(3) 用户输入密码并经过系统验证(4) 系统列出服务项
17、目(5) 用户选择查询余额,按下确定键。(6) 系统连接到综存系统,查询账户余额,并依据银行要求计算出账户余额。(7) ATM系统屏幕显示用户账户余额和可用余额替换步骤3)a密码错误系统出现密码错误警告。并返回关键步骤(2),供用户重新输入密码3.5 PIM-2 分析业务规则状态图(取款)用户取款业务状态分析:从用户插入磁卡起始状态到结状态,中间还有输入密码,选择服务,取款,吐款状态.(1)用户插入磁卡初始化ATM系统屏幕,进入屏幕提醒输入密码界面,用户此时可有输入密码动作(DoAction)。(2)若密码输入不正确,返回输入密码,若三次输入不正确,退卡。若密码经过系统验证,进入选择服务类型界
18、面。此时用户动作能够为选择取款,选择修改密码,选择转账,选择查询爷额。(3)若用户选择取款服务后进入取款界面,此时用户能够动作为输入取款数额。(40若输入取款数额不正当,退卡。系统验证取款熟额正当后,进入吐款机吐款状态。4程序描述ATM自动取款机系统包含六个子系统和七个对应模块。六个子系统分别是:取款系统、存款系统、修改密码系统、查询余额系统,打印凭条系统。七个模块分别是:读卡机模块图3.1、键盘输入模块图3.2、IC卡认证模块图3.3、显示模块图3.4、吐钱机模块图3.5、打印凭条模块图3.6,数据存放模块图3.7。图3.1读卡机模块数据步骤图图3.2 键盘输入模块数据步骤图图 3.3 IC
19、卡认证模块数据步骤图图3.4 显示模块数据步骤图图 3.5吐钱机模块数据步骤图图3.6 打印凭条模块数据步骤图图 3.7 数据存放模块数据步骤图4.1 取款子系统4.1.1功效 用户能够在ATM自动取款机上完成取款操作。4.1.2性能在取款时候,ATM自动取款机反应时间不能超出2秒,在45秒内完成全部取款动作,不然自动退卡。4.1.3输入项目表3-1 取款输入项目名称类型银行卡磁卡密码int(6位整数)取款金额int(100整数倍,不能超出2500)4.1.4输出项目表3-2 取款输出项目名称类型纸币凭条文本4.1.5算法图3.8 取款活动图4.1.6程序逻辑图3.9 取款时序图4.1.7接口
20、系统程序内部在功效模块下设置程序接口见表3-3,图3.10表3-3 取款软件接口函数输入输出Open()卡号 密码提醒信息WithdrawFunds()金额纸币DeductFunds()无无VerifyFunds()无无图3.10 取款类图3.1.8存放分配账户表 储蓄卡表 ATM表 清单表3.1.9限制条件ATM自动取款机中纸币没有了。3.1.10测试关键点 因为好产品才能得到用户认可和肯定,所以要对系统反应速度、正确性(输入金额数和吐钱机吐出钱数要一致)和安全性,和系统稳定应有很高要求。4.2存款子系统4.2.1功效用户能够经过和ATM自动取款机交互,完成存款操作。4.2.2性能系统反应时
21、间是不能超出2秒,完成取款操作时间不能超出30秒。4.2.3输入项目表3-4 存款子系统输入项目名称类型银行卡磁卡密码int(6位整数)金额int(100整数倍)账号19位整数4.2.4输出项目表3-5 存款子系统输出项目名称类型凭条文本4.2.5算法图3.11 存款活动图4.2.6程序逻辑图3.12 存款时序图4.2.7接口系统程序内部在功效模块下设置程序接口见表3-6 ,图3.13表3-6 存款子系统软件接口函数输入输出Open()卡号 密码提醒信息DepositFunds()金额无AddFunds()无无VerifyFunds()无无图3.13 存款类图4.2.8存放分配账户表 储蓄卡表
22、 ATM表 清单表4.2.9限制条件ATM自动取款机中纸币以满,不能再放入纸币。4.2.10测试关键点好产品才能得到用户认可和肯定,只有得到用户肯定才会有市场,为此要对系统反应速度、正确性(能正确读取放入纸币数目)和安全性,和系统稳定应有很高要求。4.3 转账子系统4.3.1功效用户能够经过和ATM自动取款机交互,完成转账操作。4.3.2性能系统反应时间是不能超出2秒,完成转账操作时间不能超出30秒。4.3.3输入项目表3-7 转账子系统输入项目名称类型银行卡磁卡密码int(6位整数)账号19位整数金额int(100整数倍) 4.3.4输出项目表3-8 转账子系统输出项目名称类型凭条文本4.3
23、.5算法图3.14 转账活动图4.3.6程序逻辑图3.15 转账时序图4.3.7接口系统程序内部在功效模块下设置程序接口见表3-9,图3.16表3-9 转账子系统软件接口函数输入输出Open()卡号 密码提醒信息TransferFunds()金额无DeductFunds()无无VerifyFunds()无无图3.16 转账类图4.3.8存放分配账户表 储蓄卡表 ATM表 清单表4.3.9限制条件银行卡里余额不足或不是同一类型卡。4.3.10测试关键点好产品才能得到用户认可和肯定,只有得到用户肯定才会有市场,为此要对系统反应速度、正确性(转走金额和转入到某一账户金额数一致,数据库里信息要正确更新
24、)和安全性,和系统稳定应有很高要求。4.4 查询余额子系统4.4.1功效用户能够经过和ATM自动取款机交互,完成查询余额操作。4.4.2性能系统反应时间是不能超出2秒,完成查询余额操作时间不能超出30秒。4.4.3输入项目表3-10 余额查询子系统输入项目名称类型银行卡磁卡密码int(6为整数)4.4.4输出项目表3-11 余额查询子系统输出项目名称类型凭条文本4.4.5算法图3.17 余额查询活动图4.4.6程序逻辑图 3.18 余额查询时序图4.4.7接口系统程序内部在功效模块下设置程序接口见表3-12,图3.19表3-12 查询余额子系统软件接口函数输入输出Open()卡号 密码无Que
25、ry()无无图3.19 余额查询类图4.4.8存放分配账户表 储蓄卡表 清单表4.4.9限制条件硬件故障4.4.10测试关键点好产品才能得到用户认可和肯定,只有得到用户肯定才会有市场,为此要对系统反应速度有很高要求,这也是最基础要求。4.5 修改密码子系统4.5.1功效用户能够经过和ATM自动取款机交互,完成修改密码操作。4.5.2性能系统反应时间是不能超出2秒,完成修改密码操作时间不能超出30秒。4.5.3输入项目表3-13修改密码子系统输入项目名称类型银行卡磁卡旧密码int(6为整数)新密码int(6为整数)4.5.4输出项目表3-14 修改密码子系统输出项目名称类型凭条文本4.5.5算法
26、图 3.20 修改密码活动图4.5.6程序逻辑图3.21 修改密码时序图4.5.7接口系统程序内部在功效模块下设置程序接口见表3-15,图3.22 表 3-15修改密码子系统软件接口函数输入输出Open()卡号 密码无AlterPassword()旧密码 新密码无图3.22 修改密码类图4.5.8存放分配账户表 储蓄卡表 清单表4.5.9限制条件忘记了旧密码4.5.10测试关键点好产品才能得到用户认可和肯定,为此要对系统反应速度、 安全性,和系统稳定有很高要求。4.6 打印凭条子系统4.6.1功效用户能够经过和ATM自动取款机交互,完成部分基础操作。如取款、存款、查询余额、修改密码,转账等。为
27、了确保用户安全性和系统稳定性,打印凭条子系统能够统计这些相关操作,相当于文本形式日志。假如出现错误能够凭借凭条到银行进行核实。4.6.2性能系统反应时间是不能超出2秒,完成对应操作后打印凭条时间不能超出30秒。4.6.3输入项目表3-16 打印凭条子系统输入项目名称类型银行磁卡密码int(6为整数)取款、转账等相关动作4.6.4输出项目表3-17 打印凭条子系统输出项目名称类型凭条文本4.6.5算法图 3.23 打印凭条活动图4.6.6程序逻辑图3.24 打印凭条时序图4.6.7接口系统程序内部在功效模块下设置程序接口见表3-18,图3.25表 3-18 打印凭条子系统软件接口函数输入输出Open()卡号 密码无PrintSlip()无凭条(清单)图3.25 打印凭条类图4.6.8存放分配账户表 储蓄卡表 清单表 ATM表4.6.9限制条件 ATM自动取款机里凭条纸用完了、纸币没有了或是硬件出项了故障。4.6.10测试关键点对系统反应速度,稳定性有很高要求,以达成用户满意度。