当前位置:文档之家› Java ATM自动取款机

Java ATM自动取款机

Java ATM自动取款机
Java ATM自动取款机

Java课程设计报告

项目:ATM自动取款机

姓名:

学号:10592127

班级:10级网络一班

分数:

项目说明

目录

第一部分、项目整体概述………………………………………………页第二部分、数据库信息描述……………………………………………页第三部分、自己承担部分的实验报告………………………………页第四部分、心得体会……………………………………………………页

一、项目整体概述

我们的ATN机系统设计的实现根据结构程序设计原理,将每个模块的功能用相应的标准语句表示出来。包括代码设计、数据库设计、用户界面设计、处理过程设计。代码设计是指把系统管理对象数字化或字符化,便于计算机的处理。遵照代码设计的原则:合理性、简明性、系统性、稳定性、可扩充性、标准化、便于识别和记忆。

数据库设计指对系统所采用的数据模式、子模式、应用程序、数据库等根据用户的具体要求进行分析和设计。它也是管理信息系统设计的重要组成部分。数据库设计的基本原则是尽可能提高数据组织的相对独立性,简化其结构,即用规范化方法设施数据存储的结构,提高数据的可维护性、完整性、一致性。通过收集和分析用户需求,确定了数据库要保存的信息。

我们这次实训课设计的ATM机,主要应用java图形用户界面开发的知识,主要界面有欢迎界面,登陆界面,选择业务界面和退出,其中选择业务界面又包括修改密码,取款服务和查询余额。能让人们通过我们的设计完成想要的操作。为人们带来方面。

(1)模拟ATM柜员机程序;

(2)欢迎界面点击Login(登录)跳到登陆界面,点击quit(退出)则退出。

(3)登陆界面包括输入卡号和密码,不正确时则不能进入提示没有该用户名称或密码错误,请核对后重新输入。当密码和用户名都正确时则进入选择服务界面。

(4)选择页面可以选择修改密码,查询余额,和取款3个服务。

(2)修改密码。当用户需要修改密码时,可以用这个功能,新密码不能为空,确定密码时不能为空,旧密码必须正确,且新密码和确定密码两次输入相同的情况下才可以成功修改密码。

(3)取款。用户根据自己需要取多少钱,点击自定义按钮输入要取的金额,每次取款金额为大于0的数就可以了,但取款金额不允许透支。还可以点击按钮进行取款,如果选择的金额大于自己账户的金额则提示金额不足。

(4)查询余额。用户需要知道自己账户还剩多少钱时,可以查询自己账户的余额。

实验流程图如下:

二、数据库信息描述

建立的数据库是根据代码的完成建立的其数据库为ATM,表名为guest。在表中建立id字段其类型为自动编号,并设置其为主键,用户名字段为gid,密码字段为pwd,金额字段为gmoney。在表中分别输入我的和组员信息。金额类型为数字。建立好数据库知道连接到程序中运行即可。

三、自己承担部分的实验报告

连接数据库现在控制面板管理工具中建立数据源

连接数据库代码为

import java.sql.*;

import java.io.*;

public class dataAccess

{private Connection conn;

private Statement stmt;

public dataAccess() //构造函数设置连接数据库

{try

{Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

String dburl ="jdbc:odbc:driver={Microsoft Access Driver (*.mdb)};DBQ=Data\\atm.mdb";

conn=DriverManager.getConnection(dburl);

stmt=conn.createStatement();

}

catch(Exception e1)

{System.out.println(e1.toString());} }

public ResultSet getData(String sqlstr)//返回查询的数据集

{try

{ResultSet rs=this.stmt.executeQuery(sqlstr);

return rs; }

catch(Exception e)

{ System.out.println(e.toString());

return null;

}}

public int getRowcount(String sqlstr)

{int i=0;

try

{ResultSet rs=this.getData(sqlstr);

while(rs.next()) i++;}

catch(Exception e)

{System.out.println(e.toString());

}

finally

{return i;

} }

public boolean exeSql(String sqlstr)//执行无返回的SQL语句

{try

{stmt.execute(sqlstr);

return true; }

catch(Exception e)

{ System.out.println(e.toString());

return false;}}

public void sleep(int second)

{try

{Thread th=new Thread();

th.sleep(second*1000);}

catch(Exception e)

{System.out.println(e.toString());

}}

protected void finalize()//析构函数

{try

{if(stmt!=null) stmt.close();

if(conn!=null) conn.close();}

catch(Exception e)

{}

} }

选择服务界面:

它是由取款,查询金额,和修改密码构成点击按钮的时候跳到相应的界面有四个按钮分别布局于东西南北四个方向,选择服务字放在中间。

选择服务页面代码:

public void showMenu()

{

PnlMenu=new Panel();

GridLayout gdo3=new GridLayout(4,3,4,3);

Label albl=new Label("请选择业务");

//albl.setBackground(Color.green);

albl.setAlignment(Label.CENTER);

a1=new Button("1、取款服务"); a2=new Button("2、查询余额");

a3=new Button("3、修改密码"); a4=new Button("4、退出");

a1.addActionListener(this); a3.addActionListener(this);

a2.addActionListener(this); a4.addActionListener(this);

PnlMenu.setLayout(gdo3);

PnlMenu.add(albl); PnlMenu.add(a1);

PnlMenu.add(a2); PnlMenu.add(a3);

PnlMenu.add(a4);

a1.setSize(200,200);

a2.setSize(600,200);

a3.setSize(200,200);

a4.setSize(600,200);

albl.setSize(200, 200);

a1.setFont(new Font("楷体",Font.BOLD,18));

a2.setFont(new Font("楷体",Font.BOLD,18));

a3.setFont(new Font("楷体",Font.BOLD,18));

a4.setFont(new Font("楷体",Font.BOLD,18));

albl.setFont(new Font("楷体",Font.BOLD,24));

albl.setForeground(Color.red);

PnlMenu.setLayout(new BorderLayout());

PnlMenu.add(a1,BorderLayout.WEST);

PnlMenu.add(a4,BorderLayout.SOUTH);

PnlMenu.add(a2,BorderLayout.NORTH);

PnlMenu.add(a3,BorderLayout.EAST);

PnlMenu.add(albl,BorderLayout.CENTER);

}

用于点击按钮跳转到页面代码:

if(e.getSource()==a1)//进入取款界面

{

clt.show(fram,"Getmoney");

return;

if(e.getSource()==a2)//进入余额查看界面

{

float mleft=act.queryBalance(gid);

lbleft.setText("帐号余额为:¥ "+mleft);

lbleft.setFont(new Font("楷体",Font.BOLD,15));

clt.show(fram,"Queryleft");

return;

}

if(e.getSource()==a3)//进入密码修改界面

{

clt.show(fram,"Chgpwd");

return;

}

取款页面可以根据想要去的金额去点击按钮取钱,也可以输入自定义金额取钱,但两种方法都不能透支。

取款页面代码:

public void showGetMoney()

{

PnlGetmoney=new Panel();

GridLayout gdo4=new GridLayout(4,2);

PnlGetmoney.setLayout(new BorderLayout());

Label blbl=new Label("请选择取款金额");

blbl.setFont(new Font("楷体",Font.BOLD,24));

msg3=new Label("");

p1=new Panel();

b1=new Button("100"); b2=new Button("500");

b3=new Button("1000");b4=new Button("3000");

b5=new Button("5000");b6=new Button("自定义");

b1.setFont(new Font("楷体",Font.BOLD,15));

b2.setFont(new Font("楷体",Font.BOLD,15));

b3.setFont(new Font("楷体",Font.BOLD,15));

b4.setFont(new Font("楷体",Font.BOLD,15));

b5.setFont(new Font("楷体",Font.BOLD,15));

b6.setFont(new Font("楷体",Font.BOLD,15));

b1.addActionListener(this); b5.addActionListener(this);

b2.addActionListener(this); b6.addActionListener(this);

b3.addActionListener(this);

b4.addActionListener(this);

b7=new Button("返回");

b7.setFont(new Font("楷体",Font.BOLD,15));

b7.addActionListener(this);

b8=new Button("退出");

b8.setFont(new Font("楷体",Font.BOLD,15));

b8.addActionListener(this);

Panel bpnl1=new Panel();

bpnl1.add(blbl);

Panel bpnl3=new Panel();

bpnl3.add(b7); bpnl3.add(b8);

Panel bpnl2=new Panel();

bpnl2.setLayout(gdo4);

bpnl2.add(b1); bpnl2.add(new Label()); bpnl2.add(b4);

bpnl2.add(b2); bpnl2.add(msg3); bpnl2.add(b5);

bpnl2.add(b3); bpnl2.add(new Label()); bpnl2.add(b6);

bpnl2.add(new Label()); bpnl2.add(bpnl3); bpnl2.add(new Label());

PnlGetmoney.add(bpnl1,BorderLayout.NORTH);

PnlGetmoney.add(bpnl2,BorderLayout.CENTER);

PnlGetmoney.add(bpnl3,BorderLayout.SOUTH);

}

public boolean reduceMoney(String tgid,float money)

{

String ssql;

if(this.queryBalance(tgid)

ssql="update guest set gmoney=gmoney-"+money+" where gid='"+tgid+"'";

if(das.exeSql(ssql)) return true; //扣款成功

else return false; //扣款未成功

}

protected void finalize()//析构函数

{

das.finalize();

}

}

点击对应按钮跳到相应的页面代码机取钱过程代码:

if(e.getSource()==b1)//执行取款100操作

{

if(!act.reduceMoney(gid,100))

lblMsg.setText("余额不足!!");

else

{

lblMsg.setText(mce.printBill(100,gid,act.queryBalance(gid)));

}

nstate=3;

clt.show(fram,"Msg");

return;

}

if(e.getSource()==b2)//执行取款500操作

{

if(!act.reduceMoney(gid,500))

lblMsg.setText("余额不足!!");

else

{

lblMsg.setText(mce.printBill(500,gid,act.queryBalance(gid)));

}

nstate=3;

clt.show(fram,"Msg");

return;

}

if(e.getSource()==b3)//执行取款1000操作

{

if(!act.reduceMoney(gid,1000))

lblMsg.setText("余额不足!!");

else

{

lblMsg.setText(mce.printBill(1000,gid,act.queryBalance(gid)));

}

nstate=3;

clt.show(fram,"Msg");

return;

}

if(e.getSource()==b4)//执行取款3000操作

{

if(!act.reduceMoney(gid,3000))

lblMsg.setText("余额不足!!");

else

{

lblMsg.setText(mce.printBill(3000,gid,act.queryBalance(gid)));

}

nstate=3;

clt.show(fram,"Msg");

return;

}

if(e.getSource()==b5)//执行取款5000操作

{

if(!act.reduceMoney(gid,5000))

lblMsg.setText("余额不足!!");

else

{

lblMsg.setText(mce.printBill(5000,gid,act.queryBalance(gid)));

}

nstate=3;

clt.show(fram,"Msg");

return;

}

if(e.getSource()==b6)//进入手动输入金额取款界面

{

y2.setVisible(true);

msgstr.setText("请输入金额");

msgstr.setFont(new Font("楷体",Font.BOLD,15));

ta.setText("");

msghint.setText("");

clt.show(fram,"input");

return;

}

自定义取款:

if((msgstr.getText().indexOf("金额"))>0)//手动输入金额操作

{

try

{

gmoney=Float.parseFloat(ta.getText());

if(act.reduceMoney(gid,gmoney))

{

lblMsg.setText(mce.printBill(gmoney,gid,act.queryBalance(gid)));

nstate=3;

}

else

{

lblMsg.setText("余额不足!!");

lblMsg.setFont(new Font("楷体",Font.BOLD,15));

nstate=3;

}

}

catch(NumberFormatException e2)//输入非法的金额

{

lblMsg.setText("您输入的金额错误!!!");

nstate=2;

}

finally

{

clt.show(fram,"Msg");

return;

}

}

}

if(e.getSource()==a4 || e.getSource()==b8 || e.getSource()==c2 || e.getSource()==d2 ||

e.getSource()==x1 || e.getSource()==y1 || e.getSource()==quit)//退出系统

{

this.gid="";

this.pwd="";

act.finalize();

dac.finalize();

rcd.exitCard();

}

查询界面;

public void showQueryLeft()

{

PnlQueryleft=new Panel();

PnlQueryleft.setLayout(new BorderLayout());

Label clbl=new Label("帐户余额");

clbl.setFont(new Font("楷体",Font.BOLD,24));

clbl.setAlignment(Label.CENTER);

lbleft=new Label("");

Panel cpnl1=new Panel();

cpnl1.add(lbleft);

Panel cpnl2=new Panel();

c1=new Button("返回");

c1.setFont(new Font("楷体",Font.BOLD,15));

c1.addActionListener(this);

c2=new Button("退出");

c2.setFont(new Font("楷体",Font.BOLD,15));

c2.addActionListener(this);

//cpnl2.add(edok);Button edok=new Button("确定");

cpnl2.add(c1); cpnl2.add(c2);

PnlQueryleft.add(clbl,BorderLayout.NORTH);

PnlQueryleft.add(cpnl1,BorderLayout.CENTER);

PnlQueryleft.add(cpnl2,BorderLayout.SOUTH);

}

public float queryBalance(String gid)

{

ResultSet rs;

String ssql="select * from guest where gid='"+gid+"'";

float balance=0;

try

{

rs=das.getData(ssql);

rs.next();

balance=rs.getFloat("gmoney");

}

catch(Exception e)

{

System.out.println(e.toString());

}

finally

{

return balance;

}

}

系统提示界面非法操作或操作成功的时候跳转到此界面代码:

public void showHint()

{

PnlMsg=new Panel();

PnlMsg.setLayout(new BorderLayout());

Label elbl=new Label("系统提示");

elbl.setFont(new Font("楷体",Font.BOLD,24));

elbl.setAlignment(Label.CENTER);

lblMsg=new Label("");

Panel epnl=new Panel();

epnl.add(lblMsg);

Panel epnl2=new Panel();

epnl2.add(back); epnl2.add(quit);

PnlMsg.add(elbl,BorderLayout.NORTH);

PnlMsg.add(epnl,BorderLayout.CENTER);

PnlMsg.add(epnl2,BorderLayout.SOUTH);

}

截图:

四、心得体会

在这次的期中课程设计中,我主要运用了Java语言的图形用户界面设计、异常处理、Swing控件,输入输出等,综合运用了Java语言。我深刻感受到了面向对象语言中类库的强大功能,掌握了运用Java中的类实现基本功能,在完成设计的同时培养了自己的编程思维,为以后做别的设计打下基础。此次实训基本把我们本学期所学的内容进行综合应用,让我们更加容易简单的了解体验到了未来工作的一般状况,锻炼了我的实际操作能力,同时也在一定程度上增加了同学们对Java语言学习的信心,一个简单的程序,能通过运用自己所学也是可以实现的,让我们不在对编程感觉那么神秘。这次实训课我们是使用java编写简单的ATM登录系统的设计,通过这次的实训课我不仅复习了这学期的java编程设计基础知识,并且增强了我对java语言的领悟和应用,同时也更深刻的懂得了学好学会了并不是代表能够真正的在实践中运用得流畅,这次实践给了我们一个既动手又动脑独立实践的机会,但其中也包含了自我寻找资料的能力和同学间的合作能力。这个系统将理论和实践相结合,提高自己的分析、解决问题的能力,并且让我明白了计算机的技术一定要从实际出发才能真正的提高自己的能力;团队合作与交流很重要,“团结就是力量”在本次项目开发中真的体会得到,在做项目时,小组成员要知道本小组所做项目的基本构想框架,要做什么、实现什么。如果有自己的想法就要和自己的伙伴进行交流。

ATM自动取款机系统详细设计说明书

ATM系统需求分析设计与改进

目录 1.引言 (1) 1.1编写目的 (1) 1.2定义 (1) 2.总体设计 (1) 2.1需求概述 (1) 2.2软件结构 (2) 3.基于UML的ATM自动取款机系统分析设计 (2) 3.1 CIM-1定义业务流程 (2) 3.2 CIM-2 分析业务流程 (4) 3.2.1 客户取钱业务流程活动图. (4) 3.2.2 客户转账业务流程活动图. (4) 3.2.3 客户修改密码业务用例活动图 (5) 3.2.4 客户查询余额业务用例活动图 (6) 3.3 CIM-3定义系统范围. (8) 3.3.1 客户包下可启动的系统用例 (8) 3.3.2 银行管理员包下的系统用例图 (8) 3.2.3定时启动者包下的系统用例 (9) 3.4 PIM-1分析业务流程 (9) 3.4.1 SUC001-取款系统用例业务 (9) 3.4.2 SUC002-转账业务系统用例 (10) 3.4.3 SUC003- 修改密码业务系统用例 (11) 3.4.4 SUC004- 查询余额业务系统用例 (12) 3.5 PIM-2 分析业务规则状态图(取款) (13) 4.程序描述 (14) 4.1 取款子系统 (17) 4.1.1功能 (17) 4.1.2性能 (17) 4.1.3输入项目 (17) 4.1.4输出项目 (18) 4.1.5算法 (18) 4.1.6程序逻辑 (19) 4.1.7接口 (19) 3.1.8存储分配 (20) 3.1.9限制条件 (20) 3.1.10测试要点 (20) 4.2存款子系统 (20) 4.2.1功能 (20) 4.2.2性能 (20) 4.2.3输入项目 (20) 4.2.4输出项目 (20) 4.2.5算法 (21)

ATM自动取款机—需求分析说明书

需求分析说明书ATM自动取款机系统 成员:王旭缪宇飏张伟 张恒友邓会周舟

目录 1.引言 (1) 1.1编写目的 (1) 1.2项目背景 (1) 1.3术语与缩写解释 (1) 1.4参考资料 (2) 2.产品介绍 (2) 3. 产品面向的用户群体 (2) 4. 条件与限制 (2) 5.数据描述 (3) 5.1静态数据 (3) 5.2动态数据 (4) 5.3数据词典 (5) 5.4数据采集 (6) 6.功能需求 (7) 6.1功能划分 (7) 6.2功能描述 (9) 7.性能需求 (10) 7.1数据精确度 (10) 7.2时间特性 (10) 7.3适应性 (10) 8.运行需求 (11) 8.1用户界面 (11) 8.2软件接口 (11) 8.3故障处理 (12) 9.其它需求 (12)

1.引言 1.1编写目的 ATM自动取款机系统是银行业务流程过程中十分重要且必备的环节之一,在银行业务流程当中起着承上启下的作用,其重要性不言而喻。但是,目前许多银行在具体的一些业务流程处理过程中仍然使用手工操作的方式来实施,不仅费时、费力,效率低下,而且无法达到理想的效果。为此,我们在明确该软件需求的基础上,安排项目规划与进度、组织软件开发与测试,撰写本文档。本文档针对上述问题,采用软件工程的开发原理,依据软件流程过程规范,按照需求分析,概要设计,程序编码,软件应用等过程,开发了这个系统。 本文档供项目经理、设计人员、开发人员、客户参考。 1.2项目背景 待开发项目名称:ATM自动取款机 项目开发者:王旭缪宇飏张伟 张恒友邓会周舟 项目背景:在市场经济的蓬勃发展和人们日益繁忙的条件下,现有的银行系统往往需要客户在办理手续时等待很长的时间,这不仅会浪费很多宝贵的 时间,也会使得银行的业务人员十分的繁忙,需要很大的人力和财力。 基于这样的情况,ATM 取款机系统的开发就显的十分的重要!它可以 减少银行的业务处理压力,尽量节省人们的时间,并且可以有效解决 用户信息和资金信息的繁杂问题。 1.3术语与缩写解释 缩写、术语解释

ATM自动取款机系统概述

AT M自 动取 款机 系统 概述 1 1.1 ATM自动取款机系统概述 ATM自动取款机是由计算机控制的持卡人自我服务型的金融专用设备。本节主要简单介绍ATM自动取款机系统及其开发流程。 11.1.1 ATM自动取款机简介 ATM是英文AutomaticTeller Machine的缩写,即自动取款机的意识,图11 -1是一个ATM自动取款机的示意图。ATM是最普遍的自助银行设备,可以提供最基本的银行服务之一,即出钞交易,有些全功能的产品还可以提供信封存款业务。在ATM自动取款机上也可以进行账户查询和改密的业务。作为自助式金融服务终端,除了提供金融业务功能之外,ATM自动取款机还具有维护、测试、事件报告、监控和管理等多种功能。 11.1.1 ATM自动取款机简介 ATM是英文Automatic Teller Machine的缩写,即自动取款机的意识,图1 1-1是一个ATM自动取款机的示意图。ATM是最普遍的自助银行设备,可以提供最基本的银行服务之一,即出钞交易,有些全功能的产品还可以提供信封存款业务。在ATM自动取款机上也可以进行账户查询和改密的业务。作为自助式金融服务终端,除了提供金融业务功能之外,ATM自动取款机还具有维护、测试、事件报告、监控和管理等多种功能。 11.1.2 ATM自动取款机的开发流程

ATM自动取款机系统的开发流程遵循实时系统的统一开发过程,主要生命周期包括系统分析、概要设计、详细设计和实现与测试,采用的软件开发方法为迭代式。开发流程详细说明如下。 l 系统分析。主要标识系统涉及的用例,以及为每个用例创建的事件流。而且,还需要定义初始功能测试用例,作为检查最后实现是否正确和完备的工具。系统分析还需要显示用例隐含的类,利用分析类图进行文档化处理。 l 概要设计。使用CRC卡,定义每个类的职责。首先通过全局类图定义设计的静态结构,然后定义设计的动态结构,使用状态图定义主要 控制类的动态行为,为主要用例创建交互图。 l 详细设计。包括为每个类定义属性和操作,利用包图对相关类进行组织。 l 代码生成。利用代码生成工具将设计转换为Java代码,并对代码进行详细处理,编写辅助代码,完成系统实现,并能够对设计进行模拟,能够作为Applet运行,能够在浏览器中查看可执行版本。 需要注意的是,本实例采用实时Java作为最后的实现语言,创建了一个ATM自动取款机的模拟程序。模拟真实ATM机的行为,还需要JDK的支持。 11.1.3ATM自动取款机系统初始需求描述 下面是一个ATM自动取款机系统初始需求描述示例,供读者参考。 “ATM自动取款机系统初始需求规格说明书” 1.引言 1.1 目的 本文档描述了自动取款机系统的软件需求,支持ATM的设计人员、开发人员和维护人员。 1.2 范围 ATM的功能要求支持计算机银行网。 1.3概述 文档剩余部分组织如下:本节后续部分将给出一些重要术语的定义;第2部分将包含对ATM的一些基本描述;第3部分表示特定的功能需求、外部接口和性能需求。 1.4 定义 l 账号。在银行中,事务应用的单个账号。账号可以为多种类型,但是至少包括支票和存款。每个顾客可以拥有多个账号。

ATM自动提款机使用指南

ATM自动提款机使用指南 1、ATM(自动提款机)的功能 ATM自动提款机可以提供的服务项目包括取款、查询和更改密码 2、哪些银行卡可以在ATM上提款 凡属于"银联"范围的信用卡和借记卡均可在ATM上取款、查询和更改密码 具体银行包括:中国银行、工商银行、农业银行、建设银行、交通银行、邮政储汇、中信实业银行、北京商业银行、民生银行、招商银行、华夏银行、光大银行、上海浦东发展银行、广东发展银行、福建兴业银行、深圳发展银行。 注意:除中国银行的ATM外,使用中行的信用卡在其他银行卡的ATM提款,每笔收取2元人民币手续费,查询和更改密码不收费。 3、ATM的工作时间 全天:24小时; 全年:365天。 4、如果输错密码,ATM将卡"吞"掉如何处理 最新升级的中行ATM设备,密码输错3次后会自动通知银行在1个工作日内将您的帐户冻结,待第2个工作日再行自动开放,不会将您的信用卡"吞"掉。 如此,既保证了您的帐户的安全,在您丢失卡时,为您提供了1天的挂失时间,同时也免去了由于误操作造成"吞"卡,使您往返银行。如果因其他原因致使您的银行卡被"吞" ,请保存好打印单据,并拨打以下电话与银行联系,一般可以于次日凭身份证从该ATM机的管理行取回: 注意:如何避免ATM"吞" 卡。使用不当仍可以造成ATM因机械原因而"吞" 卡。在ATM 将您的银行卡推出时,如您需要继续服务,请将银行卡抽出,再送入插卡口,不要直接将卡推入,可以避免ATM误操作将您的卡"吞" 掉。 5、ATM取款限额和手续费 每天提款限额普通卡3000元,金卡5000元,每笔提款限额2500元。本地中行ATM使用中行卡提款不收手续费,使用其他银行卡取款每笔扣2元手续费。 6、ATM的使用安全 保管好密码,输入密码时,不要有其他人在身边; 保管好银行卡,服务完成后,立即将卡取出并存放好,发现遗失,立即挂失; 保管好打印单据,不要随意丢弃,如不愿保存,可携带到办公室或家里再行销毁。如您有任何其他疑问或问题,请向中国银行咨询:95566 感谢大家使用联名卡! ATM自动提款机简介 自动取款机又称ATM,就是自动柜员机,因大部分用于取款,又称自动取款机。它是一种高度精密的机电一体化装置,利用磁性代码卡或智能卡实现金融交易的自助服务,代替银行

ATM自动取款机C语言源代码

//ATM自动取款机C语言源代码 #include #include void main() { int choice(int n,int money); int balance=1000000; int password,m=0; int n=0; printf("\n\n\n\n\n\n\n\n"); printf(" 欢迎使用ATM自动取款机!\n"); printf(" welcome to this system \n\n"); printf(" 按回车键继续\n"); printf(" press Enter to continue\n"); getchar(); system("cls"); do { if (n==0) { printf("\n\n\n\n\n\n\n\n\n"); printf(" 请输入您的密码\n"); printf(" please input your password\n"); } else { printf(" 您输入的密码有误,请重新输入:\n"); printf(" The password is wrong,please input again:\n"); } scanf("%d",&password); n++; } while (password!=123456&&n!=3); system("cls"); if (password==123456) do {

printf("\n\n\n\n\n\n\n\n"); printf(" 欢迎使用A TM自动取款机!\n"); printf(" welcome to this system of ATM! \n"); printf(" ********************************\n"); printf(" 1.取款Debit Withdrawal \n"); printf(" 2.存款Credit Deposit\n"); printf(" 3.余额查询Seek\n"); printf(" 4.退出Exit\n"); printf(" ********************************\n"); choice(m,balance); printf(" 继续请输入Y\n"); printf(" If you want to continue ,Press Y\n"); getchar(); } while(getchar()=='Y'); else { printf("\n\n\n\n\n\n\n\n"); printf(" 您好,由于您三次输入密码有误,我们将没收您的卡,请您在一周内持有效证件于银行办理取卡手续.\n"); printf( " your password is wrong, we will sequestrate you card,please take you effective papers come to bank get your card back\n "); } } int choice(int n,int money) { int m=0; static int flag=1000000; printf(" 请输入你的选择\n"); printf(" please choice: \n "); scanf("%d",&n); system("cls"); if(n==1) { printf("\n\n\n\n\n\n\n\n"); printf(" 请输入取款金额:\n"); printf(" please input what you want to debit:"); scanf("%d",&m); flag=flag-m; printf("\n"); printf(" 请稍后...\n"); printf(" please wait...\n\n"); printf(" 您的余额为balance:%d \n\n\n ",flag); printf(" 交易成功!\n");

ATM自动取款机系统需求分析

《软件工程》结课论文 题目:ATM自动取款机系统的需求分析 / 专业:XXXXXXXXXXXXXXXX 班级:XX XX XX XX X XX 姓名:XX XX XX 学号:XXXXXXXXXXXXX XXXX 年XX 月XX 日 \ 目录

1.引言 ...................................................................................................................... 错误!未定义书签。 编写目的 ............................................................................................................ 错误!未定义书签。 项目背景 ............................................................................................................ 错误!未定义书签。 定义 .................................................................................................................... 错误!未定义书签。2.任务概述 .............................................................................................................. 错误!未定义书签。 目标 .................................................................................................................... 错误!未定义书签。 运行环境 ............................................................................................................ 错误!未定义书签。 条件与限制 ........................................................................................................ 错误!未定义书签。。 3.数据描述 .............................................................................................................. 错误!未定义书签。 静态数据 ............................................................................................................ 错误!未定义书签。 动态数据 ............................................................................................................ 错误!未定义书签。 数据库介绍 ........................................................................................................ 错误!未定义书签。 系统E-R图 .................................................................................................... 错误!未定义书签。 数据词典 ............................................................................................................ 错误!未定义书签。 数据采集 ............................................................................................................ 错误!未定义书签。4.功能需求 .............................................................................................................. 错误!未定义书签。 功能划分 ............................................................................................................ 错误!未定义书签。 功能描述 ............................................................................................................ 错误!未定义书签。 " 功能要求 .......................................................................................................... 错误!未定义书签。5.性能需求 .............................................................................................................. 错误!未定义书签。 数据精确度 ........................................................................................................ 错误!未定义书签。 时间特性 ............................................................................................................ 错误!未定义书签。 适应性 ................................................................................................................ 错误!未定义书签。6.其它需求 .............................................................................................................. 错误!未定义书签。

自动取款机系统.doc

某银行自动取款机系统 1.1自动取款机系统的需求分析 需求分析是软件系统开发的开始阶段,也是非常关键的一个阶段,“好的开始是成功的一半”,在软件系统开发中,这个道理仍然适用,捕获完整正确的系统需求,对系统后期的开发阶段顺利进行至关重要。在面向对象系统开发方法中,用例建模是捕获系统需求的一个有效方法。 1.1.1系统的用户需求描述 某银行拟开发一个自动取款机系统,是一个由自动取款机(以下简称ATM)、银行的中央计算机、分行计算机及柜员终端组成的网络系统。总行拥有多台ATM,分别设在市区的各主要街道上。每个分行负责提供分行计算机和柜员终端。柜员终端设在分行营业厅及分行下属的各个储蓄所内。在银行拥有账户的储户有权申请领取银行现金卡,银行卡上有分行代码和卡号。使用银行现金卡用户可以通过自动取款机系统访问自己的账户。目前仅限于使用银行现金卡在ATM上提取现金(即取款)和查询有关自己账户的信息,还可以使用ATM 办理转账事务,实现同行账户之间的转账业务。 在自动取款机系统中,当用户把银行卡插入ATM之后,ATM就与用户交互,以获取有关这次事务的信息,并与中央计算机交换关于这次事务的信息。首先,ATM要求用户输入密码,接下来ATM把从

这张卡上读到的信息以及用户输入的密码传给中央计算机,请求中央计算机核对这些信息并处理这次事务。中央计算机根据卡上的分行代码确定这次事务与分行的对应关系,并且委托相应的分行计算机验证用户密码。如果用户输入的密码是正确的,ATM就要求用户选择事务类型,包括取款、查询、转账等。若密码输入3次都不正确,ATM 就会吞掉银行卡,并退出系统。 当用户选择取款时,ATM请求用户输入取款金额(每次最多只能取2500元,每日每个账户只能支取20000元)。由ATM读取金额信息,并把相应传送到银行。银行对ATM送来的信息与银行账号上的信息进行比较。如果账户余额足够,则银行传送确认信息到ATM,ATM从现金出口吐出现金,并且打印出收据交给用户,然后顾客取出卡和现金;如果账户余额不足,则给出相应的提示信息,ATM退出系统,退出用户的银行卡。 当用户选择查询时,ATM与银行计算机进行通信,银行计算机提取账户信息,并传递给ATM进行显示,并且打印数据交给用户,ATM退出系统,退出用户的银行卡。 当用户选择转账时,ATM请求用户输入转入的目的账户和转账金额,由ATM读取和金额信息,并把相应信息传送到银行。银行对ATM送来的信息与银行账号上的信息进行比较。如果目的账户合法,并且账户余额足够,则银行传送确认信息到ATM,并且打印收据交给用户,然后顾客取出卡,退出系统;退出用户的银行卡。 银行的自动取款机系统示意图如下图所示:

ATM自动取款机系统的分析与设计方案

ATM自动取款机系统的分析与设计 需求说明 第一部分引言 1.1编写目的 本文档描述了自动取款机系统的软件需求。 1.2适用范围 ATM的功能要求支持计算机银行网。 1.3背景 ATM自动提款机系统。ATM自动取款机是由计算机控制的持卡人自我服务型的金融专用设备。ATM是英文Automatic Teller Machine的缩写。ATM是最普遍的自助银行设备,可以提供最基本的银行服务之一,即出钞交易,有些全功能的产品还可以提供信封存款业务。在ATM自动取款机上也可以进行账户查询、修改密码和转账的业务。作为自助式金融服务终端,除了提供金融业务功能之外,ATM自动取款机还具有维护、测试、事件报告、监控和管理等多种功能。 ATM自动取款机系统,是一个有终端机,A TM系统,数据库组成的应用系统。系统功能有用户在ATM上提取现金、查询账户余额、修改密码及转账功能。 ATM自动取款机系统向用户提供一个方便、简单、及时、随时随地可以随心所欲存取款的互联的现代计算机化的网络系统。可以大大减少工作人员,节约人力资源的开销,同时由于手续程序减少也可以减轻业务员的工作负担,有效地提高了整体的工作效率和精确度。减少了用户办理业务的等待时间;用户可以随时随地可以随心所欲存取款,并且操作简单易懂;用户还可以选择在柜台办理业务或自己在自动提款机和自动取款机办理业务。第二部分任务概述 2.1目标 系统功能实现用户在A TM上提取现金、查询账户余额、修改密码及转账功能。 2.2用户的特点 本系统功能齐全,交互界面简单便捷,适用社会广大人群,且能满足用户安全性需求。

2.3假定和约束 本系统不具备语音提示功能,不能为盲人等群体提供服务。 第三部分需求规定 3.1对功能的规定 3.1.1系统功能关系图 用例图: 3.1.2系统功能概述 ATM自动取款机系统相关的主要对象有: 用户:使用ATM自动取款机进行现金交易。进行取款、查询余额、设置密码、转账等操作。 系统:对用户的需求进行接收,通过与数据库的交互,根据对用户应用服务的响应,更新数据库中用户的信息。 数据库:对用户的所有信息进行存储更新。 取款功能: 用户按照系统输入要求输入取款金额即可取出相应金额的现金。 查询余额功能: 用户可以查看账户所剩现金余额。

atm自动取款机系统项目开发计划

a t m自动取款机系统项 目开发计划 标准化管理处编码[BBX968T-XBB8968-NNJ668-MM9N]

课程设计 题 目:A T M 自动取款机系统 —项目开发计划 学生姓名: 学 院:信息工程学院 系 别:计算机系 专 业: 班 级: 指导教师: 2011年7月15日 目录 学校代码: 10128 学 号:5038 5052

1.引言 编写目的 ATM机管理系统是银行业务流程过程中十分重要且必备的环节之一,在银行业务流程当中起着承上启下的作用,其重要性不言而喻。但是,目前许多银行在具体的一些业务流程处理过程中仍然使用手工操作的方式来实施,不仅费时、费力,效率低下,而且无法达到理想的效果。然而ATM自动取款功能不带为银行节省大量财力人力,还为广大城市用户带来便捷。为明确软件需求、安排项目规划与进度、组织软件开发与测试,撰写本文档,本文针对上述问题,采用软件工程的开发原理,依据软件流程过程规范,按照需求分析,概要设计,程序编码,软件应用等过程,开发了这个系统。本文档供项目经理、设计人员、开发人员参考。 项目背景 待开发项目名称:ATM自动取款机系统的分析与设计 项目提出者:ATM机系统是应呼和浩特建设银行网络建设和改造需要,为客户提供方便、迅速、便捷的自动取款业务提出了ATM机自动取款系统设计方案。 项目开发者:李向南朱学雷赵中军刘英杰 定义 专业术语与缩略词: 帐号:在银行中,事物应用的单个帐号。帐号可以为多种类型,但是至少包括支票和存款。每个顾客可以拥有多个帐号。 客户:拥有银行的一个或多个帐号的人。可以是一个人或多个人,或者是公司。相同的人,拥有不同的银行帐号被认为是不同的落户。

ATM自动取款机系统——项目开发计划

课程设计 题 目:AT M 自动取款机系统 (项目开发计划) 学生姓名: 学 院: 系 别: 专 业:软件工程 班 级:软件09-1班 指导教师: 2012年7月13 日

目录 1.引言 (1) 1.1编写目的 (1) 1.2项目背景 (1) 1.3定义 (2) 1.4参考资料 (2) 2.项目概述 (2) 2.1工作内容 (2) 2.2条件与限制 (4) 2.3产品 (4) 2.3.1程序 (4) 2.3.2文档 (4) 2.4运行环境 (5) 2.5服务 (5) 2.6验收标准 (5) 3.实施计划 (5) 3.1任务分解 (5) 3.2进度 (6) 3.3预算 (6) 3.4关键问题 (6) 4.人员组织及分工 (7) 5.交付期限 (7) 6.专题计划要点 (7) 6.1测试计划 (7) 6.2质量保证计划 (8) 6.3系统安装计划 (8)

1.引言 1.1编写目的 ATM机管理系统是银行业务流程过程中十分重要且必备的环节之一,在银行业务流程当中起着承上启下的作用,其重要性不言而喻。但是,目前许多银行在具体的一些业务流程处理过程中仍然使用手工操作的方式来实施,不仅费时、费力,效率低下,而且无法达到理想的效果。然而ATM自动取款功能不带为银行节省大量财力人力,还为广大城市用户带来便捷。为明确软件需求、安排项目规划与进度、组织软件开发与测试,撰写本文档,本文针对上述问题,采用软件工程的开发原理,依据软件流程过程规范,按照需求分析,概要设计,程序编码,软件应用等过程,开发了这个系统。本文档供项目经理、设计人员、开发人员参考。 1.2项目背景 待开发项目名称:ATM自动取款机系统的分析与设计。 委托单位:呼和浩特建设银行 开发单位: 主管部门: 用户:呼和浩特建设银行 产品的所有权:呼和浩特建设银行 项目开发者: 项目背景:在市场经济的蓬勃发展和人们日益繁忙的条件下,现有的银行系统往往需要客户在办理手续时等待很长的时间,这不仅会浪费很多宝贵的 时间,也会使得银行的业务人员十分的繁忙,需要很大的人力和财力。 基于这样的情况,ATM 取款机系统的开发就显的十分的重要!它可以 减少银行的业务处理压力,尽量节省人们的时间,并且可以有效解决 用户信息和资金信息的繁杂问题。

ATM自动取款机系统

目录 1.系统概述 (2) 2.需求分析 (2) 3.用例模型 (3) 4.概念模型 (5) 5.行为模型 (6) 6.对象模型 (8) 7.架构分析与设计 (9) 8.数据模型 (11) 9.部署模型 (12) 参考文献 (14) 总结 (15)

一、系统概述 ATM是英文Automatic Teller Machine的缩写,即自动取款机的意识,ATM是最普遍的自助银行设备,可以提供最基本的银行服务之一,即出钞交易,有些全功能的产品还可以提供信封存款业务。在ATM自动取款机上也可以进行账户查询和改密的业务。作为自助式金融服务终端,除了提供金融业务功能之外,ATM自动取款机还具有维护、测试、事件报告、监控和管理等多种功能。 二、需求分析 在ATM机系统中,要为每名用户建立一个帐户,并给他们发放银行卡(银行卡可以提供卡号,用户姓名),账户中存储用户的个人信息,存款信息,取款信息和余额信息,持有银行卡的用户可以通过ATM自动取款机系统进行存款,取款,查询余额的操作。 在使用自动取款机时,需要插入用户的银行卡,并根据系统界面显示输入密码,由系统判断该帐户是否有效(帐户密码是否正确),若密码输入不正确,则再次显示让用户输入密码,若3次输入的密码均不正确,系统自动退出服务,若密码输入正确,则系统进入选择服务类型界面:1.存款,2.取款,3.查询余额,然后系统根据服务类型进行相应操作,若选择取款操作,系统确认取款请求以后,会询问取款数额,系统界面显示输入数额请求,用户输入取款数额,系统接到信息后发出确认取款请求,用户选择确认,系统选择确认后会向点钞机发出钞请求,然后点钞机出钞,系统向用户发出去钞请求,用户取钞以后,系统记录此次取款并自动计算余额,更新帐户信息,然后系统界面进入是否选择继续服务界面,用户点击否,然后系统退出银行卡并提醒用户取卡,用户取走银行卡,至此,取款业务完成。若选择存款业务,系统确认存款请求以后,系统界面进入请放入存款界面,然后用户将存款放入存款口,系统提示点钞机进行点钞,点钞完毕后,系统记录存款操作并更新余额,系统界面显示存款完毕,然后系统界面进入是否选择继续服务界面,用户点击否,则系统退出银行卡并提示用户取卡,用户取走卡后,存款业务完成。若用户选择查询业务,若查询余额,系统确认请求以后根据其账号信息查取余额,并在界面显示余额为多少。

ATM自动取款机系统详细设计说明书

ATM自动取款机系统详细设计说明书 1 2020年4月19日

文档名称:详细设计说明书 项目名称:ATM自动取款机系统编写:张恒友 审核:王旭 日期: 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 Web服务器:Tomcat5.0以上 支持浏览器:Internet Explorer 7.0及其以上版本 开发环境:MyEclipse,jdk,Microsoft SQL Server 2.3条件与限制 随着科技的发展,人们生活水平的不断提高,高性能高效率高安全的产品越来越受到人们的欢迎。 ATM自动取款机是一种非常智能的机器,人们能够直接和它交互,代替以前的手工操作,大大提高了银行的工作效率。同时也给广大用户带来了非常大的方便。由于ATM自动取款机是和服务器是连网的,这就涉及到安全的问题本系统能够有效地解决这个问题。可是本程序也使用户操作时间增加,在一定程度上增加了用户的抱怨率。

ATM自动取款机系统——测试计划

课程设计 题目:AT M自动取款机系统 (测试计划) 学生姓名: 学院: 系别: 专业:软件工程 班级:软件09-1班 指导教师: 2012年7月13日

目录 1.引言 (1) 1.1编写目的 (1) 1.2项目背景 (1) 1.3定义 (2) 1.4参考资料 (2) 2.任务概述 (2) 2.1目标 (2) 2.2运行环境 (3) 2.2.1硬件环境 (3) 2.2.2软件环境 (3) 2.3需求概述 (3) 2.4条件与限制 (4) 3.计划 (4) 3.1测试方案 (4) 3.1.1本次测试分别采用两种方案 (4) 3.1.2选取测试用例的原则 (4) 3.2测试项目 (5) 3.2.1对ATM的组装测试 (5) 3.2.2对ATM的确认测试 (5) 3.3测试准备 (6) 3.4测试机构及人员 (6) 4.测试项目说明 (7) 4.1测试项目 (7) 4.1.1白盒测试: (7) 4.1.2黑盒测试 (7) 4.1.3单元测试 (7) 4.1.4集成测试 (7) 4.1.5确认测试 (8) 4.1.6系统测试 (8) 4.1.7验收测试 (8) 4.2测试项目名称及测试内容 (8) 4.3测试用例 (9) 4.4进度 (13) 4.5条件 (14) 4.6测试资料 (14) 5.评价 (14) 5.1范围 (14) 5.2准则 (15)

1.引言 1.1编写目的 编写测试计划的目的是: (1)为整体的软件系统制定一个现实可行的、综合的计划,包括每项测的对象、范围、方法、进度和预期结果。 (2)为项目实施建立一个组织模型,并分配测试项目中每个人员的责任和工作内容。 (3)开发有效的测试模型,能正确地验证正在开发的软件系统。 (4)确定测试所需要的时间和资源,以保证其可获得性、有效性。 (5)确立每个测试阶段测试完成以及测试成功的标准和要达到的目标。 (6)本测试计划主要为测试人员作参照。 1.2项目背景 待开发项目名称:ATM自动取款机系统的分析与设计。 委托单位:呼和浩特建设银行 开发单位: 主管部门: 用户:呼和浩特建设银行 产品的所有权:呼和浩特建设银行 项目开发者: 项目背景:在市场经济的蓬勃发展和人们日益繁忙的条件下,现有的银行系统往往需要客户在办理手续时等待很长的时间,这不仅会浪费很多宝贵的 时间,也会使得银行的业务人员十分的繁忙,需要很大的人力和财力。 基于这样的情况,ATM 取款机系统的开发就显的十分的重要!它可以 减少银行的业务处理压力,尽量节省人们的时间,并且可以有效解决 用户信息和资金信息的繁杂问题。

(完整word版)模拟ATM自动取款机系统C++版

《面向对象程序设计》课程设计报告模拟ATM自动取款机系统 姓名 : 学号 : 专业班级 : 完成时间 : 指导老师 :

目录 一、需求分析 (2) 二、程序的主要功能 (2) 三、程序运行平台 (2) 四、流程图 (2) 五、程序类的说明 (2) 六、模块分析 (3) 七、比较有特色的函数 (4) 八、存在的不足与对策 (4) 九、程序源代码 (4)

一、需求分析 为了方便用户的及时取款,查询,及时修改密码的方便,本课题设计并模拟银行的自动取款机使用过程中的界面和用户交互过程。实现查询银行卡余额,取款,修改密码,退出系统等功能。 二、程序的主要功能 1、锁机功能: 卡号,密码输入最多三次,否则直接退出系统。 2、取款功能: 取款金额受卡余额,机单笔最大取款金额及机当前剩余金额的限制。 3、查询功能: 实现查询余额的功能。 4、更改密码: 实现密码更改功能,对于密码要有2次验证。 5、退卡功能: 实现退出系统功能。 三、程序运行平台 Dev c++ 四、流程图 图1 系统流程图 五、程序类的说明 5.1 ATM 类: 该类主要实现取款,查询,修改密码,登录界面等功能。 class ATM//ATM 类 { public: ATM(YongHu& y):yh(y) 登陆界面 主界面 取款功能 查询功能 修改密码 锁卡功能 退出系统

{} ............... private: int times; YongHu& yh; }; 5.2 YongHu类: 该类主要实现卡号,密码,余额的获取函数等功能。 class YongHu//用户类 { public: friend class ATM; ............ private: char ID[20];//卡号 char password[10];//密码 float money;//卡上余额 }; 5.3 查询函数: 调用YongHu类的获取函数将信息输出 void ATM::CX() { ........... } 5.4 修改密码函数: 使用do while语句实现修改密码的功能 void ATM::GG() { ......... } 5.5 密码星号函数: 通过while语句实现输入密码时每输入一个字符就显示一个星号的功能char * ATM::GetPassword() { ........ } 六、模块分析 1、锁机功能: 卡号,密码输入最多三次,否则直接退出系统。

ATM自动取款机系统-需求规格说明书

科瑞创意小组 ATM机管理系统 需求规格说明书 院(系)计算机科学与工程学院 专业软件工程 班级100613 2012年4月10 日

目录 1.引言 (1) 1.1编写目的 (1) 1.2项目背景 (1) 1.3定义 (1) 1.4参考资料 (2) 2.任务概述 (2) 2.1目标 (2) 2.2运行环境 (2) 2.3条件与限制 (3) 3.数据描述 (3) 3.1静态数据 (3) 3.2动态数据 (5) 3.3数据库介绍 (7) 3.4数据词典 (8) 3.5数据采集 (10) 4.功能需求 (11) 4.1功能划分 (11) 4.2功能描述 (16) 5.性能需求 (18) 5.1数据精确度 (18) 5.2时间特性 (18) 5.3适应性 (18) 6.运行需求 (19) 6.1用户界面 (19) 6.2硬件接口 (19) 6.3软件接口 (20) 6.4故障处理 (20) 7.其它需求 (21)

1.引言 1.1编写目的 ATM自动取款机系统是银行业务流程过程中十分重要且必备的环节之一,在银行业务流程当中起着承上启下的作用,其重要性不言而喻。但是,目前许多银行在具体的一些业务流程处理过程中仍然使用手工操作的方式来实施,不仅费时、费力,效率低下,而且无法达到理想的效果。为此,我们在明确该软件需求的基础上,安排项目规划与进度、组织软件开发与测试,撰写本文档。本文档针对上述问题,采用软件工程的开发原理,依据软件流程过程规范,按照需求分析,概要设计,程序编码,软件应用等过程,开发了这个系统。本文档供项目经理、设计人员、开发人员、客户参考。 1.2项目背景 待开发项目名称:ATM自动取款机系统的分析与设计。 项目提出者:ATM机系统是应呼和浩特建设银行网络建设和改造需要,为客户提供方便、迅速、便捷的自动取款业务提出了ATM机自动取款系统设计方案。 项目兼容现有银行管理系统。 项目开发者:李向南朱学雷刘英杰赵中军 1.3定义 专业术语与缩略词 帐号:在银行中,事物应用的单个帐号。每个顾客可以拥有多个帐号。 用户:拥有银行的一个或多个帐号的人。可以是一个人或多个人,或者是公司。相同的人,拥有不同的银行帐号被认为是不同的落户。 ATM:ATM是Automatic Teller Machine 的缩写,意为自动取款机。是一种高度精密的机电一体化设备,利用磁卡或智能IC卡储存用户信息并通过加密键盘输入密码然后通过银行内部网络验证并进行各种交易的金融自助设备。

ATM自动取款机系统—详细设计说明书

文档名称:详细设计说明书 项目名称: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自动取款机是和服务器是连网的,这就涉及到

相关主题
文本预览
相关文档 最新文档