ATM自动取款机系统—详细设计说明书
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
文档名称:项目名称:
详细设计说明书ATM 自动取款机系统
编写:张恒友
审核:王旭
日期:2016年6月5日
院系:计算机学院
专业:计算机科学与技术
一.引言
1.1编写目的
根据《需求规格说明书》,在仔细考虑讨论之后,我们又进一步对《 ATM自动取款机系统》软件的功能划分、数据结构、软件总体结构进行设计,从而完成概要设计,作为软件详细设计的基础。
1.2项目背景
项目委托单位:计算机学院软件工程实验。
开发单位:班 ATM自动取款机系统项目组。
由于柜台常常会拥挤,排队的人很多,而且大多数的客户都是取款,存款等,而有些办理业务的需要一定的时间,这会使得一些只需要取款等的客户会有较长时间的等待。所以银行希望设计一个系统,能让客户在系统上进行简单的操作,比如存款、取款、查询余额、转账等。
1.3定义
ATM: Automatic Teller Machine,自动柜员机。
1.4参考资料
《计算机软件需求说明编制指南》
《计算机软件产品开发文件指南》
《ATM系统可行性分析报告》。
《软件设计与体系结构》
《软件工程——实践者的研究方法》
二.任务概述
2.1 目标
现如今, ATM在一定程度上存在很大的安全隐患,给用户造成很大的经济损失。为了解决这样的问题,我们小组提出了改进ATM自动取款机系统,使用户在操作过程中更加安全,放心,更便捷。
2.2 运行环境
硬件环境:
CPU: 1GHZ 及以上
内存: 1G 以上
硬盘: 20G 以上
软件环境:
操作系统: Microsoft Windows XP 或更高版本
数据库: Microsoft SQL Server 2005
Web服务器: Tomcat5.0 以上
支持浏览器: Internet Explorer 7.0 及其以上版本
开发环境: MyEclipse ,jdk ,Microsoft SQL Server 2005
2.3 条件与限制
随着科技的发展,人们生活水平的不断提高,高性能高效率高安全的产品越来越受到人们的欢迎。ATM 自动取款机是一种非常智能的机器,人们可以直接
和它交互,代替以前的手工操作,大大提高了银行的工作效率。同时也给广大用户带来了非常大的方便。由于 ATM自动取款机是和服务器是连网的,这就涉及到
安全的问题本系统能够有效地解决这个问题。但是本程序也使用户操作时间增加,在一定程度上增加了用户的抱怨率。
三.总体设计
3.1处理流程
主流程图:
用户流程:
存款流程:
进入欢迎界面
选择存款业务
选择存款金额
存款
显示余额
返回主页面或者退卡取款流程:
进入欢迎界面
选择取款服务
选择取款金额
取款
显示余额
选择退卡或继续服务
转账流程:
欢迎界面
选择转账服务
输入对方信息
显示对方信息
确定
输入转账金额
转账成功
转账失败退卡继续服务退卡继续服务查询流程
取消
返回欢迎界面
进入欢迎界面
选择查询服务
显示卡里金额
继续服务退卡
:
改密:
进入欢迎界面
选择更改密码业务
输入旧密码
错误
正确
输入新密码输入错误返
再输入一次新密码返回欢迎界面
修改失败,返
修改成功
回更改页面
3.2具体模块及代码实现
1.主菜单模块(含:存款、取款、转账、密码修改、查询余额)
存款:个人账户上的金额加上。
取款:个人账户上的金额减去。
转账:涉及到两个账户其实就是下标的不同金额一个减去一个加上。
密码修改:输入新密码、再次输入新密码判断两次密码是否相同在
用 strcpy ()函数将新密码当前账户下标元素密码成员
并且判断是否修改成功。
查询余额:就是从结构体数组里面调用存金额那个成员
欢迎模块:
定义一个函数void huanying(),利用for循环进行字符的输出。
void huanying()//定义函数
{
inti;
for(i=0;i<10;i++)//for循环
{
printf("\n\n\n\n\n\n\n\n");
printf("\t\t\t --------------------------\n");
printf("\t\t\t欢迎使用\n");
printf("\t\t\t --------------------------\n");
printf("\n\n\t\t希望此 ATM系统可以给您带来方便 !");
printf("\n\n\n\n\t\t\t\t正在进入 ");
shaohou();//等待系统响应
system("cls");
printf("\n\n\n\n\n\n\n\n");
}
}
用户模块:
在此模块,从 A,B,C 中选择出执行的操作服务,然后进入下一个模块。利用while 语句,定义的选择函数 char xuanze ,实现输出。
伪代码:
void main()//主函数
{
huanying();
system("cls");
while(1)
{
char xuanze;//定义函数
system("cls");
printf("\n\n\t欢迎使用 \n");
printf("\n\n\t请选择 :\n");
printf("\n\n\tA.开户服务 \n");
printf("\n\n\tB.登录服务 \n");
printf("\n\n\tC.退出。 \n");
printf("\n\n\t请选择: ");
scanf("%c",&xuanze);
switch(xuanze)
{
case'a':
case'A':kaihu();break;
case'b':
case'B':denglu();break;
case'c':
case'C':exit(0);
default:printf("\n\t您的选择错误 !");break;
}
}
}