ATM自动取款机系统论文.docx
- 文档编号:7001629
- 上传时间:2023-01-16
- 格式:DOCX
- 页数:38
- 大小:324.45KB
ATM自动取款机系统论文.docx
《ATM自动取款机系统论文.docx》由会员分享,可在线阅读,更多相关《ATM自动取款机系统论文.docx(38页珍藏版)》请在冰豆网上搜索。
ATM自动取款机系统论文
ATM自动取款机系统
院系:
软件学院
专业:
软件工程
班级:
学生姓名:
XXX
指导教师:
摘要
本系统在VS2010开发环境下,使用C#语言实现各模块功能。
以Access2010作为数据库,实现了一个简化的中国工商自动取款机系统。
该系统的基本工作原理是利用计算机对用户的银行交易进行管理,主要包括用户登录、取现、存现、转账、修改密码、查询余额、系统设置。
系统实现了增加、删除、修改、查询等功能。
储户可以存钱到账户中,也可以从自己的账户中取现,还可以将存款从一个账户转到另一个账户。
储户可以随时查询自己账户的情况,并查询以前所进行的存款、取款等交易记录。
自动取款机系统主要优点是:
使用简单、界面友好、检索速度快、检全率和检准率容易保证、检索方式灵活多样。
自动统计速度快、提供信息及时、准确,可以满足各种不同的需求,可以提供整体情况也可以细化到个人,自动取款机大大方便了用户的使用,把各类相关人员从繁重的工作中解脱出来,节省了大量人力。
关键词:
C#;中国工商自动取款机系统;Access2010;数据库
Abstract
ThesystemdevelopmentenvironmentinVS2010,usingC#languagefeaturesofeachmodule.InAccess2010asadatabase,toachieveasimplifiedChineseIndustrialandCommercialautomatictellermachinesystem.Thebasicprincipleofthesystemistheuseofcomputerstomanagetheuser'sbankingtransactions,includinguserlogin,cash,cashdeposit,transfer,changepasswords,checkbalances,systemsettings.Systemtoachieveadd,delete,modify,queryandotherfunctions.Saverscandepositmoneyintotheaccount,oryoucantakefromyouraccountnow,youcanalsodepositfromoneaccounttoanother.Depositorscanalwayschecktheiraccounts,andtocheckbeforeweredeposits,withdrawalsandothertransactions.Automatictellermachinesystemmainadvantagesare:
easytouse,friendlyinterface,fastretrieval,recallandprecisioncaneasilyguaranteeflexibleretrievalmethods.Speedautomaticstatistics,providinginformationtimely,accurate,andmeetavarietyofdifferentneeds,canprovidetheoverallsituationcanberefinedtoindividualATMsgreatlyfacilitatetheuserstouse,thedifferenttypesofrelevantpersonnelfromtheheavyworkfreed,savealotofmanpower.
Keywords:
C#;ChineseIndustrialandCommercialautomatictellermachinesystem;Access2010;Database
1绪论
1.1开发背景
随着时代的进步,生活节奏的加快,越来越多的人进入银行。
在银行业务量爆炸式增长的时候,ATM已经开始悄悄的走入人们的生活。
ATM机作为银行服务的扩展终端,大大的提高了银行业务办理能力,24小时为客户提供基础的银行服务,使得银行客户在面对长长的队伍时有更加主动的选择。
ATM设备已经成为我们日常生活中不可或缺的重要设备。
因此我决定学习了解ATM设备的工作原理,探究ATM机的工作机制,并自行模拟ATM系统功能。
1.2开发目的
相比国外,国内的ATM机起步较晚,ATM(AutoTellerMachine)称自动取款机,实质是一种集光、机、电技术的银行业自动化设备。
我国的ATM是伴随着银行卡业务的成长而逐步发展起来的,为了满足持卡人在银行营业时间外也能够用卡存、取款,银行投资并安装了ATM,以此提供24小时的自助服务。
1987年2月,我国第一台ATM在广东珠海投入使用。
1993年我国“金卡工程”启动后,国内银行对ATM需求激增。
1998年,全国ATM突破2万台。
进入21世纪后,ATM机的数量不断增加。
到2007年底,中国联网ATM机已经达到12.3万台,近5年国内ATM设备保有量实现了年均20.22%的复合增长,整体ATM机市场保有量已经达到13.8万台。
ATM是社会发展过程中电子技术与银行业务完美结合的产物之一,信息技术的创新推动着ATM向更加智能化和人性化的方向发展。
现在的ATM机使用方便、界面更加友好,为广大客户提供了一种便捷的自助服务方式,不但增强了银行服务的灵活性,而且提升了银行的整体形象[1]。
1.3开发意义
随着银行业务的扩展,业务量的增长,人们的生活和银行连接的越来越紧密,这个时候银行的长龙开始出现,因此,人们设法用银行自动取款机系统软件的开发解决以上的问题,这也成为本次设计的意义所在。
1.4技术概述
1.4.1C#技术概述
1.C#的产生
C#读作CSharp。
最初它有个更酷的名字,叫做COOL。
微软从1998年12月开始了COOL项目,直到2000年2月,COOL被正式更名为C#。
在1998年,Delphi语言的设计者Hejlsberg带领着Microsoft公司的开发团队,开始了第一个版本C#语言的设计。
在2000年9月,国际信息和通信系统标准化组织为C#语言定义了一个Microsoft公司建议的标准[2]。
最终C#语言在2001年得以正式发布。
2.C#的特点
一、简洁的语法。
C#用真正的关键字换掉了那些把活动模板库(ActiveTemplateLibrary,ALT)和COM搞得乱糟糟的伪关键字,如OLE_COLOR、BOOL、VARIANT_BOOL、DISPID_XXXXX等等。
每种C#操作符在.NET类库中都有了新名字。
语法中的冗余是C++中的常见的问题,比如"const"和"#define"、各种各样的字符类型等等。
C#对此进行了简化,只保留了常见的形式,而别的冗余形式从它的语法结构中被清除了出去。
二、精心地面向对象设计。
C#只允许单继承,即一个类不会有多个基类,从而避免了类型定义的混乱。
在后面的学习中很快会发现,C#中没有了全局函数,没有了全局变量,也没有了全局常数。
一切的一切,都必须封装在一个类之中。
你的代码将具有更好的可读性,并且减少了发生命名冲突的可能。
三、与Web的紧密结合。
.NET中新的应用程序开发模型意味着越来越多的解决方案需要与Web标准相统一,例如,超文本标记语言(HypertextMarkupLanguage,HTML)和XML。
由于历史的原因,现存的一些开发工具不能与Web紧密地结合。
SOAP的使用使得C#克服了这一缺陷,大规模深层次的分布式开发从此成为可能。
由于有了Web服务框架的帮助,对程序员来说,网络服务看起来就像是C#的本地对象。
程序员们能够利用他们已有的面向对象的知识与技巧开发Web服务[3]。
四、完整的安全性与错误处理。
语言的安全性与错误处理能力,是衡量一种语言是否优秀的重要依据。
任何人都会犯错误,即使是最熟练的程序员也不例外:
忘记变量的初始化,对不属于自己管理范围的内存空间进行修改。
这些错误常常产生难以预见的后果。
一旦这样的软件被投入使用,寻找与改正这些简单错误的代价将会是让人无法承受的。
C#的先进设计思想可以消除软件开发中的许多常见错误,并提供了包括类型安全在内的完整的安全性能。
为了减少开发中的错误,C#会帮助开发者通过更少的代码完成相同的功能,这不但减轻了编程人员的工作量,同时更有效地避免了错误的发生。
.NET运行库提供了代码访问安全特性,它允许管理员和用户根据代码的ID来配置安全等级。
五、版本处理技术。
C#提供内置的版本支持来减少开发费用,使用C#将会使开发人员更加轻易地开发和维护各种商业用户。
升级软件系统中的组件(模块)是一件容易产生错误的工作。
在代码修改过程中可能对现存的软件产生影响,很有可能导致程序的崩溃。
为了帮助开发人员处理这些问题,C#在语言中内置了版本控制功能。
例如:
函数重载必须显式声明,而不会像在C++或java中经常发生的那样不经意地被进行,这可以防止代码错误和保留版本化的特性。
另一个相关的特性是接口和接口继承的支持。
这些特性可以保证复杂的软件可以被方便地开发和升级[4]。
1.4.2Access2010技术概述
MicrosoftOfficeAccess是微软把数据库引擎的图形用户界面和软件开发工具结合在一起的一个数据库管理。
它是微软OFFICE的一个成员,在包括专业版和更高版本的office版本里面被单独出售。
2012年12月4日,最新的微软OfficeAccess2013在微软Office2013里发布,微软OfficeAccess2010是前一个版本。
1.为您的数据建立集中化存取平台
使用多种数据联机,以及从其他来源链接或汇入的信息,以整合您的Access报表。
您可以透过改良的「设定格式化的条件」功能与计算工具,建立起丰富、动态化、富含视觉效果的报表。
Access2010报表以可支持数据横条效果显示,让您以及阅读报表的人都能更容易掌握趋势[5]。
2.以拖放方式为数据库加入导航功能
不用撰写任何程序代码,或设计任何逻辑,就能创造出具备专业外观与网页式预览功能的窗体,让您常用的窗体或报表在使用上更为方便。
共有六种预先定义的预览模板,外加多种垂直或水平索引卷标可供选择。
多层的水平索引卷标可用于显示大量的Access窗体或报表[6]。
只要以拖放方式,就能显示窗体或报表。
3.使用IntelliSense建立表达式
使用IntelliSense建立表达式,不费吹灰之力。
经过简化的「表达式建立器」可以让您更快、更轻松地建立数据库中的逻辑与表达式。
IntelliSense的快速信息、工具提示与自动完成,有助于减少错误、省下死背表达式名称和语法的时间,把更多的时间用到应用程序逻辑的建立上。
1.5技术可行性
技术可行性分析主要是根据系统分析所得到的对待开发的软件、支撑软件、硬件环境和操作人员的要求以及有关的约束和限制,来分析现有的技术是否能实现待开发的软件。
它包括可得到的硬件和支撑软件在功能和性能上是否满足系统的要求,是否有满足系统性能要求的算法,开发人员的技术水平能否胜任系统的开发等等,因此该系统具有技术可行性。
本系统采用VS2010作为其前台开发工具,其具有强大的数据库开发功能和丰富多样的查询方法,其设计、开发、调试和部署方便快捷。
本系统后台采用Access2010数据库,其可靠性、易用性都很好。
ATM自动取款机系统的工作原理就是通过用户界面把用户的操作转化为存放相关信息数据的后台数据库操作,进而将相关操作结果返回给用户。
因此,该系统具有技术可行性。
1.6经济可行性
经济可行性首先要进行待开发软件的成本估算和成本/效益分析,以确定待开发软件是否有开发的价值。
该系统的使用范围广,这样对项目的需求也就上涨,取得的经济效益自然上升。
系统建成后,应该给用户带来一定的效益(直接经济效益、间接经济效益),系统的投资和经营费用应尽快得到回收[7]。
1.企业有能力承担研发开支
开发新系统的工作是一项艰巨复杂的工作,它的投资主要是人力和物力的投资。
对于本系统的开发来说,其主要投资还是在人力和物力两个方面。
从系统的业务需求调查到系统的分析编码制作都是需要人力和物力的投入。
但是就这样一个大型企业来说,在系统的开发过程中,企业完全有能力承担开发费用。
2.新系统将为企业带来经济效益
本系统是一个信息化、智能化和先进管理理念的集合体。
在系统中获得的经济效益是一个综合效益,要对它进行直接定量的分析是比较困难的。
一般新系统带来的经济效益是间接的,其最主要的表现就是减少了企业的人力开支。
而其他一些繁琐的事物都通过新系统来加以分析解决,不仅节省了大量的时间,还为企业的各项决策提供了宝贵的资料,为企业带来巨大的经济效益[8]。
1.7法律可行性
本系统是通过大量的现场调研得出的,系统的软件设计是在独立的环境下完成的,无可供抄袭的软件产品,也不存在盗版侵权的问题,项目内容符合国家法律,是完全合法的软件。
因此,该系统具有法律可行性。
1.8操作可行性
操作可行性主要是在开发过程中的每个环节是否存在可行性,及用户的使用可行性主要是指使用方式(如操作方式)用户是否容易接受。
使用本软件人员要求要有简单计算机基础即可。
系统的管理人员具有一定的计算机专业知识,经培训后可熟练管理本系统。
1.9可行性研究结论
通过上面对于经济、技术和法律等方面的可行性分析,得到这样一个结论,ATM自动取款机系统是社会大众所需要的,有很大的发展空间,因此可以确定本系统的开发完全必要,而且是可行的,可以立项开发。
2需求分析
需求分析的基本任务是要准确地定义新系统的目标,为了满足用户需要,回答系统必须“做什么”的问题,是对用户提出的软件功能、性能等应用问题及其环境进行分析与理解,采用一系列的分析方法和技术,把系统分析阶段产生的系统规格说明和项目规划逐步精确化、完全化、一致化,借助于当前系统的逻辑模型导出目标系统逻辑模型,最终形成需求规格说明文档的过程。
2.1系统功能需求及分析
通过调查研究,要求系统满足以下功能:
1.由于操作人员的计算机知识水平参差不齐,要求有良好的人机交互界面。
2.外部功能:
实现化窗口、登录、存款、取款、查询、转账。
3.内部功能:
同步、查询、更新。
4.方便数据查询,支持多条件查询和模糊查询。
自动取款机系统包含日常业务、查询和系统维护3种功能:
1.日常业务
用户登录、取现、存现、转账、更改密码。
2.查询
查询余额。
3.系统维护
系统设置,数据备份。
2.2系统性能需求
1.数据精确度
在进行向数据库文件提取数据时,需要数据记录定位精确,在往数据库文件数组中添加数时,要求输入精确金额,卡号等数据。
2.时间特性
程序响应时间:
在人的感觉和视觉事物范围内。
信息交换时间:
要求在程序调用前调用后都与数据库保持同步更新,网络信息交换时间应该小于程序调用时间。
3.适应性
要求数据库具有很好的更新能力,由于本产品是试验性软件,故对磁盘和内存容量没有很高的要求,但是数据库应该能够对并发事件,脏数据具有较强的识别处理能力。
4.磁盘容量
由于要存贮大量的数据和信息,所以要求要有足够的磁盘容量。
5.主存容量
为了满足储户的要求,系统必须要有高的运作速度,储户填写的表单输入到系统,系统必须能快速及时做出响应,迅速处理各项数据、信息,显示出所有必需信息,所以要求很高的运作速度和大的主存容量。
2.3系统开发及运行环境
硬件平台:
1.CPU:
P41.8GHz。
2.内存:
256MB以上。
软件平台:
1.操作系统:
Windows7。
2.数据库:
Access2000。
3.开发环境:
VS2010。
2.4数据流图
数据流图简称DFD(DataFlowDiagram)图[9],其主要功能是用来描述信息在系统中的流动和处理的情况,是极好的理解工具。
它能精确的描述系统的逻辑模型,描述数据由输入经过存储、加工、处理到最后输出的全过程。
数据流图是软件系统逻辑模型的一种图形表示。
任何系统从根本上说,都是对数据进行加工或者变换的工具。
本系统的数据流程图,如图3.1所示。
图2.1数据流图
2.5数据流程图
图2.2系统模块流程图
2.6数据字典
数据字典的作用是给数据流图上每个成分加以定义和说明。
换句话说,数据流图上所有成分的定义和解释和文字的结合就是数据字典。
数据词典描述的主要内容有:
数据流、数据元素、数据存储、加工、外部项,其中数据元素是组成数据流的基本成分。
在系统分析中,数据词典起着重要作用。
编写数据词典的基本要求是:
1.对数据流图上的各种成分的定义必须明确、易理解、唯一。
2.命名、编号与数据流图一致,必要时(如计算机辅助编写数据的作用,它包含关于系统的详细信息)可增加编码,方便查询检索、维护和统计报表。
3.符合一致性和完整性的要求,对数据流图上的成分定义与说明无遗漏项。
数据词典中无内容重复或内容相互矛盾的条目。
数据流图中同类成分的数据词典条目中,无同名异义或异名同义者。
4.格式规范、风格统一、文字精炼、数字与符号正确。
本系统的数据字典包括:
数据流“账户信息”的字典条目如表2.1所示。
表2.1数据流“账户信息”的字典条目
名字:
账户信息表
描述:
记录账户的信息。
编号:
D1
组成:
卡号,密码,结余,状态,开户地址
数据流“ATM机信息”的字典条目如表2.2所示。
表2.2数据流“ATM机信息”的字典条目
名字:
ATM机信息
描述:
ATM机的基本信息。
编号:
D2
组成:
编号,性质,上限
数据流“用户信息”的字典条目如表2.3所示。
表2.3数据流“用户信息”的字典条目
名字:
用户信息表
描述:
记录用户的信息。
编号:
D3
组成:
编号,姓名,性别,年龄,卡号
数据流“用户操作信息”的字典条目如表2.4所示。
表2.4数据流“用户操作信息”的字典条目
名字:
用户操作信息表
描述:
用户操作信息的记录。
编号:
D4
组成:
卡号,操作记录,金额,时间
3系统总体设计
经过详细、认真的需求分析之后,对系统的各项功能以及工作对象有了全面的了解,下面对系统总体设计做详细说明。
3.1设计目标
本系统针对自动取款进行有效管理。
主要实现如下目标:
1.界面设计美观友好,信息查询灵活、方便、快捷、准确,数据存储安全可靠。
2.为用户提供一个方便、快捷的方式。
3.实现取款等功能,完成基本的流程操作。
4.对用户操作信息进行增加、修改、查询。
5.对输入的数据,系统进行严格的数据检验。
6.系统最大限度地实现了易维护性和易操作性。
7.系统运行稳定、安全可靠。
3.2系统功能结构图
自动取款机系统包括登录、查余、取款、存款、转账等功能。
如图3.1所示。
图3.1自动取款机系统功能结构图
3.3数据库设计
数据库设计是数据库应用系统开发要解决的关键问题之一,构建一个高效、合理的数据库是应用系统能否开发成功的重要环节。
数据库设计是指针对给定的软、硬件环境,根据现实问题要求,设计一个合理的数据模型,建立DB结构和DB应用系统[10]。
3.3.1数据库需求分析
数据库需求分析是数据库设计的第一步,是非常重要的一个阶段。
这个阶段的主要任务工作是收集基本数据、数据结构以及确定数据处理的流程,为进一步设计打下基础。
按照设计思想和要求,通过对自动取款机系统的内容和数据流程分析,设计的数据项和数据结构如下:
账户信息=卡号+密码+结余+状态+开户地址。
ATM机信息=编号+性能+上限。
用户信息=编号+姓名+性别+年龄+卡号。
用户操作信息=卡号+操作记录+金额+时间。
3.3.2数据库概要设计
对于自动取款机系统,其中账户信息的实体与属性关系,用户信息的实体与属性关系,用户操作信息的实体与属性关系,如图3.2,图3.3,图3.4所示。
图3.2用户信息实体与属性关系图
图3.3用户操作信息实体与属性关系图
图3.4账户信息实体与属性关系图
根据以上的实体与属性的关系图,设计出它们之间的E-R图,如图3.5所示。
n
n
n
n
1
1
1
1
n
1
1
1
n
n
n
n
n
1
n
n
n
图3.5用户、账户、管理员信息E-R图
3.3.3数据库详细设计
下面是关于本系统数据库中几个主要表的设计。
数据库的名称是db。
1.账户详情信息表
如表3.1所示。
表3.1Account表结构
字段名
数据类型
长度
是否为空
描述
card
文本
10
No
卡号
password
文本
10
Yes
密码
balance
文本
10
Yes
余额
status
文本
20
Yes
状态
openaddress
文本
20
Yes
开户地址
2.ATM机信息表
如表3.2所示。
表3.2Admin表结构
字段名
数据类型
长度
是否为空
描述
ID
自动编号
20
No
编号
properties
文本
10
Yes
性能
money
文本
40
Yes
上限
3.用户信息表
如表3.3所示。
表3.3Customers表结构
字段名
数据类型
长度
是否为空
描述
aid
自动编号
20
No
编号
name
文本
10
Yes
姓名
sex
文本
10
Yes
性别
age
数字
10
Yes
年龄
card
文本
40
No
卡号
4.用户操作信息表
如表3.4所示。
表3.4Operation表结构
字段名
数据类型
长度
是否为空
描述
card
文本
10
No
卡号
operation
文本
40
Yes
操作记录
money
文本
40
Yes
金额
time
文本
20
Yes
时间
3.4模块功能介绍
根据系统需求分析,按照结构化的系统设计思想,本系统从功能上可分为如下几个功能模块:
3.4.1登录功能模块
根据密码认证登录到功能界面。
1.用户输入登录相关信息(账号、密码)。
2.系统检查用户相关信息,提示成功与否。
3.4.2取款功能模块
以储户的取款为主要活动,相关记录根据存款结果进行调整,以使信息保持一致。
1.在原用户信息中取款减去。
2.账户取款相关信息都会写入到数据库中。
3.4.3存款功能模块
以储户的存款为主要活动,相关记录根据存款结果进行调整,以使信息保持一致。
1.在原用户信息中存款加入。
2.账户存款相关信息都会写入到数据库中。
3.4.4查询功能模块
为储户提供查询余额服务,将储户的相
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- ATM 自动 取款 系统 论文