ATM管理系统 软件111第二组 (修复的)_第1页
ATM管理系统 软件111第二组 (修复的)_第2页
ATM管理系统 软件111第二组 (修复的)_第3页
ATM管理系统 软件111第二组 (修复的)_第4页
ATM管理系统 软件111第二组 (修复的)_第5页
已阅读5页,还剩29页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、连云港职业技术学院信息工程学院 软件技术111 第二组设计题目: ATM管理系统的设计与实现 学生姓名: 王伟 小组成员: 邱树、陈杰、王伟、赵震峰、孟坤 专 业: 软件技术 指导教师: 胡海明 所在学院: 信息工程学院 连云港职业技术学院2012年10月12日目录第1章绪言3第2章 系统需求分析42.1.现行业务系统描述42.2.组织结构图42.3.业务流程图52.4.现行系统存在的主要问题52.5. 可能的解决方案5第3章系统逻辑方案63.1.项目需求分析63.1.1 功能需求63.1.2 非功能需求63.2.数据流图描述73.3.数据字典描述83.4.基本加工的小说明书10第4章系统总体

2、结构设计124.2.数据库设计134.2.1.实体描述134.2.3.关系模式15第五章 面向对象分析与设计165.1 系统分析165.1.1.需求分析概述165.1.2系统需求描述与功能描述165.1.3.用例建模165.1.4 活动建模195.2 系统设计255.2.1类的建模255.2.2动态建模275.2.2.1系统状态图285.2.2.2系统顺序图与协作图295.3、系统实现325.3.1细化类图,添加类的属性和操作325.3.2系统的构件图与部署图32第6章系统实施336.1.实施环境与开发工具的选择336.1.1设备 PC机、打印机、点钞机、服务器等。336.1.2支持软件 wi

3、ndows操作系统336.2.编程环境与方法336.3 系统部署的条件33第7章总结33第1章 绪言ATM机管理系统是银行业务流程过程中十分重要且必备的环节之一,在银行业务流程当中起着承上启下的作用,其重要性不可言喻。但是,目前许多银行在具体的一些业务流程处理过程中仍然使用手工操作的方式来实施,不仅费时,费力,效率低下,而且无法达到理想的效果。为明确软件需求、安排项目规划与进度、组织软件开发与测试,撰写文本文档,本文本针对上述问题,采用软件工程开发的原理,依据软件流程过程规范,按照需求分析,概念设计程序编码,软件应用等过程,开发了这个系统。第2章 系统需求分析2.1.现行业务系统描述为完善银行

4、现代化服务理念,提高业务自动化处理水平,ATM自动柜员机和自助银行在全国金融界中不断普及。许多原来要在银行网点办理的业务现在都可以在自动柜员机上自助进行,储户可通过手中的银行卡在ATM上进行存、取款,转账等服务,和自助银行给我们的生活带来了许多方便,成为我们生活中密不可分的助手,已经完全融入百姓的日常生活中。当今各银行监控系统都采取了较为传统的数字化硬盘录像系统,优点是改变了存储介质、节省了录像质料存放的空间。2.2.组织结构图2.3.业务流程图2.4.现行系统存在的主要问题从全国不断发生的ATM机案件来看传统的监控模式已经很难适应目前复杂的ATM存取款治安环境。如何提升ATM机的安保水平强化

5、ATM机的危险感知能力变被动防守型的事后取证为主动防御型预警干预已经成为摆在银行和安保服务商面前的一个重要课题。为方便相关部门和单位了解现实问题创新安保思路加强防范能力改善行业形象避免出现ATM监控建设流于形式而不注重效果的现象发生我们结合ATM机及自助银行的治安特点综合分析各类案件的特征和发展趋势提出了新形势下ATM机的安保要点及解决方法。2.5. 可能的解决方案1.银行实际需要的不仅是录像取证系统而是全方位的监控安保系统。2.面对复杂的ATM机使用环境应当迅速改变被动的视频监录思路建立起以各种预警传感器为基础视频录像为后盾的立体防控体系 。第3章系统逻辑方案3.1.项目需求分析3.1.1

6、功能需求功能名称取款 创建人 最后修改人 创建日期 最后修改日期 角色:客户 描述:客户输入取款金额。系统判断账户正常且金额允许后提供款给客户。 前置条件:取款身份帐号密码合法 后置条件无 主干过程 客户指定所需金额 系统接受请求判断帐号余额充足后从账户扣钱 ATM吐现金,客户取款 客户得到交易凭条 客户输入其他信息,结束此次取款 系统保存交易信息,添加日志。3.1.2 非功能需求 1ATM终端无人操作时,显示待机动画 2ATM接受卡,检验卡是否可进行交易(用户向ATM提款机中插入银行卡,如果插入无效的银行卡,那么,在ATM提款机界面上提示用户“您使用的银行卡无效!”,3秒钟后,自动退出该银行

7、卡;如果银行卡是合法的,ATM提款机界面提示用户输入提款密码) 3磁卡认证完成,进入主交易界面(储户输入正确密码,校验密码,显示主交易界面) 4插入卡后取消操作(提示账户是否确定操作,如果是,退出银行卡) 5校验密码是否格式正确(例如密码长度) 6校验密码是否正确(校验当前密码与存储的账户密码是否一致) 7卡密码连续三次输入错误,没收磁卡(用户连续第三次输入错误密码,错误则吞食磁卡,提示“您的卡连续三次密码错误,已被吞没。请联系客服955*”) 8ATM现金不足,系统应对取款储户进行提示,可退出交易 9ATM凭条打印机故障,系统应对存款和转账储户进行提示,可退出交易3.2.数据流图描述 二层数

8、据流图取款:查询:转账:一层DFD图 2-23.3.数据字典描述1.名字IC卡信息表 别名ICinfo 描述存储IC卡的信息 定义IC=IC卡号+密码+所属银行+IC余额+密码当日错误次数 位置所属银行数据库2. 名字IC卡号 别名无 描述唯一标识IC卡的号码 定义IC卡号=6位数字 位置IC卡信息表3. 名字密码 别名无 描述IC卡的验证信息定义密码=6位数字 位置IC卡信息表4. 名字所属银行 别名无 描述描述IC卡属于哪个银行 定义1字符20 位置IC卡信息表5. 名字IC余额 别名无 描述记录IC卡账户的余额 定义余额=float型数 位置记录IC卡账户的余额6. 名字用户信息表 别名

9、userinfo 描述存储用户的信息 定义用户=身份证号+用户名+电话+居住地址+IC卡号 位置所属银行数据库7. 名字身份证号 别名无描述唯一表示用户身份的编号 定义18位数字 位置用户信息表8. 名字用户名 别名无 描述记录用户的姓名 定义1字符20 位置用户信息表9. 名字电话 别名无 描述用户电话号码便于联系 定义7字符11 位置用户信息表10.名字ATM机信息表 别名ATM 描述存储ATM机ID以及余额 定义ATM=ATM机ID+余额+100num+50num 位置所属用户数据库11. 名字ATM机ID 别名ATM机编号描述唯一确定ATM机的号码 定义6位数字 位置ATM机信息表12

10、. 名字操作记录 别名操作 描述描述用户的整个的操作过程 定义1字符20 位置ATM日志表13. 名字取款日期别名无 描述记录本次交易的日期 定义日期型 位置回单信息表3.4.基本加工的小说明书插卡并输入密码如果 密码正确则 进入操作界面 (共有四种基本操作)1、查询帐户2、提取现金3、转账汇款4、修改密码如果 需要进行以上某个操作 请选择 选择需要的操作否则 超过10秒钟没有操作 或 选择退出 退卡否则再次输入密码(如果密码输入的错误次数超过10次,则吞卡) 如果 选择第1个操作:1、查询帐户则 进入查询帐户的操作界面 (按币种分类共有四种查询操作)1、人民币帐户 2、港币帐户 3、美元帐户

11、 4、其他帐户 选择你需要的操作就可以查询并显示你的帐户信息如果 还需要其他操作 按“返回”键否则 (超过10秒钟没有操作 或 选择退出) 退卡否则 如果 选择其他三个任意一个操作 进入各自的界面进行各自的操作 否则 退卡 如果 选择第2个操作:2、提取现金则 进入提取现金的操作界面 (按币种分类共有四种币种可以取得)1、人民币帐户 2、港币帐户 3、美元帐户 4、其他帐户 选择你需要的操作并输入你要取出的金额 等待出钞如果 还需要其他操作 按“返回”键否则 超过10秒钟没有操作 或 选择退出 退卡 否则 如果 选择其他三个任意一个操作 进入各自的界面进行各自的操作 否则 退卡如果 选择第3个

12、操作:3、转账/汇款则 进入转账/汇款的操作界面 (共有两种转账汇款方式)1、卡内转账 2、卡卡转账 选择你需要的操作 界面提醒你输入两次你要转入的卡号 卡号输入完毕,提醒你输入金额 按“确定”键,转账完毕如果 还需要其他操作 按“返回”键否则 超过10秒钟没有操作 或 选择退出 退卡否则 如果 选择其他三个任意一个操作 进入各自的界面进行各自的操作 否则 退卡第4章系统总体结构设计4.1.软件总体结构的设计4.1.1.HIPO图4.1.2.IPO图4.2.数据库设计4.2.1.实体描述IC:图 3-1实体集IC,有属性 账号(唯一的学号),姓名,余额,办证日期,密码和联系方式,住址。银行实体

13、集银行,有属性银行编号(唯一),结款总额,日期,负责人。4.2.2.E-R图4.2.3.关系模式IC卡(账号,姓名,余额,办证日期,密码,联系方式,住址)银行(银行编号,结款总额,日期, 负责人)第五章 面向对象分析与设计5.1 系统分析5.1.1.需求分析概述1 ATM机要可以判断磁卡的类别如果不是有效的磁卡则退卡 2 可以在较快的时间内响应用户的请求并针对相应的请求执行正确的操作 3 查询自己的账户时应显示余额和可用余额并显示ATM机里所拥有的现金面值让用户可以做出正确的选择 4 提取现金时提示用户输入取款金额并判断输入是否确如果错误提醒用户并要求重新操作正确则提醒用户收取现金 5 转账汇

14、款时让用户选择转账类型要求用户输入转账账号并要求用户输入两次以确保没有输入错误在两次输入都正确的情况下让用户输入转账金额并作最后的认 6 进入修改密码界面后提醒用户输入新密码并要求再次输入以确保密码统一无误在确认后完成修改操作并提醒用户新密码生效 7 对于错误的操作或者操作延时做出有效的处理 5.1.2系统需求描述与功能描述总行拥有多台ATM。 分行提供分行计算机和柜员终端。 储户拥有账户。分行计算机处理针对账户的事务。 分行计算机维护账户。 柜员终端与分行计算机通信。 柜员输入针对账户的事务。 ATM与中央计算机交换关于事务的信息。 中央计算机确定事务与分行的对应关系5.1.3.用例建模1.

15、ATM系统用例图:2.这个ATM系统主要显示了对客户提供存取款,转账,余额的功能。3.描述用例验证用例1. 简要说明 本例用来描述用户登陆的过程2. 事件流(1) 基本流1.系统验证银行卡账号。2.用户输入密码。3.系统验证用户输入的密码信息。4.用户进入系统。(2) 备选流1.如果账号错误,给出提示,退出。2. 如果输入密码错误,给出提示,退出。取款用例3. 简要说明 本例用来描述用户取款的过程4. 事件流(1) 基本流1.用户输入取款金额。2.系统验证输入金额是否符合输入要求。3.系统验证用户账户余额。4.系统显示用户取款金额。5.用户确认取款金额。 6.系统要求点钞机出钞。 7.系统更新

16、并保存账户信息。(2) 备选流1.如果输入金额不符合输入数字格式要求,给出提示,退出。2.如果输入金额超出最大取款金额,给出提示,退出。3.如果用户没有确认,给出提示,退出。查询余额用例5. 简要说明 本例用来描述用户查询余额的过程6. 事件流(1) 基本流1. 用户选择查询余额功能。2. 系统显示账户余额及最大取款限额。转账用例7. 简要说明 本例用来描述用户转账的过程8. 事件流(1) 基本流1.用户输入转账账号。2.系统验证转账账号。3.用户输入转账金额。4.系统验证输入金额是否符合输入要求。5.系统验证用户账户余额。6.系统显示用户转账账户及转账金额。7.用户确认转账账户及转账金额。

17、8.系统更新并保持账户信息。(2) 备选流1.如果输入账号不正确,给出提示,退出。2.如果输入金额不符合输入格式要求,给出提示,退出。3.如果输入金额超出最大转账金额,给出提示,退出。4.如果用户没有确认,给出提示,退出。5.1.4 活动建模1读卡当用户插入卡后,验证是否为正确的IC卡,若不是则强行退卡,若是则系统应该自动的读取条形码中的信息,并自动检索本系统需要的信息,包括卡号类型,用户名,密码(为密码验证提供依据)等账号相关信息;当IC卡磁条损坏或由于其他的原因而导致的读卡错误,应进行界面提示,并自动退卡。2身份验证在用户插入正确的IC卡后,应该进行密码验证,即确定该用户为合法用户, 若密

18、码正确则该用户可以进行像余额查询,修改密码,取钱,转账操作业务,当密码错误是应允许重新输入密码,但只允许重新输入三次,当超过三次时,系统应该冻结该账户二十四小时,给出提示信息的同时并退卡。2.1.2性能读卡应在2秒内完成,除连接银行数据库的时间和等待银行数据库响应的时间之外身份验证应在1秒内完成。系统安全性必须好,数据一致性,存储权限必须得到保证。密码处理应当可扩展,因为今后可能出现6位以上密码或非数字密码。2.1.3输入项目名称输入项读卡时读卡器输入IC磁条信息(IC卡卡号)读卡时银行数据库输入账户信息(包括密码、用户名、账户余额等)身份验证时键盘输入六位数字的密码2.1.4输出项目在屏幕输

19、出读卡结果和身份验证结果。读卡和身份验证的活动图如下:2.2取款子系统2.2.1功能在进入主功能界面后的主要功能,选择该功能后应给出相应的界面,在用户输入取款金额后自定验证(包括余额是否充足,是否超过单次最大金额(1000),或单日最大金额(20000),若条件都符合则取款,吐钱;否则做出相应的处理。2.2.2性能操作无误则在按下取款键后2秒内吐钱,有误则正确提示错误原因。取款因为某些原因失败后所有操作要正确回滚。操作日志应记录所有吐钱记录,用户可打印的回单也应有取款记录。2.2.3输入项目取钱数额。2.2.4输出项目名称操作成功操作失败取钱吐出相应数目的钱数信息提示,返回主功能界面取款功能的

20、活动图如下:2.3查询余额子系统2.3.1功能简单的显示余额的功能。2.3.2性能一秒内处理完毕并在屏幕上显示余额信息(不计等待银行数据库响应的时间,并且以后的时间如未特殊说明也不计等待银行数据库响应的时间)。2.3.3输入项目点击余额查询功能的按钮。2.3.4输出项目在屏幕上显示余额。余额查询功能的活动图如下:2.4转账子系统2.4.1功能实现本行间不同账户的转账业务。2.4.2性能操作无误则在按下转账键后1秒内处理完毕,有误则正确提示错误原因。转账因为某些原因失败后所有操作要正确回滚(比如因为要转账的用户不存在,则显示用户不存在并回滚操作,比如银行不返回信息,则显示网络中断)。操作日志应记

21、录所有转账记录,用户可打印的回印单也应有转账记录。2.4.3输入项目1、要转入到的账户号;2、要转的金额数目。2.4.4输出项目名称操作成功操作失败转账显示操作成功信息提示操作失败信息转账功能的活动图如下:2.5修改密码子系统2.5.1功能密码修改功能应该是在正确的进入主功能界面后的一个操作命令,应该有密码格式的自动检查,若期间由于各种原因导致的修改错误,应将密码回滚到修改前密码;修改成功的标志是该账户在数据库中的信息得到修改并保存,当然成功后应有相应的提示界面信息。2.5.2性能若由于某些原因未能成功修改,应能回滚回原密码,并正确提示密码未能修改。密码修改应在1秒内完成。2.5.3输入项目首

22、先是旧密码,然后是新密码,最后是新密码确认。2.5.4输出项目名称操作正确操作失败修改密码修改成功提示信息错误操作信息,退回主界面修改密码的活动图如下:2.6打印回单子系统2.6.1功能打印在本次操作下账户的信息变化(主要是转账操作,取款操作),其中包括:用户卡号,用户名,操作日期,操作金额,使用币种(暂定为人民币)等,可作为以后用户进行该操作的一项凭证。2.6.2性能3秒打印完毕,可打印转账户名,转账金额,转账操作网点,取款金额,取款日期,取款操作网点等在回印单记录中保存的信息。2.6.3输入项目点击打印回单按钮。2.6.4输出项目名称操作成功操作失败打回印单回印单错误信息提示,退回到主功能

23、界面(比如打印机无纸或无墨)打回印单的活动图如下:5.2 系统设计5.2.1类的建模函数输入输出Open()卡号 密码提示信息WithdrawFunds()金额纸币DeductFunds()无无VerifyFunds()无无取款类图函数输入输出Open()卡号 密码提示信息DepositFunds()金额无AddFunds()无无VerifyFunds()无无存款类图函数输入输出Open()卡号 密码提示信息TransferFunds()金额无DeductFunds()无无VerifyFunds()无无 转账类图函数输入输出Open()卡号 密码无Query()无无余额查询类图函数输入输出Op

24、en()卡号 密码无AlterPassword()旧密码 新密码无修改密码的类图函数输入输出Open()卡号 密码无PrintSlip()无凭条(清单)打印凭条的类图5.2.2动态建模许多单个的帐户组成了帐户库。帐户具有帐户类型、帐户号、余额三个属性,均为private,其类型分别为char,int,double。六个操作分别为setType、getType、getAccountNumbe、setAccountNumbe、caculateBalance、getBalance,除caculateBalance为protected其余均为public。 setType设置帐户类型,返回类型为voi

25、d,参数类型为char,输入帐户类型。 getType获取帐户类型,返回类型为char,无参数。 setAccountNumbe设置帐户号,返回类型为void,参数类型为int,输入帐户号。 getAccountNumbe获取帐户号,返回类型为int,无参数。 caculateBalance计算余额,返回类型为void,参数为double,第一个参数为输入存取款数额,第二个参数为存款余额,既为输入也为输出。 getBalance获取帐户余额,返回类型为double,无参数。许多银行储户组成了储户库。ATM系统包含了许多ATM机。银行储户及ATM机两个类包含哪些属性,哪些操作,它们的可见性及操作

26、的返回类型、参数个数、参数类型从类图上都一目了然。更多的属性及操作都可以一一加上,使这个类图更详细更完整,从而使参与项目的每个成员都能无歧义的明了整个设计的类的结构。同样对于一个真正的银行系统,这个类图过于简单。比如帐户类型我们可以先定义一个abstract class,它包含一个帐户最基本的属性及操作。而有些操作先定义为abstract,如余额的计算。然后再继承这个abstract class,我们可以有saving account 和checking account等等。不同的帐户有不同的余额计算方法,我们可以加上具体的算法。对于不同的帐户可能还有一些它特有的操作,我们也可以加上,比如sa

27、ving account在存款达到多少时可以享受机票打折的优惠。对象类关联关系图:5.2.2.1系统状态图下图描述了顾客在ATM机上进行操作会经历的几种状态,及各种状态之间转换的条件。因为是简化了的例子,所以除了等待顾客插入磁卡的起始状态和结束服务的终止状态,顾客会处于输入密码、选择服务类型、存款及取款四种状态。 ATM状态图:5.2.2.2系统顺序图与协作图下图描述了顾客在ATM机上取款时信息的流动情况。以时间为顺序。因为仅是示例,所以整个过程是没有出现任何故障时的流程,并且只画到了取款结束。通过这个图,我们可以看出消息是如何在系统中不同对象之间进行交互。通过流程图我们可以很清楚地看到系统是

28、如何工作的,系统各部分之间的信息及控制是如何发送的,整个流程是否合理。流程图对我们的设计起到了很好的帮助作用。注意在本图没有一个生命线终端有一个X,这是因为这个流程中还未遇到有对象生命结束。当有对象生命结束时需在对应的生命线终端画X,表明这个对象在这时被销毁。首先银行储户将ATM卡插入读卡机,读卡机将信息传给客户管理,客户管理提出查询密码,显示部分将输入密码请求显示出来.Atm顺序图ATM取款的场景:(1)通过读卡机,用户插入ATM卡;(2)ATM系统从卡上读取银行ID、帐号、加密密码、并用主银行系统验证银行ID和帐号;(3)用户输入密码,ATM系统根据上面读出的卡上加密密码,对密码进行验证;(4)用户输入取款数量;(5)ATM系统通知主银行系统,传递

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论