ImageVerifierCode 换一换
格式:DOC , 页数:17 ,大小:220.50KB ,
文档编号:5644121      下载积分:20 文币
快捷下载
登录下载
邮箱/手机:
温馨提示:
系统将以此处填写的邮箱或者手机号生成账号和密码,方便再次下载。 如填写123,账号和密码都是123。
支付方式: 支付宝    微信支付   
验证码:   换一换

优惠套餐
 

温馨提示:若手机下载失败,请复制以下地址【https://www.163wenku.com/d-5644121.html】到电脑浏览器->登陆(账号密码均为手机号或邮箱;不要扫码登陆)->重新下载(不再收费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录  
下载须知

1: 试题类文档的标题没说有答案,则无答案;主观题也可能无答案。PPT的音视频可能无法播放。 请谨慎下单,一旦售出,概不退换。
2: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
3: 本文为用户(2023DOC)主动上传,所有收益归该用户。163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

1,本文(面向对象分析与设计-ATM系统分析与设计复习课程(DOC 16页).doc)为本站会员(2023DOC)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!

面向对象分析与设计-ATM系统分析与设计复习课程(DOC 16页).doc

1、面向对象分析与设计 ATM系统分析与设计ATM系统分析与设计需求分析一总体要求:1,ATM机要可以判断磁卡的类别,如果不是有效的磁卡则退卡; 2,可以在较快的时间内响应用户的请求,并针对相应的请求执行正确的操作;3,当卡在ATM机内30秒内没有操作时,系统自动没收信用卡;4,查自己的账户时应显示余额和可用余额,并显示ATM机里所拥有的现金面值,让用户可以做出正确的选择;5,提取现金时提示用户输入取款金额并判断输入是否确,如果错误提醒用户并要求重新操作,正确则提醒用户收取现金;钞票在出钞机内30秒内没人取走,自动回收钞票;6,转账汇款时让用户选择转账类型,要求用户输入转账账号并要求用户输入两次,

2、以确保没有输入错误,在两次输入都正确的情况下,让用户输入转账金额,并作最后的确认。7,进入修改密码界面后提醒用户输入新密码,并要求再次输入以确保密码统一无误,在确认后完成修改操作,并提醒用户新询密码生效;8,对于错误的操作或者操作延时做出有效的处理。二,系统要求:要求用户一次取款数额不得大于2500元;要求用户一天取款数额不得超过5000元;要求用户连续输入错误密码次数不得超过3次。三,系统性能要求:要求反应时间不得大于10秒钟;四:设计目标:系统可以提供24小时不间断服务,操作简单,可以很方便为用户提供取款、转账/汇款、查询账户信息等服务。 模型分析一:设计DFD图。(1) 顶层DFD图:用

3、户 银行卡交易凭条银行卡ATM系统用户 (2)0层DFD图:银行卡密码确认用户 选择操作账户信息退出退出类型用户判断超时执行操作提示信息操作类型没收信用卡(3)1层DFD图:超时信息未超时信息没收信用卡操作是否超过30秒退出用户警告信息银行卡取款取款操作查询是否打印账单查询操作打印账单选择信息选择交易密码确认退出类型转账操作更改密码操作退出转账银行卡更改密码用户取款子系统:客户存储信息单 选择交易收回货币30秒内无响应提取现金取款金额选择货币种类调用取款系统选择信息取款操作选择信息现金警示信息用户查询子系统:客户存储信息单选择交易调用查询系统 选择货币种类选择信息查询信息查询账户查询操作显示选

4、择信息用户转账子系统:客户存储信息单卡内转账选择信息选择交易调用转账系统 查询操作转入卡号信息选择信息卡卡转账选择信息转入卡号信息转账金额记录记录记录更改密码子系统:客户存储信息单调用更改密码系统选择交易记录新密码新密码更改密码信息确认选择信息 二:组织结构设计 (1)系统结构读卡机模块键盘输入模块显示模块ATM机系统认证模块出钞模块打印模块(2) 读卡机系统输入:银行卡 查询数据库,识别卡号及所属银行输出:显示卡号及所属银行信息(3)键盘输入子系统输入:密码,取款金额,查询余额等验证信息显示相关操作10秒内无操作则吞卡认证子系统:输入卡号连接认证服务器验证卡号信息正确则显示输入密码,否则吐卡

5、 显示子系统:信息输入后台处理在屏幕上显示处理情况出钞子系统:输入金额后台处理输出现金30秒内客户不取走现金则吞入现金打印子系统:客户选择是否打印后台处理输出报表或者无动作数据库子系统:客户输入信息数据库查询在输出显示查询信息建立模型一:建立基本系统模型图二:建立序列图:代码设计:#includeclass consumer;class ATM / ATM取款机public: ATM(consumer& cn):cnsm(cn) void welcome(); / 登陆界面 bool check_passwd(char n,char pwd); / 核对密码 void change_passw

6、d(); / 修改密码 void fetchmoney(); / 取款 void information(); / 查询信息 void exitATM(); / 退出系统 void functionshow(); / 功能界面 void lock(); / 锁机private: int times; / 记录密码输入次数 consumer& cnsm;class consumer/ 用户public: friend class ATM; consumer(char Name,char Num, float Money,char Password);protected: char* get_na

7、me(); / 取得姓名 char* get_num(); / 取得卡号 char* get_passwd(); / 取得密码 float get_money(); / 取得余额 void set_passwd(char pwd); / 设置密码 void set_money(float m); / 取钱private: char passwd8; / 用户密码 char name20; / 用户姓名 char num20; float money;/ * consumer类的成员函数 *#includefunction.h#includeconsumer:consumer(char Name

8、,char Num,float Money,char Password) strcpy(name,Name); strcpy(num,Num); money=Money; strcpy(passwd,Password);float consumer:get_money() return money;char* consumer:get_name() return name;char* consumer:get_num() return num;char* consumer:get_passwd() return passwd;void consumer:set_money(float m) m

9、oney-=m;void consumer:set_passwd(char pwd) strcpy(passwd,pwd);/ * ATM类的成员函数 *#include function.h#include #includevoid ATM:welcome() times=0; cout$ 欢迎使用ATM自动取款机! endl; char pwd8,num20,ch; int i=0; do i=0; coutendl请输入卡号:; do cin.get(ch); numi+=ch; while(ch!=n); numi-1=0; i=0; cout请输入密码:; do cin.get(ch

10、); pwdi+=ch; while(ch!=n); pwdi-1=0; if(!check_passwd(num,pwd) cout你输入的卡号或密码有误, 请重新输入endl; times+; else functionshow(); while(times3); lock(); bool ATM:check_passwd(char num,char pwd) if(strcmp(num,cnsm.get_num()=0&strcmp (pwd,cnsm.get_passwd()=0) return true; else return false;void ATM:functionshow

11、() int n; do coutendl请你输入相应的操作序号进行操作:endl; cout1) 修改密码 endl2) 取款 endl3) 查询余额 endl4) 退出系统 endl; cout; cinn; while(n4) cout请输入正确的操作序号!endl; cout; cinn; switch(n) case 1: change_passwd(); break; case 2: fetchmoney(); break; case 3: information(); break; case 4: exitATM(); break; while(true);void ATM:ch

12、ange_passwd() char pwd8,repwd8; times=0; do coutendlpwd; if(!check_passwd(cnsm.get_num(),pwd) times+; else break; while(times3); if(times=3) lock(); int t=0; do coutpwd; coutrepwd; if(t=strcmp(pwd,repwd)!=0) cout密码不一致, 请重新输入!endl; while(t!=0); cnsm.set_passwd(pwd); cout密码修改成功endl;void ATM:fetchmoney

13、() float m; char ch; do coutendl请输入取款金额:m; while(m=0) cout请输入正确金额endl; cout ; cinm; if(cnsm.get_money()-m0) cout对不起,你的余额不足!endl; else coutendl操作成功,请取钱!endl; cnsm.set_money(m); cout是否要继续该项操作:(Y/N) endl; cout ; cinch; while(ch!=n&ch!=N&ch!=Y&ch!=y) cout; cinch; while(ch=y|ch=Y);void ATM:information() coutendl; coutendl; cout 用户姓名:cnsm.get_name()endl; cout 卡号: cnsm.get_num()endl; cout 余额: cnsm.get_money()endl; coutendl;void ATM:lock() coutendl对不起,由于你的操作有误, 你的卡已经被没收! endl; exit(1);void ATM:exitATM() coutendl感谢你对本银行的支持, 欢迎下次光临!endl; cout请取卡endl; exit(0);

侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|