




已阅读5页,还剩18页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
项目名称:ATM 机管理系统 负责人:负责人:(计算机 062-32 李小飞,主要负责统筹规划,程 序 代码,部分流程图,资料查询) 参与人:参与人:(计算机 063-31 王开元,主要负责编写整理,部 分 流程图,PPT 制作,资料查询; 计算机 063-29 潘锋,主要负责部分流程图,资料 查询) ATM 机管理系统机管理系统 详细设计说明书详细设计说明书 详细设计说明书详细设计说明书 1 引言引言 1.1 编写目的编写目的 ATM 机管理系统是银行业务流程过程中十分重要且必备的环节之一,在银行业务流 程当中起着承上启下的作用,其重要性不言而喻。但是,目前许多银行在具体的一些业 务流程处理过程中仍然使用手工操作的方式来实施,不仅费时、费力,效率低下,而且 无法达到理想的效果。为明确软件需求、安排项目规划与进度、组织软件开发与测试, 撰写本文档,本文针对上述问题,采用软件工程的开发原理,依据软件流程过程规范, 按照需求分析,概要设计,程序编码,软件应用等过程,开发了这个系统。本文档供项 目经理、设计人员、开发人员参考。 1.2 背景背景 a 待开项目名称:ATM 机管理系统。 b ATM 机管理系统是应大连市工商银行银行网络建设和改造需求,为客户提供方 便、迅速、便捷的自动取款业务提出了 ATM 机管理系统建设的项目解决方案并 通过了竞标,ATM 机管理系统开发小组获得了大连市工商银行 ATM 机管理系统 的项目开发计划。 1.3 定义定义 账号:在银行中,事务应用的单个账号。账号可以为多种类型,但是至少包括支票和存 款。每个顾客可以拥有多个账号。 ATM:一个工作站终端,使得顾客能够使用现金卡在 ATM 上进行自己的事务处理。 ATM 同顾客进行交互,收集事务信息,并发送事务信息到中心计算机,由中心计算机 确认和处理信息之后,将现金通过 ATM 提供给顾客。 银行:一个金融机构,负责保存顾客的账号信息,执行授权卡通过 ATM 网访问账号。 银行计算机:银行拥有的计算机,同 ATM 网和银行自己的现金工作站进行交互。银行 可以拥有自己的内部计算机网处理账号,但是我们只关心同网络进行交互的计算机。 现金卡:每张卡提供给一个银行客户,授权客户可以使用 ATM 机访问自己的账号。每 张卡包含一个银行代码和一个卡号,银行代码根据信用卡的国际标准进行编码,卡号确 定卡能够访问的账户。一张卡不能访问客户的所有账户。每张卡只能有一个持卡人,但 是多个复本可能存在,所以必须考虑从不同的 ATM 机同时使用相同卡的行为。 客户:拥有银行的一个或者多个账号的人。客户可以包括一个人或者多个人,或者是公 司。相同的人,拥有不同银行的账号被认为是不同的客户。 事务:对单个客户账号的单个完整的操作请求。 1.4 参考资料参考资料 a 大连市工商银行 ATM 网络系统改造需求建议书 b 实时 UML 与 Rantional Rose RealTime 建模案例剖析 主编:余金山 电子 工业出版社 c 软件工程国家标准:软件需求说明书(GB856T88) 2 程序系统的结构程序系统的结构 2.1 ATM 取款活动图取款活动图 描述上图功能: 取款开始,先插卡,确认卡是否合法,输入”true”时,就读取密码信息,提示输入密 码。输入”false”时,系统就会提示退卡。输入密码时,如果密码正确,则会提示取款, 否则提示让重新输入密码,三次输入密码都错误,则系统就退卡。读取取款信息后,问 是否确认取款,输入 “true”时,系统就提示输入取款金额。输入”false”时,系统就终止 取款活动。输入取款额时,系统提示是否确认取款,如果确认,就出钞,然后终止活动, 否则就直接提示取卡。 2.2 ATM 机转账活动图机转账活动图 3 ATM 机管理系统程序设计说明机管理系统程序设计说明 3.1 程序描述程序描述 考虑到目前仍然有很多银行是柜台办理取款存款转账等业务,很是麻烦。所以本小 组开发此软件的是为了完善大连工商银行的业务处理流程,使得银行与客户间的业务办 理更方便、快捷和安全。 本小组仅以设计开发的 ATM 机管理系统的取款子系统位例进行详细说明,该系统可 以实现取款功能,有常驻能存,没有子程序,是顺序处理。 3.2 功能功能 ATM 机取款子程序 IPO 图: 3.3 性能性能 说明: 1、ATM 系统软件总体结构:交互式界面和事务处理型系统的混合体。 2、ATM 系统分为三个系统层次: (1)ATM 事务处理层 (2)营业部事务处理层 (3)联营机构事务处理层 3、事务处理的数据库在营业部计算机中集中存放。可被多个并发的 ATM 通 过联营机构确定连接访问。数据处理是单一的批处理型系统(指一个帐号 被封锁直到处理结束) 。 4、联营计算机通过电话线与各营业部计算机连接。并通过站代码和营业部代 码区分 ATM 业务到营业部的业务处理。 5、每一时刻 ATM 上只有一个业务活动,联营计算机和营业部计算机可同时 处理多个并发的业务活动。一个业务通过三个物理片段来完成,缺一不可。 6、系统应该具有增加和删除 ATM 和营业部处理层的能力。 7、系统的安全保证至关重要。必须包括:存取权限、数据一致性保证、出错 处理等解决方案。 3.4 输人项输人项 (只针对取款系统) 名称密码金额总数 类型 charint 格式 *0000.00 有效范围6 位100 的倍数元 方式键盘输入键盘输入 频度10 次5 次 系统性能反应时间不 能大于 10 秒 钟 反应时间 不能大于 10 秒钟 安全保密条 件 10 次输入密 码错误则吞 卡 一天最多取款不得超 过 5000 元 媒体人工输入人工输入 3.5 输出项输出项 (只针对取款系统) 名称金额 类型int 格式0000.00 有效范围100 的倍数 方式键盘输入 频度5 次 系统性能反应时间不能大于 10 秒钟 安全保密条件一天最多取款不得超过 5000 元 媒体点钞机 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(); 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 money) 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 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.out.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 faccountID=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 public 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.deposit(); 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(Please remember your accountID!); 3.7 流程逻辑流程逻辑 3.8 接口接口 1、本程序所隶属的上一层模块结构图:、本程序所隶属的上一层模块结构图: 2 2、本程序隶属的下一层模块:、本程序隶属的下一层模块: 本小组考虑到本程序已经是属于 ATM 管理系统系统层次的 ATM 事物处理层,所以没 有下一层模块。 3 3、与本程序直接关联的数据结、与本程序直接关联的数据结构 (1)协议描述 MESSAGE(ATMWithdraw) 按下此按钮就进入取款的界面,并提示客户输入取款数额。 MESSAGE(ATM_ Query) 进入帐户查询界面,提示选择币种帐户类型。当你选择其中一个帐户类型时就显示帐户 信息。如果该帐户不存在,提示出错并返回上一层界面。 MESSAGE(ATM_Transfer) 进入转帐界面,提示用户选择转帐类型然后要求两次输入目标帐户的帐号,之后再输入 转帐金额。 MESSAGE(ATM _ ChangePassword) 进入更改密码子系统界面提示用户输入原密码,然后两次输入新密码。 MESSAGE(ATM_Back ) 返回上一层界面。 MESSAGE(ATM_Quit)推出 ATM 机系统。 (2)实现描述: 对象名:bankCard 类名: BankCard 私有数据结构:Integer:amount;printf(“input the amount of money you want!”) ; 3.9 限制条件限制条件 不足之处: 由于本小组知识范围所限,软件开发的经验严重不足,对可视化开化工具 和数据库管理工具还处在学习阶段,所以对系统开发的进度以及系统功能 的实现程度较难控制。 已具备的条件: 1、小组成员交流比较方便,而且共同写作,积极进取。 2、实现系统所需的资料准备得较齐全。 尚需补充的条件: 1、提高开发人员的编程能力和对软件工程思想的认识; 2、尽快掌握 JAVA 和 SQL 的使用方法以及相互的连接。 3.10 测试计划测试计划 3.10.1 本小组仅以会话用例与取款用例进行对本小组仅以会话用例与取款用例进行对 ATM 机管理系统的单体测试机管理系统的单体测试 计划;计划; 用例 被测试的功能初始系统状态测试输入期望的结果 会话用例 系统读取顾客 的银行卡 系统处于 ON 状 态,并没有为 顾客提供服务 插入可读的银 行卡 银行卡被接收, 系统请求输入 密码 会话用例系统弹出不可 读取的银行卡 系统处于 ON 状 态,当前没有 为顾客提供服 务 插入不可读取 的银行卡 银行卡被弹出, 系统显示错误 信息,准备启 动一个新的会 话 会话用例系统接收顾客 的密码 系统请求顾客 输入密码 输入密码系统显示一个 事务类型菜单 会话用例系统允许顾客 执行事务 系统显示事务 类型菜单 执行事务系统询问顾客 是否希望执行 其它事务 会话用例系统允许在一 个会话中执行 多个事务 系统询问是否 执行其它事务 回答“是”系统显示事务 类型菜单 会话用例当顾客选择不 执行其它事务 时,会话结束 系统询问是否 执行其它事务 回答“否”系统弹出银行 卡,准备启动 一个新的会话 事务用例 系统处理一个 不合法的密码 插入了可读取 的卡 输入不正确的 密码尝试某个 事务 执行非法密码 取款用例系统提示顾客 选择需要提取 的现金的账户 正在显示事务 类型菜单 选择取款事务系统显示账户 类型菜单 取款用例系统正确执行 合法取款事务 系统显示取款 金额菜单 选择系统当前 拥有单小于账 户余额的取款 金额 系统弹出现金, 打印收据,更 新账户余额 取款用例系统验证是否 有足够的现金, 完成用户的请 求 系统现有的现 金数量小于顾 客请求的数量 选择大于当前 系统拥有现金 数量的取款金 额 系统将显示一 个信息,提示 现金不足,请 重新选择取款 金额 取款用例系统验证顾客 账户余额是否 能够满足请求 的金额 系统正在请求选择一个取款 金额使得该金 额小于当前系 系统将显示一 个信息位顾客 提供是否执行 取款金额统中的现金余 额但是大于用 户账户余额 其它事务的选 项 取款用例取款事务在选 择金额之前可 以被顾客取消 系统显示账户 类型菜单 按下 “CANCEL”键 系统显示信息为 顾客执行其它事 务提供相关选项 取款用例取款事务在顾 客请求取款金 额之前的任何 时候可以被取 消 系统显示请求 取款金额菜单 按下 “CANCEL”键 系统显示信息 为顾客执行之 前事务的选项 3.11 尚未解决的问题尚未解决的问题 1、提高开发人
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年叠层陶瓷电容器行业当前发展现状及增长策略研究报告
- 2025年医疗诊断行业当前市场规模及未来五到十年发展趋势报告
- 收养基础知识培训内容
- 2025一建建筑实务真题库及答案
- 2025年临床药理学题库(有答案)
- 2025行政法律知识竞赛题库及答案
- (2025)医疗三基三严考试题库及参考答案
- 2025年环境卫生知识竞赛试题及参考答案
- 2025年护理三基理论考试试题附答案
- “房产经纪人基础知识”考核测试卷及答案
- 非煤露天矿山安全培训
- 快速康复外科理念下的骨科康复
- 事故隐患内部报告奖励制度
- (完整版)小学四年级四则运算500道
- 劳动仲裁申请书电子版模板
- 电厂消防培训
- 2025年云南省康旅控股集团有限公司招聘笔试参考题库含答案解析
- 基于谷歌云视觉自动图像标注技术的多模态语料库开发与分析
- UdieToo使用方法及代码对照表
- 煤矿项目部管理制度
- 小红书种草营销师(初级)认证考试题库(附答案)
评论
0/150
提交评论