- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
面向对象分析与设计 ATM系统分析与设计
ATM系统分析与设计
需求分析
一.总体要求:
1,ATM机要可以判断磁卡的类别,如果不是有效的磁卡则退卡;
2,可以在较快的时间内响应用户的请求,并针对相应的请求执行正确的操作;
3,当卡在ATM机内30秒内没有操作时,系统自动没收信用卡;
4,查自己的账户时应显示余额和可用余额,并显示ATM机里所拥有的现金面值,让用户可以做出正确的选择;
5,提取现金时提示用户输入取款金额并判断输入是否确,如果错误提醒用户并要求重新操作,正确则提醒用户收取现金;钞票在出钞机内30秒内没人取走,自动回收钞票;
6,转账汇款时让用户选择转账类型,要求用户输入转账账号并要求用户输入两次,以确保没有输入错误,在两次输入都正确的情况下,让用户输入转账金额,并作最后的确认。
7,进入修改密码界面后提醒用户输入新密码,并要求再次输入以确保密码统一无误,在确认后完成修改操作,并提醒用户新询密码生效;
8,对于错误的操作或者操作延时做出有效的处理。
二,系统要求:
要求用户一次取款数额不得大于2500元;
要求用户一天取款数额不得超过5000元;
要求用户连续输入错误密码次数不得超过3次。
三,系统性能要求:
要求反应时间不得大于10秒钟;
四:设计目标:
系统可以提供24小时不间断服务,操作简单,可以很方便为用户提供取款、转账/汇款、查询账户信息等服务。
模型分析
一:设计DFD图。
顶层DFD图:
(2)0层DFD图:
(3)1层DFD图:
取款子系统:
查询子系统:
转账子系统:
更改密码子系统:
二:组织结构设计
(1)系统结构
读卡机系统
(3)键盘输入子系统
认证子系统:
显示子系统:
出钞子系统:
打印子系统:
数据库子系统:
建立模型
一:建立基本系统模型图
二:建立序列图:
代码设计:
#includeiostream.h
class consumer;
class ATM
// ATM取款机
{
public:
ATM(consumer cn):cnsm(cn)
{
}
void welcome();
// 登陆界面
bool check_passwd(char n[],char pwd[]);
// 核对密码
void change_passwd();
// 修改密码
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_name();
// 取得姓名
char* get_num();
// 取得卡号
char* get_passwd();
// 取得密码
float get_money();
// 取得余额
void set_passwd(char pwd[]);
// 设置密码
void set_money(float m);
// 取钱
private:
char passwd[8];
// 用户密码
char name[20];
// 用户姓名
char num[20];
float money;
};
// * consumer类的成员函数 *
#includefunction.h
#includestring.h
consumer::consumer(char Name[],
char Num[],float Money,char Password[])
{
strcpy(name,Name);
strcpy(num,Num);
money=Mone
文档评论(0)