银行ATM机系统需求分析报告Word格式.docx
《银行ATM机系统需求分析报告Word格式.docx》由会员分享,可在线阅读,更多相关《银行ATM机系统需求分析报告Word格式.docx(17页珍藏版)》请在冰豆网上搜索。
1.2背景
项目名称:
银行ATM系统
银行系统是与生活紧密相关的一个机构,银行提供了存款、取款、转账等业务,这些业务与人们的日常生活息息相关。
在银行设立账户的人或机构通常被称为银行的储户。
一个储户可以在银行开多个账户,储户可以存钱到账户中,也可以从自己的账户中取现,还可以将存款从一个账户转到另一个账户。
储户还可以随时查询自己账户的情况,并查询以前所进行的存款、取款等交易记录。
后台管理员可以对储户的账户进行注销、删除、查询等管理,还有就是银行利息、汇率、手续费之类参数的设置,以及财务管理以及财务分析。
图1.1银行服务系统示意图
然而,随着银行业务及客户群体数量的增大,银行的工作量及工作压力也在日益的加剧。
为缓解这一问题,一种应用在在计算机及编程发展基础上的终端服务应运而生——ATM系统。
图1.2ATM系统示意图
在充分了解ATM之前,我们可以先来简要了解一下ATM的发展历史:
1939年土耳奇人发明了现金提款机,但现代意义上第一台ATM设备被认为出现于40年前的英国。
1967年Barclays银行在英国安菲尔德安装世界上第一台ATM设备,发明者是JohnShepherd-Barron。
另一种说法为1969年出现于美国纽约的ChemicalBank,发明者DonWetzel。
目前全球ATM安装量超过150万台,平均每7分钟新增一台,已经成长成为140亿美元的巨大产业。
ATM被誉为20世纪最有影响力的创新之一。
达芬奇学院(DavinciInstitute)评选的上世纪10大货币相关创新与发明ATM位列其中。
其他创新包括:
电子收银机(ElectronicCashRegister,1906),电子货币(ElectronicMoney,1918),装甲车(FirstArmoredCar,1920),信用局(CreditBureaus,1937),信用卡(CreditCard,1950),条形码(Barcodes,1952),智能卡(SmartCard,1974),电子表格(Spreadsheet,1978),RSA编码(RSAEncryption,1983)。
ATM产业协会(ATMIA)主席MikeLee认为,每1000人口拥有超过1台ATM可视为进入成熟市场。
银联的数据显示,目前我国ATM安装量约8万台以上即为ATM简要的发展历史和发展状况。
下面我们即来介绍下ATM的详细信息。
所谓ATM其实有两种解释,一种是AutomaticTellerMachine,中文名称为自动柜员机,简称ATM;
另外一种是异步传输模式ATM,全称AsynchronousTransferMode。
当然,我们在这里所要给大家阐述的是平时我们接触到比较多、银行所使用的、和我们关系比较密切的自动柜员机。
对于ATM的系统的研究首先,我们来举几个简单的例子,从几个银行各自的简单而实用的ATM系统界面来看,建设银行和农业银行的界面比较简洁、实用,只有简单的两个功能,取款、查询;
而中国银行则在两个功能的基础上添加了更改密码功能,避免了用户到银行去排队等候的麻烦了;
招商银行除了取款和查询功能外,添加上了存款、改密码这两个功能。
当然拉,每个银行都有一个退出的功能,而且在设计的时候,ATM都采用了延时设计,当操作超时的时候会自动把卡退出。
其实从银行工作人员的角度来考虑,ATM系统的作用是减轻银行工作人员的繁琐工作负担以及提高银行工作的效率;
而从用户的角度来分析,ATM就是方便用户能够及时查询到自己帐号的资金以及避免在人数密集的时候在银行等待取款的过程。
于是ATM设计的合理性与人性化就显得异常重要,它不简单的解决了银行的工作效率问题,基本上也考虑到了顾客需要,满足了顾客的需要,也解决了一些不必要的时间的浪费。
以上几家银行的ATM系统普遍能够满足用户的基本需要,都是从用户的角度出发,为用户考虑。
不过作为一个学软件工程,想了解需求分析的我们来说,这样的功能其实还有很多改进的了。
随着计算机技术的发展,ATM越来越多的出现在人们的日常生活中,在ATM机上进行取款等业务时的突发情况,例如无故不出钞,吞卡等不容忽视的问题的出现,会导致使用者的权利受到侵害,降低用户对ATM机使用的信心。
本次开发的这套ATM系统,可以显着提高现有系统运行效率,增强银行的竞争力,提高储户的满意度
第二章需求分析报告
2.1功能需求
ATM软件分别有登陆,存款,取款,查询,转账,修改密码,账户明细查询,退出等功能。
图2.1ATM基本功能图示
设计时常将各个功能分模块设计,各个模块各有不同的特点及功能,最终来完成各自相应的功能。
各模块的数据都存放在数据库中,又形成一个整体。
数据的调用和连接都有程序来完成。
ATM终端机通过用户输入9位的卡号和6位的对应密码,经过验证后,准确无误后可以同系统进行各种交互,例如:
查询、存款、取款、转账、明细查询、打印凭条等;
系统根据终端服务器的用户输入处理储户相应的要求,执行对应操作,为储户服务。
为了安全起见,ATM系统要求须保持一定时间内的交易记录,系统应每天自动汇总各种交易数据与服务器进行对账。
同时,在通讯失败或其他交易结果不确定的情况下,ATM要自动发起冲正交易,以保证账务的完整性。
ATM用户使用的基本流程如下
图2.2ATM使用基本流程图
因为ATM服务系统可以简要看作是两个方向的交易——用户和银行系统,因此在解析ATM需要达到的基本功能时,要从两个方面来考虑,一是用户的利益,二是银行管理系统的利益。
首先在设计过程中我们可以为用户设计几个模块:
取款、存款、查询、转帐以及密码修改。
1、取款
只要账号被ATM系统识别,只需输入密码就能够直接进行存取款。
其中用户账号设置为9位,密码设置为6位。
密码账号完全匹配后方可进入操作界面。
点击取款的操作按钮即可进入取款界面,根据所需取出金额可以选择100元,200元,300元等既定金额,也可以自定义金额但是目前必须是100的整数倍。
本ATM都只能提供面值为100元整数倍的钞票,随着信息的发展我们有理由要在此进行改进,因为即使是普通的老百姓,有时候的10元、20元的钞票还是希望能够方便快捷的取到的。
因而未来的自动取款机取款应该允许有更多面额的钞票。
有时候用户会出现账号丢失及账号被盗的情况,这就必将导致用户金额的亏损。
因此为安全起见,对于每日每户取款总额可以做出适当的限制,每次取款金额限制为2000元,每日每户最多可从ATM取现10000元,剩余金额需要就必须携有关证件至柜台办理。
由于用户有时一次登录后需要进行不止一种操作,所以在执行完取款操作后可以进行其他界面的选择,可以再次选择继续交易,进入主界面,再次选择其他交易类型接受相应服务。
例如:
取款后想要查询余额,只要选择的继续交易,即可返回主界面,然后就可以选择查询按照查询步骤即可完成相应操作。
经过密码验证进入取款界面后,取款部分基本的流程图如下:
图2.3取款交易的基本流程图
2、存款
经过密码验证后进入存款界面后,开始进行存款操作,将人民币放入ATM机器内制定位置,按下确定键,然后等待机器识别验证钞票真伪以及金额。
最后取出未识别的钞票,选择确定还是继续添加。
然后结束操作。
如果想继续其他交易,可以选择继续交易,然后进入主界面再进行相关操作。
存完款即可以显示总额或者其它信息,存款过程中目前也只能识别面值100元的钞票,未来也期望可识别更多种面值的钞票。
存款的基本流程图如下所示:
图2.4存款的基本流程图
3、查询
大多数银行的ATM目前能给用户提供的查询服务主要有余额查询,包括人民币、港币、美元值等。
而用户想要了解更多明细账户时就只有到柜台打账单了,这就给柜台系统和工作人员带来了相当大的工作量。
如果ATM机能够具有显示用户的账户明细的功能,并提供打印账户明细服务,将进一步满足用户需求,提高ATM的实用性,同时为银行业务人员减少工作量。
图2.5查询的基本流程图
4、转账
转帐的实现。
转账有行内转账和跨行转账之分。
如果说不同两家银行之间的转帐因为银行名称而无法实现,起码应该实现同一家银行的不同帐号的转帐,只需要求用户输入自己账户的正确密码和要转账对方的帐号(最好有两次输入对比确认),并需要一个确认让用户有机会确认转帐的准确率。
但是大多数银行的ATM还是可以提供跨行转账服务的,只是需要提交相应手续费。
在有需要业务手续费时,系统最好能够跳出提示窗口提示用户手续费的金额,待用户确认后再继续执行下一步服务。
图2.6转账的基本流程图
4、密码修改
密码的修改自然需要用户能够输入正确的原密码,然后输入两次新密码,系统进行比对,比对结果吻合无误后,用户确认成功;
确认成功的之后,ATM应该自动识别并自动退出原先登录,同时跳出提示窗口提示用户用修改后的新密码重新登陆,输入新密码来尝试新密码的正确性及有效性。
这个要求数据库的设计的更新的合理性。
图2.7修改密码的基本流程图
其次我们从银行工作者的角度来分析。
除了用户所具有的权限之外,银行ATM系统管理员还应该具有以下权限:
用户帐号密码的强行修改、根据用户的资料查询到用户的帐号信息、查询用户的交易信息、对违规的用户账户进行账户封闭及重开启等。
1、用户密码强行修改
所谓帐号密码的强行修改,就是在即使在不知道用户的帐号密码的前提下也能对密码进行修改,当然前提是用户提供有效的证据证明帐号的归属全确属本人。
这样主要是针对用户遗忘自己的帐号密码,然后能够提供合理的证据证明该帐号属于其本人。
2、账户信息
根据用户资料对其帐号信息进行合适的管理服务,主要是针对遗忘自己帐号,却能够提供自己详细的资料的用户,方便其找回或者更正自己相关账户信息。
这两种功能是针对挂失处理,避免部分用户因为遗忘帐号或者密码而造成的不必要的麻烦。
3、交易信息
针对用户的取款、转帐信息,管理员应该能能观察到交易的日期、具体到点的时间、金额、转帐出去的帐号和转到的帐号。
这个功能能够方便管理员实时知道ATM系统机那里钞票剩余多少,便于及时更新ATM的存款,防止现金断续给用户带来的不便。
4、非法用户账户的封闭和重启
银行提供各种服务时,并不能准确得知他所服务的用户的诚信度。
因此银行系统在提供服务的同时时也应具备相应的数据证据及操作权限。
如发现某些用户出现非法行为时能够强行将其账户关闭并供合法证据和合理解释,并在事情处理结束后重开启该账户。
ATM的设计的合理就应该从使用和管理两方面着手,在考虑了银行用户使用和操作的方便迅捷功能之后,我们也要为银行管理员在管理ATM过程中的简捷思考。
2.2运行需求
设计固然是基础,但ATM能否正常运行,即投入到使用中才是整个工程设计的最终目的和重要环节。
ATM机在运行过程中包括系统运行输出、用户需求输入、系统内部数据处理等方面。
从用户插入输入账号密码到服务完成,可以如图1所示。
2.3输入要求
1、用户使用ATM时要合法、无破坏性行为,能根据ATM机提供的输入设备和界面显示完成正确的操作。
2、用户从输入设备输入的内容要简便快捷,有目的性。
2.4输出要求
1、要求ATM机能够快速响应储户的功能要求。
2、要求ATM机显示界面清晰简洁,并提供多种语言,便于用户做出相应决定及完成输入操作。
3、要求ATM机能快速准确打印出客户需要的清单。
2.5其他需求
1、可用性
本案例系统在详细规划的基础上可以通过相应编程进行实现并投入使用,且在实际使用过程中操作简单方便,快捷高效,并能够达到预期效果,使用户及银行系统双满意。
2、安全性
安全性要高,由于软件运行在数据库中,所以参数不容易被错改,破坏,万一参数受到破坏也不会影响源程序,保证用户数据的安全。
ATM机处的监控系统要准确实时运行,并附有各项报警系统。
3、可维护性
由于利用数据库进行编程,系统结构由程序基本确定,大量的参数及文本内容全部存放于数据库中。
对系统进行修改时只需更新数据库相应内容,即更新数据库只要在数据库进行修改添加,而不需要对系统结构进行修改,这样系统维护性升级都十分方便。
4、兼容性
适合windows95,windows98,windowsxp,windowssp2及以上操作系统、数据库:
SQLSERVER2000
第三章ATM机系统总体及界面设计
3.1总体设计流程图
图3.1系统总体设计流程图
总体设计是设计一切东西的基础和前提,只有总体框架构想出来后才能仔细的分模块进行分步设计,否则就会乱了阵脚。
同样,ATM界面设计的基础和前提也是其总体设计。
总体设计的流程图如上图所示,在进行界面设计时,可根据上图的总体设计流程图来设计不同的功能界面。
下面我们就来设计几个简单的界面模板。
3.2界面设计
1、欢迎界面
欢迎界面即ATM机的初始界面,任何用户在使用前和使用结束后都会自动跳回该界面。
1、登陆界面
登陆界面要求用户输入身份验证,验证正确无误方可登录到账户进行相关操作,否则跳出密码错误的提醒窗口,用户需重新输入密码或者直接退出。
且密码错误次数达到一定次数将被暂时锁住,需到柜台找回密码。
注:
在实际的ATM机中一般是先插入卡片再输入验证密码,而不是本例中输入卡号再输入密码,但是这种认证方式可以支持无卡服务,并是忘记带卡以及挂失账号情况下的必要服务。
密码输入错误提醒界面:
2、选择界面
用户通过了身份验证后即可进入选择界面选择相关的操作服务,入存取款、查询余额、修改密码等。
2、取款界面
取款是ATM一项做基础的服务。
用户进入取款界面后可以选择屏幕上提示的取款数额,也可以选择“其它数额”选项来自行输入取款数额。
若输入数据不正确,系统会跳出提示窗口要求用户重新输入知之正确为止。
取款成功提示界面:
3、查询余额界面
前面我们已经叙述,查询模块可以和存款、取款模块设计在一起,也可以单独设计,在选择界面选择查询余额即可显示出以下界面:
为了安全起见,转账一般需要输入两遍要转账的卡号,系统自动进行比对,如完全吻合则执行下一步操作,否则提醒用户重新输入。
转账成功后跳出转账成功提醒界面:
一般情况下,转账动作完成后系统会自动跳出是否要求打印凭条的提醒窗口,以便转账出现错误的情况下作为用户的基本凭证。
5、密码修改界面
密码修改的前提是用户已经用原先的密码登录到账户,输入新密码时也要求输入两遍以确保正确性,两遍输入完成后系统自动比对是否吻合,吻合无误后新密码生效。
密码修改成功后跳出提示界面:
有的银行ATM机在用户修改好密码之后会自动跳回欢迎界面,要求用户用新密码重新登录后再进行其它操作。
6、退出界面
用户进行完所有操作后希望退回卡片,只需选择退卡ATM机即会将卡片吐出,系统在最后会跳出如下界面,感谢用户光临。
这些界面可大致组成ATM客户端机组的显示界面。
ATM系统界面的要求是:
系统具有友好的用户界面,并且做到界面简洁高效、操作方便。
在实际使用过程中,简便明了是其必须要遵循的原则,但也可以在这一基本原则的基础上注入银行的特色。
如欢迎界面可以做的更美观醒目,适当加入本行的广告或标志性图片会收到很好的效果。
但在操作界面必须严格遵守简明的原则,否则会对用户操作造成一定的不便,从而事与愿违,降低了ATM机的实用性。
第四章ATM系统数据库分析
ATM系统的运行界面是通过编程来实现的,而系统内部与用户交易的全部信息是建立在一个完备的数据库基础之上的,没有数据库就没有整个交易系统。
因此为ATM系统建立一个完整的数据库是基础和前提。
下面我们就来建立系统数据库的基本框架。
根据以上全需求分析以及功能描述,可以得知一个基本的ATM系统的数据库包含ATM信息表、客户表、账户表以及交易表。
这些表分别用于存放赋予相应功能的数据信息。
其中客户表以及账户表为最关键的表。
表名的命名统一加前缀A_,A_表示ATM系统的含义。
4.1ATM系统表清单
根据需求分析结果可知,此ATM数据库系统总共包含ATM信息表、客户表、账户表以及交易表。
这些表的名称以及各自对应的功能如下所示:
表名
表用途
ATM信息表
保存ATM的编号地址等一系列基本信息
客户表
保存客户个人的基本资料信息
账户表
保存客户的账户的状态、卡号等基本信息
交易表
保存账户交易金额、交易时间等基本信息
根据需求可知。
ATM信息表里面含有ATM机的编号、地址等等信息。
客户表里面包含有用户的姓名,身份证号,联系电话以及家庭住址。
账户信息表里面有账号号码,密码,账户状态,账户开户时间以及户内余额等信息。
信息记录表里面包含有交易流水号,交易金额,交易时间等信息。
1)客户信息表
客户信息表(A_CUSTNFO)
字段名
含义
数据类型
空值?
备注
ID
无意义(主键)
NUMERIC(7)
否
自动增长
NAME
姓名
VARCHAR(20)
PID
身份证
CHAR(18)
唯一
PHONE
联系电话
VARCHAR(11)
是
ADDRESS
家庭地址
VARCHAR(500)
2)账户信息表
账户表(A_ACCOUNT)
NUMERIC(8)
ACCT
账号或卡号
CHAR(9)
账号与卡号使用同一个号码。
必须保证为9位。
账号必须唯一。
PASSWD
密码
CHAR(6)
密码应为6位数字
CUSTID
客户信息ID
外键,与客户信息表中的ID关联
RDATE
开户时间
DATETIME
BALANCE
账户余额
NUMERIC(10,2)
例如:
100.43元,不能为负数
STATUS
卡状态
VARCHAR(4)
卡状态分为:
正常和锁定
开户地址
例如,某分行
3)交易信息表
交易表(A_DEAL)
NUMERIC(10)
ACCTID
账户ID
外键,与账户表中的ID关联
SEQ
交易流水号
CHAR(20)
交易流水号的组成为:
ATM编号+时间(年月日时分秒),
DEALMONEY
交易金额
NUMERIC(4)
存款用正数,取款用负数
交易时间
DTYPE
交易类型
VARCHAR(8)
交易类型分为取款、存款、转出和转入
4.2系统E-R图
E-R图能够反映出系统中实体各自的属性及实体与实体之间的联系,同时也可为系统数据库的建立提供更直观的依据。
ATM系统的E-R图如下所示:
图4.2系统E-R图
第五章总结
ATM作为一项开放的技术,有着明显的优势和广阔的市场前景。
随着计算机网络及信息技术的发展,终端服务将成为一个需求量极大的市场份额。
ATM网络对其他交易方式有着明显的替代效应,ATM网络的建设使得中间业务得到飞速的发展,对完善网络银行、柜台业务提供了莫大的帮助,并会进一步推动金融行业的飞速发展。
另一方面来讲,随着经济的日益增长,ATM市场必将逐步扩大,当然,其系统也需更进一步的升级,以承载更过的用户群体信息,并提供更多种多样的服务。
这就表明,深入研究ATM技术,全面解析ATM需求有着深远的而重要的意义,也是我们本次课程设计的意义所在。