ATM自动取款机系统需求分析.docx
- 文档编号:7405005
- 上传时间:2023-01-23
- 格式:DOCX
- 页数:21
- 大小:227.73KB
ATM自动取款机系统需求分析.docx
《ATM自动取款机系统需求分析.docx》由会员分享,可在线阅读,更多相关《ATM自动取款机系统需求分析.docx(21页珍藏版)》请在冰豆网上搜索。
ATM自动取款机系统需求分析
《软件工程》结课论文
题目:
ATM自动取款机系统的需求分析
专业:
XXXXXXXXXXXXXXXX
班级:
XXXXXXXXXXX
姓名:
XXXXXX
学号:
XXXXXXXXXXXXX
XXXX年XX月XX日
1.引言
1.1编写目的
ATM自动取款机系统是银行业务流程过程中十分重要且必备的环节之一,在银行业务流程当中起着承上启下的作用,其重要性不言而喻。
但是,目前许多银行在具体的一些业务流程处理过程中仍然使用手工操作的方式来实施,不仅费时、费力,效率低下,而且无法达到理想的效果。
为此,我们在明确该软件需求的基础上,安排项目规划与进度、组织软件开发与测试,撰写本文档。
本文档针对上述问题,采用软件工程的开发原理,依据软件流程过程规范,按照需求分析,概要设计,程序编码,软件应用等过程,开发了这个系统。
《ATM自动取款机系统需求规格说明书》的目的是明确《ATM自动取款机系统》中各项功能和非功能需求,确定系统功能模块,同时为概要设计和详细设计人员提供设计依据,也可供本项目的其他开发人员参阅。
本需求分析报告的目的是规范化本软件的编写,旨在于提高软件开发过程中的能见度,便于对软件开发过程中的控制与管理,同时提出了本ATM自动取款机系统的软件开发过程,便于程序员与客户之间的交流、协作,并作为工作成果的原始依据,同时也表明了本软件的共性,以期能够获得更大范围的应用。
本文档供项目经理、设计人员、开发人员、客户参考。
1.2项目背景
待开发项目名称:
ATM自动取款机系统的分析与设计
项目开发者:
项目背景:
在市场经济的蓬勃发展和人们日益繁忙的条件下,现有的银行系统往往需要客户在办理手续时等待很长的时间,这不仅会浪费很多宝贵的时间,也会使得银行的业务人员十分的繁忙,需要很大的人力和财力。
基于这样的情况,ATM取款机系统的开发就显的十分的重要!
它可以减少银行的业务处理压力,尽量节省人们的时间,并且可以有效解决用户信息和资金信息的繁杂问题。
1.3定义
专业术语与缩略词
账号:
在银行中,事物应用的单个账号。
每个顾客可以拥有多个账号。
用户:
拥有银行的一个或多个账号的人。
可以是一个人或多个人,或者是公司。
相同的人,拥有不同的银行帐号被认为是不同的落户。
ATM:
自动取款机又称ATM,是AutomaticTellerMachine的缩写,意思是自动柜员机,因大部分用于取款,又称自动取款机。
它是一种高度精密的机电一体化装置,利用磁性代码卡或智能卡实现金融交易的自助服务,代替银行柜面人员的工作。
可提取现金、查询存款余额、进行账户之间资金划拨、余额查询等工作;还可以进行现金存款(实时入账)、存折补登、中间业务等工作。
持卡人可以使用信用卡或储蓄卡,根据密码办理自动取款、查询余额、转账、现金存款,存折补登,购买基金,更改密码,缴纳手机话费等业务。
2.任务概述
2.1目标
现如今,有许多家银行在顾客办理业务时都需要到柜台前需要服务人员的操作,效率很低。
为了解决这样的问题,我们小组提出了研究ATM自动取款机系统,使银行和各户办理业务时,更便捷。
ATM自动取款机可以24小时自动取款,无需人工服务,同时提供了许多的功能,尽可能的满足用户的需求。
该软件系统为社会提供了很大方便,同时也是时代的需要,代表社会的进步和科技的发展。
2.2运行环境
硬件环境:
CPU:
1GHZ及以上
内存:
1G以上
硬盘:
20G以上
软件环境:
操作系统:
MicrosoftWindowsXP或更高版本
数据库:
MicrosoftSQLServer2005
Web服务器:
Tomcat5.0以上
支持浏览器:
InternetExplorer7.0及其以上版本
开发环境:
MyEclipse,JDK,MicrosoftSQLServer2005
2.3条件与限制
随着科技的发展,人们生活水平的不断提高,高性能高效率的产品越来越受到人们的欢迎。
ATM自动取款机是一种非常智能的机器,人们可以直接和它交互,代替以前的手工操作,大大提高了银行的工作效率。
同时也给广大用户带来了非常大的方便。
由于ATM自动取款机是和服务器是连网的,这就涉及到安全的问题,例如密码被盗的问题,这就需要加强安全措施,如运用一些加密算法。
所以银行卡丢失的时候,一定要及时挂失,以确保自己的账户安全。
应具备的设备:
计算机4台,打印机1台
应具备的人员:
软件专业学生4人
其他条件:
保证相关开发人员全部到位,不缺勤;资金全部到位
3.数据描述
3.1静态数据
插卡:
用户和ATM自动取款机交互时,系统提示请插入磁卡,插入磁卡后,如果验证成功,进入登陆界面;否则退卡。
登录:
系统在登录界面提示输入密码,如果输入的密码正确,按确认键进入主界面,否则按更正键,重新输入密码。
取款:
进入主界面后,选择取款进入取款界面,如果所取的金额在界面上有,按相应的金额进行取款操作,如果没有,在键盘上手动输入所取的金额后按确认键。
取款成功后,如果还要进行其他操作,按返回主界面键返回主界面,否则退卡。
存款:
进入主界面后,选择存款进入存款界面,系统提示输入存款的账号,和再次输入账号以确认两次输入的账号输入一致。
如果两次输入的账号一致,按确认键后,系统提示请放入整百元的人民币,否则提示两次输入的账号不一致。
请重新输入。
存款成功后,如果还要进行其他操作,按返回主界面键返回主界面,否则退卡。
转账:
进入主界面后,选择转账,进入转账界面,系统提示输入转账账户和转账金额,按确认键后,进入转账提示界面,如果该界面上显示的是你所要转账的用户名,则按确认键,则转账成功。
如果和你所要转帐的用户不一致,则返回主界面,重复上述的转账操作。
转账成功后,如果还要进行其他操作,按返回主界面键返回主界面,否则退卡。
查询余额:
进入主界面后,选择查询余额,进入查询余额界面,屏幕显示您的余额是***。
完成该操作后,如果还要进行其他操作,按返回主界面键返回主界面,否则退卡。
修改密码:
进入主界面后,选择修改密码,进入修改密码界面,系统提示输入旧密码,新密码,确认新密码,如果两次输入的新密码一直,按确认键,则修改密码成功。
完成该操作后,如果还要进行其他操作,按返回主界面键返回主界面,否则退卡。
打印凭条:
进行完相应的操作后,如果要核实一下操作,选择打印凭条,ATM自动取款机会把凭条打印出来。
完成该操作后,如果还要进行其他操作,按返回主界面键返回主界面,否则退卡。
返回主界面:
完成相应操作后,如果还要进行其他操作,按该键返回主界面,否则,退卡。
退卡:
完成相应操作后,如果不再进行其他操作,按退卡键退卡。
3.2动态数据
输入数据是指来自于用户输入、来自外部接口的输入或者其他输入,在ATM自动取款机中,通过输入数据来取钱,当数据输入后,系统自动计算给出的数据,然后吐钱,并且,银行卡的剩余钱数等于原先的金额减去输入的金额,得到的数据就是现在的金额,同时,在查询剩余金额时显现出来。
在取款过程中,该系统只支持交易金额为100元的倍数。
取款数目:
只支持交易金额为100元的倍数。
取款金额:
单次取款不能超过2500元以上的金额,单日上限金额20000元。
密码:
由用户设置的一个6位整数。
ATM系统正常情况脚本的事件跟踪图:
ATM类的状态图:
3.3数据库介绍
名称:
MicrosoftSQLServer2005
介绍:
MicrosoftSQLServer2005是一个全面的数据库平台,使用集成的商业智能(BI)工具提供了企业级的数据管理。
MicrosoftSQLServer2005数据库引擎为关系型数据和结构化数据提供了更安全可靠的存储功能,使您可以构建和管理用于业务的高可用和高性能的数据应用程序。
管理:
SQLServerManagementStudio集成了对SQLServer2005所有组件的管理。
BusinessIntelligence从业者都将得益于Microsoft服务器“能力”扩展这一用户盼望已久的功能增强,即从关系引擎(伸缩性、可靠性、可用性、可编程性,等等)扩展为全套的BI平台组件。
支持的操作系统:
Windows2000ServicePack4;
WindowsServer2003ServicePack1;
WindowsXPServicePack2
硬件要求:
具有IntelPentiumIII600MHz(或同等性能的兼容处理器)或速度更快处理器(建议使用1GHz或速度更快的处理器。
)的计算机最低192MB的RAM(建议使用512MB或更高的RAM。
)100MB的可用硬盘空间
注意事项:
安装此包之前,必须从系统中删除SQLServerManagementStudioExpress的任何Beta版本或CommunityTechnologyPreview(CTP)版本。
如果不执行此操作,则将导致此包安装失败。
安装条件:
您必须在计算机上具有管理权限才能安装SQLServer2005。
3.4系统E-R图
ATM系统的E-R图:
ATM机信息属性图:
ATM日志信息属性图:
回单记录属性图:
根据E-R图,制作数据库中的表如下:
IC卡信息表:
属性
类型
是否可为空
是否是主键
备注
IC卡号
Char(19)
Notnull
主键
密码
Char(6)
Notnull
所属银行
Varchar(20)
Notnull
IC余额
Float
Notnull
密码当日错误次数
Int
Notnull
用户信息表:
属性
类型
是否可为空
是否是主键
备注
身份证号
Char(18)
Notnull
主键
用户名
Varchar(20)
Notnull
电话
Char(11)
Notnull
居住地址
Varchar(20)
IC卡号
Char(19)
Notnull
外键
ATM机信息表:
属性
类型
是否可为空
主键
备注
ATM机ID
Char(6)
Notnull
主键
ATM机ID
余额
Int
Notnull
100num
Int
Notnull
100元钞票张数
50num
int
Notnull
50元钞票张数
ATM日志表:
属性
类型
是否可为空
主键
备注
流水号
Int
Notnull
主键
IC卡号
Char(19)
Notnull
外键
操作记录
varchar(20)
Notnull
吐钱记录
Int
Notnull
回单记录表:
属性
类型
是否可为空
主键
备注
IC卡号
Char(19)
Notnull
主键
用户名
Varchar(20)
Notnull
取款金额
Int
Notnull
取款日期
Date
Notnull
3.5数据词典
名字:
IC卡信息表
别名:
银行卡、银联卡或磁卡
描述:
用户可以通过该卡和取款机进行交互
定义:
IC=IC卡号+密码+所属银行+IC余额+密码当日错误次数
位置:
所属银行数据库
名字:
IC卡号
别名:
无
描述:
唯一标识IC卡的号码
定义:
IC卡号=19位整数数字
位置:
IC卡信息表、ATM日志表、用户信息表、回单信息表
名字:
密码
别名:
无
描述:
每个用户都有一个密码,是进行验证时的唯一标识
定义:
密码=6位整数数字
位置:
IC卡信息表
名字:
所属银行
别名:
无
描述:
描述IC卡属于哪个银行
定义:
1{字符}20
位置:
IC卡信息表
名字:
IC余额
别名:
无
描述:
记录IC卡账户的余额
定义:
余额=Float型数
位置:
记录IC卡账户的余额、IC卡信息表
名字:
密码当日错误次数
别名:
无
描述:
记录IC卡在一天中输入密码错误的次数
定义:
为Int数
位置:
记录IC卡账户的余额、IC卡信息表
名字:
用户信息表
别名:
描述:
存储用户的信息
定义:
用户=身份证号+用户名+电话+居住地址+IC卡号
位置:
所属银行数据库
名字:
身份证号
别名:
无
描述:
唯一表示用户身份的编号
定义:
18位数字
位置:
用户信息表
名字:
用户名
别名:
无
描述:
记录用户的姓名
定义:
1{字符}20
位置:
用户信息表
名字:
电话
别名:
无
描述:
用户电话号码,便于联系
定义:
7{字符}11
位置:
用户信息表
名字:
居住地址
别名:
无
描述:
记录用户的详细住址
定义:
1{字符}20
位置:
用户信息表
名字:
ATM机信息表
别名:
ATM
描述:
存储ATM机ID以及余额
定义:
ATM=ATM机ID+余额+100num+50num
位置:
所属用户数据库
名字:
ATM机ID
别名:
ATM机编号
描述:
唯一确定ATM机的号码
定义:
6位数字
位置:
ATM机信息表
名字:
余额
别名:
无
描述:
记录该ATM机内的总共余额信息
定义:
Int型数字
位置:
ATM机信息表
名字:
50num
别名:
无
描述:
记录该ATM机内50元面值的钞票数
定义:
Int型数字
位置:
ATM机信息表
名字:
100num
别名:
无
描述:
记录该ATM机内100元面值的钞票数
定义:
Int型数字
位置:
ATM机信息表
名字:
ATM日志表
别名:
LOG
描述:
存储用户登录的和操作的信息
定义:
LOG=流水号+IC卡号+操作记录+吐钱记录
位置:
所属银行数据库
名字:
流水号
别名:
无
描述:
用户登录ATM机进行操作的编号
定义:
Int型数字
位置:
ATM日志表
名字:
操作记录
别名:
操作
描述:
描述用户的整个的操作过程
定义:
1{字符}20
位置:
ATM日志表
名字:
吐钱记录
别名:
无
描述:
记录每次取款的交易额
定义:
Int型数字
位置:
ATM日志表
名字:
回单信息表
别名:
回单
描述:
描述用户本次操作的信息
定义:
回单=IC卡号+用户名+取款金额+取款日期
位置:
所属银行的数据库
名字:
取款金额
别名:
无
描述:
记录本次交易的数额
定义:
Int型数字
位置:
回单信息表
名字:
取款日期
别名:
无
描述:
记录本次交易的日期
定义:
日期型
位置:
回单信息表
3.6数据采集
1、输入数据的来源:
用户
2、输入数据所用的媒体和硬设备:
采用人工输入方法,从键盘输入数据
3、输出数据的接受者:
仅对输入数据的用户
4、输出数据的形式:
以独立的窗口形式显示在终端设备上
5、数据值的范围:
账号:
19位数字
密码:
6位数字
取款金额:
100的倍数
6、在查询过程中,要求系统显示该账户卡上所有的余额。
在取款过程中,该系统只支持交易金额为100的倍数。
在存款过程中,该系统只支持交易金额为100的倍数。
在转账过程中,该系统支持任何用户输入的数据,但是仅仅限于本行之间的账户转账。
交易结束时,系统知道更新账户上的数据,保持账户余额的一致性。
交易完成后,用户可以点击“取卡”退出本系统。
本系统可以进行各个银行的金额交易。
系统可以并行使用的用户在100个以上。
注意:
当交易金额超过当前账户余额时,系统自己提示“余额不足”,
自动退出本系统,当系统遇到任何不对输入时都自动退出本系统。
密码:
由用户设置的一个6位整数。
4.功能需求
4.1功能划分
首先进行系统分析,简单的来说该系统大概需要以下七个模块:
1、模拟读卡模块
2、身份验证模块
3、取款模块
4、查询余额模块
5、转账模块
6、修改密码模块
7、打印凭条模块
ATM系统的功能模块图:
ATM系统的基本系统模型:
ATM系统的功能级数据流图:
4.2功能描述
(1)模拟读卡功能
描述:
ATM检查所接收的银行卡是否为合法的银行卡。
输入:
客户插入银行卡。
处理:
检查是否为合法的银行卡,当读取了银行卡的信息。
输出:
如果不合法,则显示错误消息,并退出银行卡。
(2)取款功能
a.描述:
ATM提供的事务类型为取款。
输入:
认证完成,输入需要提取的金额。
处理:
输入的数量同max(2500,ATM机余额,银行卡余额)进行比较。
输出:
显示需要提取的现金的数量,开始初始取款序列。
b.描述:
初始取款序列。
如果所取金额大于max(2500,ATM机余额,银行卡余额)则撤销事务。
输入:
顾客输入的金额大于max(2500,ATM机余额,银行卡余额)。
处理:
显示错误消息,提示金额大于2500或ATM机余额或银行卡余额。
输出:
回到操作界面。
c.描述:
执行事务。
输入:
初始取款序列成功。
处理:
发送请求给银行计算机。
输出:
ATM机弹出所取金额,更新并保存信息,显示取款成功。
(3)查询余额功能
描述:
ATM提供的事务类型为查询余额。
输入:
认证完成,选择查询余额功能。
处理:
系统连接数据库,查找所属余额信息。
输出:
显示余额信息。
(4)转账功能
a.描述:
ATM提供的事务类型为转账。
输入:
认证完成,输入需要转账的金额。
处理:
输入的数量同银行卡余额进行比较。
输出:
显示需要转账的现金的数量,开始初始转账序列。
b.描述:
初始转账序列。
如果转账金额大于银行卡余额则撤销事务。
输入:
顾客输入的金额大于银行卡余额。
处理:
显示错误消息,提示金额大于银行卡余额。
输出:
回到操作界面。
c.描述:
执行事务。
输入:
初始转账序列成功。
处理:
发送请求给银行计算机。
输出:
ATM机执行转账操作,更新并保存信息,显示转账成功。
(5)修改密码功能
a.描述:
ATM提供的事务类型为修改密码。
输入:
认证完成,输入旧密码和新密码,新密码要输入两次。
处理:
验证旧密码,并将两次输入的新密码进行比对。
输出:
开始初始修改密码序列。
b.描述:
初始修改密码序列,旧密码错误或两次新密码输入不同,撤销序列。
输入:
旧密码错误或顾客两次输入的新密码不同。
处理:
显示错误消息,提示密码错误或两次输入密码不同。
输出:
重新回到密码修改界面。
c.描述:
执行事务。
输入:
初始修改密码序列成功。
处理:
更新账户密码。
输出:
更新并保存信息,显示修改密码成功。
(6)打印回执单功能
描述:
ATM提供的事务类型为打印回执单。
输入:
认证成功完成,进行完取款或转账操作,选择打印回执单功能。
处理:
启动ATM机打印机,打印本次操作信息。
输出:
打印出回执单。
4.3功能要求
(1)在查询过程中,要求系统显示该账户卡上所有的余额。
(2)在取款过程中,该系统只支持交易金额为100的倍数,一次取款额最大为2500。
(3)在转账过程中,该系统支持任何用户输入的数据。
(4)交易结束时,系统知道更新账户上的数据,保持账户余额的一致性。
(5)交易完成后,用户可以点击“取卡”退出本系统。
(6)本系统可以进行各个银行的金额交易。
(7)当ATM柜员机内的款额小于等于2500时,向银行工作人员发送信息提醒配款
(8)当交易金额超过当前账户余额时,系统自己提示“余额不足”,返回操作页面,当系统遇到任何不对输入时,显示提示信息,返回操作页面。
5.性能需求
5.1数据精确度
(1)银行卡中信息表中的“余额”采用float型,精确到小数点后两位;
(2)取款时输入的金额为整数(100的倍数);
(3)转账金额采用float型,精确到小数点后两位。
5.2时间特性
如果交易中响应时间超过20秒,系统提示“操作已过时”,返回操作界面。
对于目前普遍的硬件配置,响应时间本软件控制在20秒以内,更新处理时间控制在5秒之内,数据的转换和传送时间在5秒以内。
以上数据仅供参考,真实数据以测试结果为准。
5.3适应性
当用户需求,如操作方式,运行环境,结果精度,数据结构与其他软件接口等发生变化时,设计的软件要做适当调整,灵活性非常大。
ATM自动取款机是24小事不断的服务,操作简单,并带有语音提示,方便了用户的操作,同时具有转账、修改密码、查询账户信息等功能为用户提供了许多的方便。
6.其它需求
易用性:
系统设计应具有良好的易用性、操作简便,符合常规Windows操作环境下的用户使用习惯。
同时,尽量减少用户的记忆工作量,如在信息录入时尽可能充分利用数据字典进行选择录入,以提高用户工作效率。
在系统查询功能设计时,应提供多种查询条件的复合查询,让用户可以快速、精确地得到相关信息。
同时,系统设计应具有良好的健壮性,如对各种用户各种错误输入应能及时识别并给出相应提示。
安全性:
系统中所有涉及敏感信息如登录口令等,服务器端应该设置严格安全访问控制策略,从而保证系统安全性和操作责任的可追溯性。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- ATM 自动 取款 系统 需求 分析