毕业设计模拟ATM 机系统软件的设计与开发.docx
- 文档编号:6970473
- 上传时间:2023-01-13
- 格式:DOCX
- 页数:25
- 大小:3.03MB
毕业设计模拟ATM 机系统软件的设计与开发.docx
《毕业设计模拟ATM 机系统软件的设计与开发.docx》由会员分享,可在线阅读,更多相关《毕业设计模拟ATM 机系统软件的设计与开发.docx(25页珍藏版)》请在冰豆网上搜索。
毕业设计模拟ATM机系统软件的设计与开发
模拟ATM机系统软件的设计与开发
论文作者姓名:
申请学位专业:
申请学位类别:
指导教师姓名(职称):
论文提交日期:
模拟ATM机系统软件的设计与开发
摘要
二十世纪末,随着金融服务的迅速发展,银行提款机已经发展成了各大银行金融服务战略中的重要一环,同时,银行提款机系统也经历了持续的更新换代,为广大用户提供了更加便捷和人性化的服务。
模拟ATM系统就是对提款机操作系统在个人PC上及主流操作平台上的编程实现,其开发主要包括后台数据库的建立和维护以及前端应用程序的开发制作两个方面。
对于前者要求建立起数据一致性和完整性强、数据安全性好的库。
而对于后者则要求应用程序功能完备,易使用,界面友好等特点。
本系统采用VB6.0,微软SQLSERVER2000,实现了用户身份的认证、取款、转帐、交易明细的查询等功能。
分析并解决实现中遇到的若干问题,例如数据库资料如何实现更新,文本框的文字输出需要用到什么技术,如何实现中英文两种界面,用户服务功能如何实现等等。
关键词:
模拟ATM银行系统;ADO控件;VB6.0;SQLSERVER2000
ThedesignanddevelopmentofATMsimulationsystem
Abstract
Attheendofthe20thcentury,asthefastdevelopmentoffinancialservices,ATMmachineshavebecomethemajorpartofthefinancialservicesstrategyofeverybank,banktellersystemhasundergoneacontinuousupgrading,suppliedamoreefficientandhumanservicesforthecustomers.ATMsimulationsystemistheoperatingsystemofpersonaltellermachinesonthePCplatformandthemainstreamofprogramming.Thedevelopmentincludestwoaspects.Theoneisestablishmentandmaintenanceofbackgrounddatabase,theotherisdevelopmentoffront-endapplications.Theformerrequiresestablishingaconsistencyandintegrityofstrongdatasecurityforgood.Andforthelatterdemandstheapplicationfunctionsareperfect,andeasy-to-useandfriendlyinterface,andotherfeatures.TheATMsystemdescribesthestructureandfunctionmoduleoftheentirelayoutofthesystem;Thesystemrealizedtheuserauthentication,withdrawals,transfers,detailsofthetransactioninquiries,withtheVisualBasic6.0,MicrosoftSQLSERVER2000;Thesystemanalyzedandresolvedencounteredumpteenissuesintherealization,forexample,howtorealizethedatabaseupdated,what’sthenecessarytechnologyistorealizethetextarea’soutputting,howtorealizetheEnglishandChineseinterfacesingeniously,andhowtorealizeuserservicesfunctionsandsoon.
Keywords:
ATMsimulationsystem;ADO;VB6.0;SQLSERVER2000
目录
论文总页数:
26页
1引言1
2开发模拟ATM系统的目的与意义1
2.1ATM起源1
2.2模拟ATM系统的意义1
2.2.1现实意义1
2.2.2学习意义2
3模拟ATM系统开发平台简介2
3.1Windows下的VisualBasic编程环境简介2
3.1.1面向对象的编程2
3.1.2VisualBasic6.0特点介绍2
3.1.3生成帮助文件及版本信息4
3.2SQLSERVER2000数据库简介5
3.2.1数据库的概念5
3.2.2微软SQLSERVER2000简介5
3.3VB6.0与SQL数据库二者的连接(ADO)5
4系统分析设计6
4.1系统功能简介6
4.2系统流程图7
4.3系统开发主要应用技术7
4.3.1系统前台设计7
4.3.2后台数据库设计8
5系统功能的实现9
5.1欢迎界面实现9
5.2登陆的实现9
5.3主界面实现12
5.4查询余额功能的实现13
5.5取款功能的实现14
5.6转账功能的实现16
5.7密码修改功能的实现19
5.8查询交易明细功能的实现21
5.9其余界面及函数21
6系统运行结果及工作总结23
6.1系统测试及运行结果23
6.2系统有待改进之处23
6.3系统中遇到的问题及解决方法23
结论24
参考文献24
致谢25
声明26
1引言
随着时代的进步,社会生产力高速发展,新技术层出不穷,信息量急剧膨胀,整个人类社会已成为金融化信息化的社会,并开始朝着自动化智能化发展。
以往人们去银行存款取款进行各种财务处理都必须通过柜台,随着越来越多的人们进入银行,使用银行的服务,使银行出现了工作效率低,顾客等待时间过长等等问题,既加大了银行工作人员的工作量,又使得人们享受银行服务的质量大幅度降低,所以银行交易的自动化智能化已经成为了一个不可逆转的趋势,而且必将成为各个银行今后发展的重点。
系统在前台采用了VisualBasic6.0这一功能全面,方便易学的语言作为开发语言,而后台则用功能强大的SQLSERVER2000数据库加以实现。
2开发模拟ATM系统的目的与意义
2.1ATM起源
现代意义上的ATM和POS系统始于二十世纪60年代末。
最早的ATM机只是现钞发放机。
1976年,英格兰的巴克莱银行安装了第一台现钞发放机。
它并没有使用磁条卡,而是向用户发行纸券,用户将纸券插入机器,取出面值为10英镑的钞票。
现代ATM机的想法来自于唐·维泽尔。
1968年,当他在达拉斯银行排队等候的时候,萌发了这个想法。
之后,他建议自己的雇主Docutel研制这种机器。
研发中最重要的过程是将信息加密后存储在磁条上,然后将磁条加在塑料卡片上。
研制成功后,Doctuel将ATM机卖给了纽约化学银行。
1969年,化学银行把这个机器安装在洛克菲勒中心的办公室。
虽然Docutel的ATM机器使用了现代的磁条技术,但和今天的技术相比,还是显得比较原始。
它只能用于取现钞,而且只能脱线使用。
机器用特殊的方法打印下交易的纪录。
直到20世纪70年代初,ATM技术才发展到我们今天的水平。
起初,ATM主要用来处理信用卡,到了1972年,克里夫兰城市国家银行成功地引进了一种可在ATM机上使用的没有透支功能的卡片。
如今,ATM机发展了更多功能,包括存钱、支票和储蓄账户之间相互转账,付款等等。
同时,ATM实现了与计算机相连接,使客户可以实时地了解账户余额和支付情况。
多台ATM机与银行主机相连,就逐渐形成了ATM网络。
2.2模拟ATM系统的意义
2.2.1现实意义
目前全球共有ATM超过120万台,平均每5分钟新增一台,连南极科考基地都安装了ATM,每年通过这些机器进行的金融交易超过400亿笔。
从这些数据可以看出银行自动提款机已经进入了人们的日常生活,我们对自助式服务已经不再陌生,并成为了人们日常生活习以为常的一部分,确实的给人们的生活带来了极大的便利。
经过了近40年的发展,ATM也取得了长足的进步,从早期的纸券取钱,到现在的一卡在手,ATM机也从早期的简单机器,后期的系统集成式机器,发展成了如今的基于个人PC上操作系统下的智能化系统,拥有了更多更全更加方便的功能。
随着个人PC的快速发展,越来越多的ATM机逐步替换为了PC机,也采用了基于WINDOWSXP系统下的操作系统,具有了更加人性化,更加友好的操作界面,也具有了更快的响应速度,这也使得各个银行之间的ATM操作平台有了逐步统一的可能,加强各银行的服务联系,使客户跨行进行ATM交易将更加便捷,资费也能够得到降低。
本次开发的ATM系统就是基于WINXP系统下的具有友好界面的软件系统
2.2.2学习意义
开发一个软件系统,从需求分析到流程图的绘制及模块的分析,再到最后的数据库设计及代码的编写实现都要自己动手一步一步的来解决完成,这个过程对于自己在大学所学的知识是一个非常好的检验,对动手能力及思维能力也是一次非常好的锻炼。
希望通过此次的研究学习,认清自己的不足之处,不断的去学习完善自己的理论知识,逐步提高动手能力,为以后的工作打下坚实的基础。
3模拟ATM系统开发平台简介
3.1Windows下的VisualBasic编程环境简介
3.1.1面向对象的编程
微软公司的VisualBasic6.0是Windows应用程序开发工具,使目前最为广泛的、易学易用的面向对象的开发工具。
VisualBasic提供了大量的控件,这些控件可用于设计界面和实现各种功能,减少了编程人员的工作量,也简化了界面设计过程,从而有效的提高了应用程序的运行效率和可靠性。
故而,实现本系统VB是一个相对较好的选择。
3.1.2VisualBasic6.0特点介绍
VsualBasic6.0是一种可视化的、面对对象和条用事件驱动方式的结构化高级程序设计,可用于开发Windows环境下的种类应用程序。
它简单易学、效率高,且功能强大,可以与Windows的专业开发工具SDK相媲美,而且程序开发人员不必具有C/C++编程基础。
在VisualBasic环境下,利用事件驱动的编程机制、新颖易用的可视化设计工具,使用Windows内部的应用程序接口(API)函数,以及动态链接库(DLL)、动态数据交换(DDE)、对象的链接与嵌入(OLE)、开放式数据访问(ODBC)等技术,可以高效、快速地开发出Windows环境下功能强大、图形界面丰富的应用软件系统。
总的来说,VisualBasic具有以下特点:
(1)可视化编程:
用传统程序设计语言设计程序时,都是通过编写程序代码来设计用户界面,在设计过程中看不到界面的实际显示效果,必须编译后运行程序才能观察。
如果对界面的效果不满意,还要回到程序中修改。
有时候,这种编程-编译-修改的操作可能要反复多次,大大影响了软件开发效率。
VisualBasic提供了可视化设计工具,把Windows界面设计的复杂性“封装”起来,开发人员不必为界面设计而编写大量程序代码。
只需要按设计要求的屏幕布局,用系统提供的工具,在屏幕上画出各种“部件”,即图形对象,并设置这些图形对象的属性。
VisualBasic自动产生界面设计代码,程序设计人员只需要编写实现程序功能的那部分代码,从而可以大大提高程序设计的效率。
(2)面向对象的程序设计
VisualBasic应用面向对象的程序设计方法(OOP),把程序和数据封装起来作为一个对象,并为每个对象赋予应有的属性,使对象成为实在的东西。
在设计对象时,不必编写建立和描述每个对象的程序代码,而是用工具画在界面上,VisualBasic自动生成对象的程序代码并封装起来。
每个对象以图形方式显示在界面上,都是可视的。
(3)结构化程序设计语言
VisualBasic是在BASIC语言的基础上发展起来的,具有高级程序设计语言的语句结构,接近于自然语言和人类的逻辑思维方式。
VisualBasic语句简单易懂,其编辑器支持彩色代码,可自动进行语法错误检查,同时具有功能强大且使用灵活的调试器和编译器。
VisualBasic是解释型语言,在输入代码的同时,解释系统将高级语言分解翻译成计算机可以识别的机器指令,并判断每个语句的语法错误。
在设计VisualBasic程序的过程中,随时可以运行程序,而在整个程序设计好之后,可以编译生成可执行文件(.EXE),脱离VisualBasic环境,直接在Windows环境下运行。
(4)事件驱动编程机制
VisualBasic通过事件来执行对象的操作。
一个对象可能会产生多个事件,每个事件都可以通过一段程序来响应。
在用VisualBasic设计大型应用软件时,不必建立具有明显开始和结束的程序,而是编写若干个微小的子程序,即过程。
这些过程分别面向不同的对象,由用户操作引发某个事件来驱动完成某种特定的功能,或者由事件驱动程序调用通用过程来执行指定的操作,这样可以方便编程人员,提高效率。
(5)访问数据库
VisualBasic具有强大的数据库管理功能,利用数据控件和数据库管理窗口,可以直接建立或处理MicrosoftAccess格式的数据库,并提供了强大的数据存储和检索功能。
同时,VisualBasic还能直接编辑和访问其他外部数据库,如dBASE,FoxPro,Paradox等,这些数据库格式都可以用VisualBasic编辑和处理。
VisualBasic提供开放式数据连接,即ODBC功能,可通过直接访问或建立连接的方式使用并操作后台大型网络数据库,如SQLServer,Oracle等。
在应用程序中,可以使用结构化查询语言SQL数据标准,直接访问服务器上的数据库,并提供了简单的面向对象的库操作指令和多用户数据库访问的加锁机制和网络数据库的SQL的编程技术,为单机上运行的数据库提供了SQL网络接口,以便在分布式环境中快速而有效地实现客户/服务器(client/server)方案。
(6)动态数据交换(DDE)
利用动态数据交换(DynamicDataExchange)技术,可以把一种应用程序中的数据动态地链接到另一种应用程序中,使两种完全不同的应用程序建立起一条动态数据链路。
当原始数据变化时,可以自动更新链接的数据。
VisualBasic提供了动态数据交换的编程技术,可以在应用程序中与其他Windows应用程序建立动态数据交换,在不同的应用程序之间进行通信。
(7)对象的链接与嵌入(OLE)
对象的链接与嵌入(OLE)将每个应用程序都看做是一个对象(object),将不同的对象链接(link)起来,再嵌入(embed)某个应用程序中,从而可以得到具有声音、影像、图像、动画、文字等各种信息的集合式的文件。
OLE技术是Microsoft公司对象技术的战略,它把多个应用程序合为一体,将每个应用程序看做是一个对象进行链接和嵌入,是一种应用程序一体化的技术。
利用OLE技术,可以方便地建立复合式文档(compounddocument),这种文档由来自多个不同应用程序的对象组成,文档中的每个对象都与原来的应用程序相联系,并可执行与原来应用程序完全相同的操作。
(8)动态链接库(DLL)
VisualBasic是一种高级程序设计语言,不具备低级语言的功能,对访问机器硬件的操作不太容易实现。
但它可以通过动态链接库技术将C/C++或汇编语言编写的程序加入到VisualBasic应用程序中,可以像调用内部函数一样调用其他语言编写的函数。
此外,通过动态链接库,还可以调用Windows应用程序接口(API)函数,实现SDK所具有的功能。
3.1.3生成帮助文件及版本信息
专业水平的软件通常都带有联机帮助功能。
无论写出来的程序是要给大量的用户使用,还是仅仅局限于公司内部有限的使用者,我们都应该为用户提供详细的、易于理解的联机帮助文档。
微软的HelpWorkshop4.0是一套独立于VisualBasic的用来协助我们创建、运行于32位Windows操作系统下的帮助文件的工具。
使用它我们可以为我们编写的应用程序生成一组帮助文件。
为了是程序显得更具有专业风格,首先可以在其中加入通常的应用程序信息。
这些信息包括公司名称、版本号、修订号以及其他类似信息。
VisualBasic允许你使用APP对象来保存这些信息,APP对象是一个预定义对象,不需要在程序中创建它。
APP对象的大多数属性被应用程序用来提供常规的信息,通过使用这些APP提供的属性,可以在应用程序和用户之间交流重要信息,在项目属性框中可以设置它的属性。
3.2SQLSERVER2000数据库简介
3.2.1数据库的概念
数据库是一种存储数据并对数据进行操作的工具。
数据库的作用在于组织和表达信息,简而言之,数据库就是信息的集合。
计算机的数据库可以分为两类:
非关系数据库(flat-file)和关系数据库(relational)。
关系数据库中包含了多个数据表的信息,数据库含有各个不同部分的术语,象记录、域等。
3.2.2微软SQLSERVER2000简介
SQLServer2000是Microsoft公司推出的SQLServer数据库管理系统的最新版本该版本继承了SQLServer7.0版本的优点同时又比它增加了许多更先进的功能具有使用方便可伸缩性好与相关软件集成程度高等优点可跨越从运行MicrosoftWindows98的膝上型电脑到运行MicrosoftWindows2000的大型多处理器的服务器等多种平台使用
ADO是访问由微软推出的最新.功能最强,且容易使用的数据访问实例(OLEDB)的应用程序接口.我们就是通过它以及创建ActiveX数据对象
3.3VB6.0与SQL数据库二者的连接(ADO)
ADORecordset来访问SQLSEVER2000上的ODBC数据源.使用ADO控件可以方便的在VB6中访问ODBC数据库,但是通过直接放置ADODS控件来获得ADO的数据连接比较麻烦,可以在VB工程中创建一个公共数据模块,将ADO控件的初始化、建立连接、关闭连接等操作都写到函数中,这样就可以在工程的其他模块中共享调用这个ADO连接。
一次完整的ADO调用操作分为如下几个步骤:
(1)打开ADO到数据库的连接,初始化ADORECORDSET集。
(2)通过写入SQL语句执行查询并返回查询结果RECORDSET集;或者可以通过写入SQL语句执行相应数据库操作。
(3)释放RECORDSET集,关闭数据库连接。
需要注意的是,每个动态创建的ADO同时只能被一个过程调用,如果需要进行多表并行操作,可能需要在公共数据模块中建立多个动态ADO。
在本次设计中,由于我只设计了一个主模块,所以直接将ADO控件的初始化、建立连接、关闭连接等操作都写到了最先调用的身份认证函数中,就已经可以满足我对数据库的访问操作.
通过ADO控件使VisualBasic程序与SQLSERVER数据库之间架起了一座桥梁,我们可以很方便的通过修改程序中ADODC的参数,并通过SQL语句来指向数据库的不同部分,从而方便的对数据库进行各种操作.
4系统分析设计
4.1系统功能简介
经过对比真实的银行提款机系统,本系统实现以下内容:
1.可以选择中文和英文两种语言服务
2身份认证
3.密码修改
4.取款.
5.转帐.
6.查询余额.
7.查询交易明细
4.2系统流程图
图1系统流程图
4.3系统开发主要应用技术
WINDOWSXP是时下最流行的电脑操作系统稳定性安全性都非常不错,而随着ATM提款机逐步采用个人电脑,以及性能的升级,WINXP也有了可能成为这些提款机的操作系统,所以本次系统也在WINXP下进行开发。
由于需要开发出前台客户友好界面及后台数据库系统,而对于前台只要能满足其界面开发需要即可,所以我采用了相对简单易用并且功能强大的VB6.0,后台数据库则采用了与之相连方便且功能同样强大的SQLSERVER2000。
采用以上两个开发软件完全能够满足ATM模拟系统的开发需要。
4.3.1系统前台设计
系统主要是由前台(客户操作界面)与后台(数据库)两个部分组成。
前台部分整个代码程序采用一个主模块,在里面定义程序全局变量,把各种功能函数写入其中,每个界面制作一个独立窗体,在各个窗体代码中来调用主模块中的各个函数来,来实现相应功能。
界面部分由于08年奥运会的临近,系统采用了几副有关北京08奥运会的卡通图片,让界面整体突出一种奥运气氛。
通过可爱的卡通动物也实现了友好亲切的操作氛围。
4.3.2后台数据库设计
经过充分考虑,认为系统并不需要非常复杂的数据库系统就能够达到模拟ATM系统的效果,所以建立了一个名为XQQ\ATM的SQL服务器,创建了名为USER的数据库,用户登陆名为sa密码为空,并在ODBC数据源中将USER数据库添加进去。
其中实际上只运用到两个表,一个用户信息表和一个用户操作表。
表1用户信息表
用户信息表(如表1)用以存放用户的卡号,密码,存款金额等信息,由于该系统是为了模拟运用,故安全要求不高,所以密码采用了明文方式存放,便于使用查看。
本次模拟系统并不具有创建新用户的功能,用户信息表上的内容都是为了模拟而手动添加的样本用户。
表2用户操作表
用户操作表(如表3)则用来记录用户在ATM机上所使用的服务,它包括了所有用户对ATM的操作信息,包括时间,操作类型,金额,转帐卡号,成功与否等等。
用户查询明细的功能就是通过搜集检索这张表来实现。
同时管理人员也可以从这张表上很方便的查阅用户使用情况。
当然,真实的银行ATM系统,其后台的数据库系统肯定是十分庞大的一个系统,对保密性的要求也非常的高,在这次的模拟中当然不可能达到那样的要求。
5系统功能的实现
5.1欢迎界面实现
图2欢迎界面
在欢迎界面(如图2)我们可以自由的选择两种语言,分别为我们最常用的中文和英语,在这里主模块中定义了一个非常重要的INT整型变量i,通过i的值来决定所选择的服务。
任意点击一种服务都将进入登陆界面。
PrivateSubCommand1_Click()
i=2当点中文按钮时,i的值就被赋为了2,在后面的操作中,i的值就将始终为2,用以区别所选语言服务
UnloadForm1
Form2.Show
EndSub
PrivateSubCommand2_Click()
i=1点ENGLISH按钮时i的值赋1
UnloadForm1
Form2.Show
EndSub
5.2登陆的实现
在登陆界面有两种语言可以为用户服务,一是中文,而是英文。
选择两种语言的功能和界面背景实际上都是完全一致的,只是语言文字不同。
如图3为选择中文的界面:
图3登陆界面
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 毕业设计模拟ATM 机系统软件的设计与开发 毕业设计 模拟 ATM 系统软件 设计 开发