《ATM机管理系统详细设计说明书.pdf》由会员分享,可在线阅读,更多相关《ATM机管理系统详细设计说明书.pdf(19页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、项目名称:ATM机管理系统负责人:参与人:(计算机062-32李小飞,主要负责统筹规划,程序 代码,部分流程图,资料查询)(计算机063-31王开元,主要负责编写整理,部分流程图,PPT制作,资料查询;计算机063-29潘锋,主要负责部分流程图,资料 查询)ATMATM 机管理系统详细设计说明书详细设计说明书1 1 引言1.1编写目的ATM机管理系统是银行业务流程过程中十分重要且必备的环节之一,在银行业务流程当中起着承上启下的作用,其重要性不言而喻。但是,目前许多银行在具体的一些业务 流程处理过程中仍然使用手工操作的方式来实施,不仅费时、费力,效率低下,而且无 法达到理想的效果。为明确软件需求
2、、安排项目规划与进度、组织软件开发与测试,撰 写本文档,本文针对上述问题,采用软件工程的开发原理,依据软件流程过程规范,按 照需求分析,概要设计,程序编码,软件应用等过程,开发了这个系统。本文档供项目 经理、设计人员、开发人员参考。1.2背景a.待开项目名称:ATM机管理系统。b.是应大连市工商银行银行网络建设和改造需求,ATMB管理系统为客户提供方便、迅速、便捷的自动取款业务提出了ATM机管理系统建设的项目解决方案并通过了 竞标,ATMS管理系统开发小组获得了大连市工商银行发计划。ATM机管理系统的项目开1.3定义账号:在银行中,事务应用的单个账号。账号可以为多种类型,但是至少包括支票和存款
3、。每个顾客可以拥有多个账号。ATM:一个工作站终端,使得顾客能够使用现金卡在ATM上进行自己的事务处理。ATM同顾客进行交互,收集事务信息,并发送事务信息到中心计算机,由中心计算机确认和 处理信息之后,将现金通过ATM提供给顾客。银行:一个金融机构,负责保存顾客的账号信息,执行授权卡通过ATM网访问账号。银行计算机:银行拥有的计算机,同ATM网和银行自己的现金工作站进行交互。银行可以拥有自己的内部计算机网处理账号,但是我们只关心同网络进行交互的计算机。现金卡:每张卡提供给一个银行客户,授权客户可以使用ATM机访问自己的账号。每张卡包含一个银行代码和一个卡号,银行代码根据信用卡的国际标准进行编码
4、,卡号确定卡能够访问的账户。一张卡不能访问客户的所有账户。每张卡只能有一个持卡人,但是多个复本可能存在,所以必须考虑从不同的ATM机同时使用相同卡的行为。客户:拥有银行的一个或者多个账号的人。客户可以包括一个人或者多个人,或者是公司。相同的人,拥有不同银行的账号被认为是不同的客户。事务:对单个客户账号的单个完整的操作请求。1.4参考资料a.大连市工商银行ATM网络系统改造需求建议书b.Rantional Rose RealTime建模案例剖析业出版社 实 时UML与主编:余金山 电子工c.(GB856T 88)软 件 工 程 国 家 标 准:软 件 需 求 说 明 书2 程序系统的结构2.1
5、ATM取款活动图描述上图功能:取款开始,先插卡,确认卡是否合法,输入”true”时,就读取密码信息,提示输入密码。输入”false”时,系统就会提示退卡。输入密码时,如果密码正确,则会提示取款,否则提示让重新输入密码,三次输入密码都错误,则系统就退卡。读取取款信息后,问是否确认取款,输入true”时,系统就提示输入取款金额。输入”false时,系统就终止取款Itrue活动。输入取款额时,系统提示是否确认取款,如果确认,就出钞,然后终止活动,否 则就直接提示取卡。2.2 ATM机转账活动图3 ATM3 ATM 机管理系统程序设计说明3.1程序描述考虑到目前仍然有很多银行是柜台办理取款存款转账等业
6、务,很是麻烦。所以本小 组开发此软件的是为了完善大连工商银行的业务处理流程,使得银行与客户间的业务办 理更方便、快捷和安全。本小组仅以设计开发的ATM机管理系统的取款子系统位例进行详细说明,该系统可 以实现取款功能,有常驻能存,没有子程序,是顺序处理。3.2功能ATMS取款子程序 IPO 图:输入输入迎理迎理输出输出!_ 一 读长读长有效的业务宅有效的业务宅录录验户验户密瑁卡密瑁卡梭验业务记录梭验业务记录睑证账户余额睑证账户余额收猖收猖七务类型七务类型金额金额取救金新取救金新X黑新余褊己录黑新余褊己录更新后的记录更新后的记录3.3性能说明:1、ATM系统软件总体结构:交互式界面和事务处理型系统
7、的混合体。2、ATM系统分为三个系统层次:(1)ATM务处理层(2)营业部事务处理层(3)联营机构事务处理层3、事务处理的数据库在营业部计算机中集中存放。可被多个并发的过联营机构确定连接访问。数据处理是单一的批处理型系统(指一个帐号被封锁直到处理结束)。4、联营计算机通过电话线与各营业部计算机连接。并通过站代码和营业部代码区分ATM业务到营业部的业务处理。5、每一时刻ATM上只有一个业务活动,联营计算机和营业部计算机可同时处理多个并发的业务活动。一个业务通过三个物理片段来完成,缺一不可。6、系统应该具有增加和删除ATM营业部处理层的能力。7、系统的安全保证至关重要。必须包括:存取权限、数据一致
8、性保证、出错处理等解决方案。ATMHI(只针对取款系统)名称类型格式有效范围方式频度系统性能密码金额总数char*6位键盘输入int0000.00100的倍数元键盘输入10次反应时间/、能大于10秒钟5次反应时间不能大于10秒钟f 最多取款不得超过5000元安全保密条件10次输入密码错误则吞卡媒体人工输入人工输入3.5输出项(只针对取款系统)名称类型格式有效范围金额int0000.00100的倍数方式频度系统性能安全保密条件媒体键盘输入5次反应时听能大于10秒钟多取款不得超过点钞机5000兀3.6算法取款操作算法描述(包括ATMATM系统类、取款类、数据库类)1、ATM(系统)类 系统主方法的
9、开始,负责调用其他类;import java.sql.*;import java.io.*;import java.awt.*;import java.awt.event.*;public class AtmatmScreen atms=new atmScreen();/实例化ATM屏幕类public void go()atms.mainFram();public static void main(String args)/系统主方法,只负责调用Atm atm=new Atm();atm.go();2、ATM(取款)类;package atm;import java.util.Scanner;
10、public class Account private int balance;int money;public Account()balance=0;public Account(int balance)(this.balance=balance;public int getBalance()(System.out.println(your balance:+balance);return this.balance;public void withdraw(int money)(balance-=money;public void withdraw()(balance-=money;pac
11、kage atm;import java.util.Scanner;public class ID extends Account(static final int minBalance=10;static int counter=0;private String accountID=jisuanji”;int num;public ID()(super(minBalance);private ID(String ID)(this.accountID=ID;public int Account()(return counter;public int getAccountAmount()thro
12、ws inputoverException,Exceptionif(counter3)System.out.println(Can not Use);throw new inputoverException();else return counter;public String getAccountID()return accountID;public void withdraw()Scanner scanner=new Scanner(System.in);System.out.println(input your get money:);money=scanner.nextInt();if
13、(money=this.getBalance()-minBalance)super.withdraw(money);else System.out.println(Not Enough Money);public void check()for(counter=1;counter=3;counter+)Scanner scanner=new Scanner(System.in);System.out.println(input accountID:);String faccountID=scanner.next();if(faccountID).equals(this.accountID)Sy
14、stem.out.println(Right ID);return;elseSystem.out.println(Account();package atm;class inputoverException extends Exception public void printStackTrace()System.out.println(inputover!”);package atm;import java.util.Scanner;public class Main public static void main(String args)int num;tryID ID=new ID();
15、Account bAccount=new ID();ID.check();ID.getAccountAmount();for(num=0;num!=4;)System.out.println(input your choice:1deposit,2get,3Balance,4over:);Scanner scanner=new Scanner(System.in);num=scanner.nextInt();switch(num)(case 1:bAccount.deposit();break;case 2:bAccount.withdraw();break;case 3:bAccount.g
16、etBalance();break;case 4:break;default:System.out.println(not your want);catch(inputoverException ex)(ex.printStackTrace();System.out.println(Please remember your accountID);catch(Exception ex)(ex.printStackTrace();System.out.println(Please remember your accountID!);3.7流程逻辑3.8接口1、本程序所隶属的上一层模块结构图:2、本
17、程序隶属的下一层模块:本小组考虑到本程序已经是属于ATM管理系统系统层次的ATM事物处理层,所以没有下一层模块。3、与本程序直接关联的数据结构(1)协议描述MESSAGEAT岬Withdraw)按下此按钮就进入取款的界面,并提示客户输入取款数额。MESSAG E ATM_ Query)进入帐户查询界面,提示选择币种帐户类型。当你选择其中一个帐户类型时就显示帐户信息。如果该帐户不存在,提示出错并返回上一层界面。MESSAGE ATM_Transfer)进入转帐界面,提示用户选择转帐类型然后要求两次输入目标帐户的帐号,之后再输入转帐金额。MESSAG E ATM _ ChangePassword)
18、进入更改密码子系统界面提示用户输入原密码,然后两次输入新密码。MESSAG E ATM_Back)返回上一层界面。MESSAGE(ATM_Quitt出ATMM系统。(2)实现描述:对象名:bankCard类名:BankCard私有数据结构:Integer:amount;printf(input the amount of moneyyou want!);3.9限制条件不足之处:由于本小组知识范围所限,软件开发的经验严重不足,对可视化开化工具和数据库管理工具还处在学习阶段,所以对系统开发的进度以及系统功能的实现程度较难控制。已具备的条件:1、小组成员交流比较方便,而且共同写作,积极进取。2、实现
19、系统所需的资料准备得较齐全。尚需补充的条件:1、提高开发人员的编程能力和对软件工程思想的认识;2、尽快掌握JAVA和SQL的使用方法以及相互的连接。3.10测试计划3.10.13.10.1 本小组仅以会话用例与取款用例进行对计划;ATMATM 机管理系统的单体测试用例被测试的功能初始系统状态测试输入期望的结果会话用例系统读取顾客 的银行卡系统处于ON状态,并没有为顾 客提供服务插入可读的银 彳讣银彳J K被接收,系统请求输入 密码会话用例系统弹出不可读取的银行卡系统处于ON状态,当前没有为 顾客提供服务插入不可读取 的银银彳了K被弹出,行卡系统显示错误 信息,准备启动 一个新的会话会话用例系统
20、接收顾客 的密码系统请求顾客 输入密码输入密码系统显示一个事务类型菜单会话用例系统允许顾客执行事务系统显示事务 类型菜单执行事务系统询问顾客是否希望执行其它事务会话用例系统允许在一个会话中执行 多个事务系统询问是否回答“是”系统显示事务执行其它事务类型菜单会话用例当顾客选择不 执行其它事务 时,会话结束系统询问是否执行其它事务回答“否”系统弹出银行 卡,准备启动一 个新的会话系统处理一个事务用例不合法的密码插入了可读取 的卡输入不正确的 密码尝试某个 事务执行非法密码取款用例系统提示顾客选择需要提取的现金的账户正在显示事务类型菜单选择取款事务系统显示账户 类型菜单取款用例系统正确执行合法取款事
21、务系统显示取款金额菜单选择系统当前 拥有 系统弹出现金,打单小于账户余额的 印收据,更新账户取款 金额余额取款用例系统验证是否 有足够的现金,完成用户的请 求系统现有的现金数量小于顾客请求的数量选择大于当前 系统拥有现金数量的取款金 额系统将显示一 个信息,提示现金不足,请重新选择取款金额取款用例系统验证顾客 账户余额是否 能够满足请求系统正在请求取款的金额金额选择一个取款 金额 系统将显示一 个信使得该金额小于当 息位顾客提供是否前系 统中的现金余执行 其它事务的选额但是大于用项户账户余额取款用例取款事务在选择金额之前可以被顾客取消系统显示账户 类型按下“CANCEL菜单键系统显示信息为 顾
22、客执行其它事 务提供相关选项取款用例取款事务在顾 客请求取款金 额之前的任何时候可以被取 消系统显示请求取款金额菜单按下“CANCEL键系统显示信息为顾客执行之前事务的选项3.11尚未解决的问题1、提高开发人员的编程能力和对软件工程思想的认识;2、尽快掌握JAVA和SQL的使用方法以及相互的连接。4 4 程序 2 2(标识符)设计说明4.1 ATM机查询账户系统设计说明进入查询帐户的操作界面选择你需要的操作就可以查询并显示你的帐户信息如果还需要其他操作按“返回”键否则(超过10秒钟没有操作 或 选择退出)退卡如果选择其他三个任意一个操作进入各自的界面进行各自的操作否则退卡4.2ATM机转账系统
23、设计说明进入转账/汇款的操作界面选择你需要的操作界面提醒你输入两次你要转入的卡号卡号输入完毕,提醒你输入金额按“确定”键,转账完毕如果还需要其他操作按“返回”键否则 超过10秒钟没有操作或选择退出退卡如果选择其他三个任意一个操作进入各自的界面进行各自的操作否则退卡说明:本小组考虑,因其它系统的设计说明都是类似的,所以省略。目录1 1引言3 31.1编写目的31.2背景31.3定义41.4参考资料52 2程序系统的结构5 52.1 ATM取款活动图52.2 ATM机转账活动图63 ATM3 ATM机管理系统程序设计说明7 73.1程序描述73.2功能73.3性能83.4输人项93.5输出项93.6算法103.7流程逻辑133.8接口143.9限制条件163.10测试计划173.11尚未解决的问题194 4程序2 2(标识符)设计说明19194.1 ATMB查询账户系统设计说明4.2ATM机转账系统设计说明2019