《ATM自动取款机系统详细设计方案介绍书.doc》由会员分享,可在线阅读,更多相关《ATM自动取款机系统详细设计方案介绍书.doc(39页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、* ATM系统需求分析设计与改进 目录1引言11.1编写目的11.2定义12总体设计12.1需求概述12.2软件结构23.基于UML的ATM自动取款机系统分析设计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-取款系统
2、用例业务93.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.
3、7接口224.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性能29
4、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测试要点35*1引言1.1编写目的 ATM自动取款机系统是银行业务流程过程中十分重要且必备的环节之一,在银行业务流程当中起着承上启下的作用,其重要性不言而喻。但是,目前许多银行在具体的一些业务流程处理过程中仍然
5、使用手工操作的方式来实施,不仅费时、费力,效率低下,而且无法达到理想的效果。为此,我们在明确该软件需求的基础上,安排项目规划与进度、组织软件开发与测试,撰写本文档。本文档针对上述问题,采用软件工程的开发原理,依据软件流程过程规范,按照需求分析,概要设计,程序编码,软件应用等过程,开发了这个系统。 1.2定义专业术语与缩略词帐号:在银行中,事物应用的单个帐号。每个顾客可以拥有多个帐号。用户:拥有银行的一个或多个帐号的人。可以是一个人或多个人,或者是公司。相同的人,拥有不同的银行帐号被认为是不同的落户。ATM:ATM是Automatic Teller Machine 的缩写,意为自动取款机。是一种
6、高度精密的机电一体化设备,利用磁卡或智能IC卡储存用户信息并通过加密键盘输入密码然后通过银行内部网络验证并进行各种交易的金融自助设备。2总体设计2.1需求概述 随着科技的发展,人们生活水平的不断提高,高性能高效率的产品越来越受到人们的欢迎。 ATM自动取款机是一种非常智能的机器,人们可以直接与它交互,代替以前的手工操作,大大提高了银行的工作效率。针对银行业务种类繁多、客户需求量大等现象,为了减少银行人员的工作任务,方便客户,使用户自己就可以在ATM机上存款、取款、查询余额、转账、修改密码、打印凭条、退卡等基础功能。在这样的需求下我们模拟开发了ATM自动取款机系统。 2.2软件结构系统的层次结构
7、图如图2.1 图2.1 系统的层次结构3.基于UML的ATM自动取款机系统分析设计3.1 CIM-1定义业务流程ATM自动取款机系统业务用例图.该系统主要有两个执行者:银行管理员和客户。银行管理员会启动或参与的业务主要有添加现金、维护ATM硬件设备和协助客户改密码。客户启动或参与的业务主要有修改密码、取钱、转账和查询余额。 图3-1 客户ATM自动取款机业务用例业务用例名称简述(1)修改密码客户于ATM自动取款机上可以进行修改密码业务操作(2)取钱客户于ATM自动取款机上可以进行取钱操作(3)查询余额客户于ATM自动取款机上可以进行查询余额操作(4)转账客户于ATM自动取款机上可以进行转账操作
8、 银行管理员ATM自动取款机业务用例业务用例名称简述(1)修改密码银行管理员协助客户修改密码并做记录(2)添加现金银行管理员适时添加现金,方便客户取款(3)维护ATM硬件设备维护ATM硬件设备,保证ATM机正常工作3.2 CIM-2 分析业务流程3.2.1 客户取钱业务流程活动图.客户首先将磁卡插入ATM机中,初始化ATM屏幕;根据屏幕提示输入密码,系统验证密码正确性,若不正确,重新输入密码,若连续输入密码三次不正确,退出服务.若输入密码正确,客户根据提示选择取款服务,然后输入取款数额,系统判断输入的取款数额的合法性,若不合法(这里不考虑透支)退出服务;若合法,吐款机吐款. 图3-23.2.2
9、 客户转账业务流程活动图. 客户首先将磁卡插入ATM机中,初始化ATM屏幕;根据屏幕及语音提示输入密码,系统验证密码正确性,若不正确,重新输入密码,若连续输入密码三次不正确,退出服务.若输入密码正确,客户根据屏幕提示选择转账服务,进入转账/汇款的操作界面,选择要转入卡的账户类型(银行卡或存折),然后输入所要转入卡的卡号,输入转账金额。退出 图3-33.2.3 客户修改密码业务用例活动图客户首先将磁卡插入ATM机中,初始化ATM屏幕;根据屏幕及语音提示输入密码,系统验证密码正确性,若不正确,重新输入密码,若连续输入密码三次不正确,退出服务.若输入密码正确,客户根据屏幕提示选择修改密码服务,进入修
10、改密码服务界面。根据语音及界面提示两次输入客户欲设置的新密码。系统验证新密码的合法性,看是否是六位数,两次输入是否一致等。如通过验证,系统通过AYM屏幕提示客户密码修改成功。最后退出服务。 图3-43.2.4 客户查询余额业务用例活动图客户首先将磁卡插入ATM机中,初始化ATM屏幕;根据屏幕及语音提示输入密码,系统验证密码正确性,若不正确,重新输入密码,若连续输入密码三次不正确,退出服务.若输入密码正确,客户根据屏幕提示选择修改密码服务,进入查询余额服务界面。按下确认按钮.系统连接综存系统,计算客户账户余额,并通过ATM机显示屏幕显示给客户. 图3-53.3 CIM-3定义系统范围.3.3.1
11、 客户包下可启动的系统用例 图3-6系统用例名称简述(1)转账客户到ATM机使用系统执行转账业务(2)取款客户到ATM机使用系统执行取款业务(3)修改密码客户到ATM机使用系统执行修改密码操作(4)查询余额客户到ATM机使用系统执行查询余额操作3.3.2 银行管理员包下的系统用例图 图3-7系统用例名称简述(1)添加现金银行管理员用ATM系统添加现金(2)维护硬件设备银行管理员维护硬件系统3.2.3定时启动者包下的系统用例 图3-8 系统用例名称简述(1)计算利息系统于约定时间自动计算利息(2)扣除利息和手续费系统于交易发生后扣除手续费,系统于约定时间扣除利息税(3)业务短信系统于交易发生后自
12、动发送短信给客户3.4 PIM-1分析业务流程3.4.1 SUC001-取款系统用例业务用例名称取款用例编号SUC001用例简述客户在ATM机上取款用例图主要流程(1) 客户插入磁卡,初始化ATM系统屏幕(2) 系统提示输入密码。(3) 客户输入密码并通过系统验证(4) 系统列出服务项目(5) 客户选择取款,输入取款金额,按下确定键。(6) 系统验证取款数额的合法性。并计算出手续费(7) 系统连接到综存系统,查询账户余额,确认余额是否足够。(8) 吐款机吐款,交易成立(9) 系统提供打印功能,供客户选择是否打印替代流程(3)a密码错误系统出现密码错误警告。并返回主要流程(2),供客户重新输入密
13、码(6)a金额不符系统出现取款金额必须为50元整数的信息,回到主要流程(5),供客户重新输入取款金额(6)b金额过低系统出现最低取款的信息,回到主要流程(5),供客户重新输入取款金额(6)c 金额过高系统出现最高取款的信息,回到主要流程(5),供客户重新输入取款金额(7)a余额不足系统出现余额不足的信息,回到主要流程(5),供客户重新输入取款金额业务规则(1) 交易款项=取款金额+手续费(2) 手续费=取款金额*银行管理费*银行折扣(3) 取款金额最低为50元,取款金额最高为5000(4) 取款金额为非作50元的整数倍(5) 系统按照银行原有编码方式生成交易编号其他打印了取款凭条3.4.2 S
14、UC002-转账业务系统用例用例名称转账用例编号SUC002用例简述客户ATM机上转账用例图主要流程(1) 客户插入磁卡,初始化ATM系统屏幕(2) 系统提示输入密码。(3) 客户输入密码并通过系统验证(4) 系统列出服务项目(5) 客户选择取款,输入转账金额,按下确定键。(6) 系统验证转账数额的合法性。并计算出手续费(7) 系统连接到综存系统,查询账户余额,确认余额是否足够。(8) 交易成立,系统提供打印功能,供客户选择是否打印替代流程3)a密码错误系统出现密码错误警告。并返回主要流程(2),供客户重新输入密码(6)a金额不符系统出现转账金额必须为50元整数的信息,回到主要流程(5),供客
15、户重新输入取款金额(6)b金额过低系统出现最低取款的信息,回到主要流程(5),供客户重新输入取款金额(6c金额过高系统出现最高取款的信息,回到主要流程(5),供客户重新输入取款金额(7)a余额不足系统出现余额不足的信息,回到主要流程(5),供客户重新输入取款金额业务规则(1) 交易款项=转账金额+手续费(2) 手续费=转账金额*银行管理费*银行折扣(3) 转账最低金额为50元,最高为5000元(4) 系统按照银行原有编码方式生成交易编号3.4.3 SUC003- 修改密码业务系统用例用例名称修改密码用例编号SUC003用例简述客户在ATM机上修改客户密码用例图主要流程(1) 客户插入磁卡,初始
16、化ATM系统屏幕(2) 系统提示输入密码。(3) 客户输入密码并通过系统验证(4) 系统列出服务项目(5) 客户选择修改密码,按下确定键。(6) 客户连续三次输入新密码,按下确定键。替代流程3)a密码错误系统出现密码错误警告。并返回主要流程(2),供客户重新输入密码6)a密码不符系统出现密码格式必须为6位数字的信息,回到主要流程(5),供客户重新输入新密码。6) b密码不同系统出现三次输入密码不一致的信息,回到主要流程(5),供客户重新输入新密码。3.4.4 SUC004- 查询余额业务系统用例用例名称查询余额用例编号SUC004用例简述客户在ATM机上查询余额用例图主要流程(1) 客户插入磁
17、卡,初始化ATM系统屏幕(2) 系统提示输入密码。(3) 客户输入密码并通过系统验证(4) 系统列出服务项目(5) 客户选择查询余额,按下确定键。(6) 系统连接到综存系统,查询账户余额,并根据银行的规定计算出账户余额。(7) ATM系统屏幕显示客户账户余额与可用余额替代流程3)a密码错误系统出现密码错误警告。并返回主要流程(2),供客户重新输入密码3.5 PIM-2 分析业务规则状态图(取款)客户取款业务的状态分析:从客户插入磁卡的起始状态到结状态,中间还有输入密码,选择服务,取款,吐款状态.(1)客户插入磁卡初始化ATM系统屏幕,进入屏幕提示输入密码界面,客户此时可有输入密码动作(DoAc
18、tion)。(2)若密码输入不正确,返回输入密码,若三次输入不正确,退卡。若密码通过系统验证,进入选择服务类型界面。此时客户的动作可以为选择取款,选择修改密码,选择转账,选择查询爷额。(3)若客户选择取款服务后进入取款界面,此时客户可以动作为输入取款数额。(40若输入取款数额不合法,退卡。系统验证取款熟额合法后,进入吐款机吐款状态。4程序描述ATM自动取款机系统包括六个子系统和七个相应的模块。六个子系统分别是:取款系统、存款系统、修改密码系统、查询余额系统,打印凭条系统。七个模块分别是:读卡机模块如图3.1、键盘输入模块如图3.2、IC卡认证模块如图3.3、显示模块如图3.4、吐钱机模块如图3
19、.5、打印凭条模块如图3.6,数据存储模块如图3.7。图3.1读卡机模块的数据流程图图3.2 键盘输入模块的数据流程图图 3.3 IC卡认证模块的数据流程图图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的整数倍,不能超过2
20、500)4.1.4输出项目表3-2 取款的输出项目名称类型纸币凭条文本4.1.5算法图3.8 取款的活动图4.1.6程序逻辑图3.9 取款的时序图4.1.7接口系统程序内部在功能模块下设置的程序接口见表3-3,图3.10表3-3 取款的软件接口函数输入输出Open()卡号 密码提示信息WithdrawFunds()金额纸币DeductFunds()无无VerifyFunds()无无图3.10 取款的类图3.1.8存储分配账户表 储蓄卡表 ATM表 清单表3.1.9限制条件ATM自动取款机中纸币没有了。3.1.10测试要点 因为好的产品才能得到用户的认可和肯定,所以要对系统的反应速度、准确性(输
21、入的金额数和吐钱机吐出的钱数要一致)和安全性,以及系统的稳定应有非常高的要求。4.2存款子系统4.2.1功能用户可以通过和ATM自动取款机交互,完成存款的操作。4.2.2性能系统的反应时间是不能超过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 存
22、款子系统的软件接口函数输入输出Open()卡号 密码提示信息DepositFunds()金额无AddFunds()无无VerifyFunds()无无图3.13 存款的类图4.2.8存储分配账户表 储蓄卡表 ATM表 清单表4.2.9限制条件ATM自动取款机中的纸币以满,不能再放入纸币。4.2.10测试要点好的产品才能得到用户的认可和肯定,只有得到用户的肯定才会有市场,为此要对系统的反应速度、准确性(能准确读取放入的纸币数目)和安全性,以及系统的稳定应有非常高的要求。4.3 转账子系统4.3.1功能用户可以通过和ATM自动取款机交互,完成转账的操作。4.3.2性能系统的反应时间是不能超过2秒,完
23、成转账操作的时间不能超过30秒。4.3.3输入项目表3-7 转账子系统的输入项目名称类型银行卡磁卡密码int(6位整数)账号19位整数金额int(100的整数倍) 4.3.4输出项目表3-8 转账子系统的输出项目名称类型凭条文本4.3.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存储分配账户表 储
24、蓄卡表 ATM表 清单表4.3.9限制条件银行卡里的余额不足或不是同一类型的卡。4.3.10测试要点好的产品才能得到用户的认可和肯定,只有得到用户的肯定才会有市场,为此要对系统的反应速度、准确性(转走的金额和转入到某一账户的金额数一致,数据库里的信息要准确的更新)和安全性,以及系统的稳定应有非常高的要求。4.4 查询余额子系统4.4.1功能用户可以通过和ATM自动取款机交互,完成查询余额的操作。4.4.2性能系统的反应时间是不能超过2秒,完成查询余额操作的时间不能超过30秒。4.4.3输入项目表3-10 余额查询子系统的输入项目名称类型银行卡磁卡密码int(6为整数)4.4.4输出项目表3-1
25、1 余额查询子系统的输出项目名称类型凭条文本4.4.5算法图3.17 余额查询的活动图4.4.6程序逻辑图 3.18 余额查询的时序图4.4.7接口系统程序内部在功能模块下设置的程序接口见表3-12,图3.19表3-12 查询余额子系统的软件接口函数输入输出Open()卡号 密码无Query()无无图3.19 余额查询的类图4.4.8存储分配账户表 储蓄卡表 清单表4.4.9限制条件硬件故障4.4.10测试要点好的产品才能得到用户的认可和肯定,只有得到用户的肯定才会有市场,为此要对系统的反应速度有非常高的要求,这也是最基本的要求。4.5 修改密码子系统4.5.1功能用户可以通过和ATM自动取款
26、机交互,完成修改密码的操作。4.5.2性能系统的反应时间是不能超过2秒,完成修改密码操作的时间不能超过30秒。4.5.3输入项目表3-13修改密码子系统的输入项目名称类型银行卡磁卡旧密码int(6为整数)新密码int(6为整数)4.5.4输出项目表3-14 修改密码子系统的输出项目名称类型凭条文本4.5.5算法图 3.20 修改密码的活动图4.5.6程序逻辑图3.21 修改密码的时序图4.5.7接口系统程序内部在功能模块下设置的程序接口见表3-15,图3.22 表 3-15修改密码子系统的软件接口函数输入输出Open()卡号 密码无AlterPassword()旧密码 新密码无图3.22 修改
27、密码的类图4.5.8存储分配账户表 储蓄卡表 清单表4.5.9限制条件忘记了旧密码4.5.10测试要点好的产品才能得到用户的认可和肯定,为此要对系统的反应速度、 安全性,以及系统的稳定有非常高的要求。4.6 打印凭条子系统4.6.1功能用户可以通过和ATM自动取款机交互,完成一些基本的操作。如取款、存款、查询余额、修改密码,转账等。为了确保用户安全性和系统的稳定性,打印凭条子系统可以记录这些相关的操作,相当于文本形式的日志。如果出现错误可以凭借凭条到银行进行核实。4.6.2性能系统的反应时间是不能超过2秒,完成相应操作后打印凭条的时间不能超过30秒。4.6.3输入项目表3-16 打印凭条子系统
28、的输入项目名称类型银行磁卡密码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测试要点对系统的反应速度,稳定性有非常高的要求,以达到用户的满意度。