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