《Java程序设计》课程设计ATM柜员机.docx
- 文档编号:25071855
- 上传时间:2023-06-04
- 格式:DOCX
- 页数:26
- 大小:649.33KB
《Java程序设计》课程设计ATM柜员机.docx
《《Java程序设计》课程设计ATM柜员机.docx》由会员分享,可在线阅读,更多相关《《Java程序设计》课程设计ATM柜员机.docx(26页珍藏版)》请在冰豆网上搜索。
《Java程序设计》课程设计ATM柜员机
宝鸡文理学院计算机科学系
《Java程序设计》课程设计
设计题目:
ATM柜员机
班级:
2008级本科2班
组长:
组员:
指导教师:
二零一零年六月二十九日
1、项目任务书
1.1设计的目的和要求
1.1.1设计目的
加深学生对面向对象概念以及JAVA面向对象程序设计思想的理解和掌握;使学生熟悉开发一个项目的基本过程,培养学生分析问题和解决问题的能力,增强学生的动手能力。
为后续学习和应用打下一定的基础。
1.1.2设计要求
四个人一组协作完成,组长分工,并负责组内程序联试、文档质量检查及与教师联系。
组内每个组员协调合作完成分工的课程设计部分。
所完成的项目软件需经指导教师检查认可。
1.2设计内容
1.功能需求
(1)用户登陆:
检查用户使用的合法性。
(2)用户取款:
可按1000,500,200,100元面额取款,1天内取款最多不能超过3000元,并记录取款信息。
(3)余额查询:
显示余额。
(4)用户密码修改:
密码只能由字母和数字组成,不少于6个字符。
(5)帮助:
给出作者信息和帮助信息。
2.信息需求
①登陆表
客户账号
密码
②存取款表
客户账号
余额
2、项目开发计划
2.1编写目的
我们的开发目的是在于了解ATM柜员机系统开发项目的流程,把在开发过程中对各项工作的人员、分工、系统资源条件等问题的安排用文档形式记载下来,以便根据本计划开展和检查本项目工作,保证项目开发成功。
2.2项目概述
2.2.1工作内容
1)需求分析
2)软件设计
3)代码设计:
实现ATM柜员机代码
4)系统测试:
测试程序
5)项目总结:
收获
2.2.2主要参加人员
张少婷,宝鸡文理学院计算机科学系08级2班学生,精通java语言,熟悉SQL语言。
宋红艳,宝鸡文理学院计算机科学系08级2班学生,熟悉java语言,熟悉SQL语言。
段严婷,宝鸡文理学院计算机科学系08级2班学生,熟悉java语言,熟悉SQL语言。
王金强,宝鸡文理学院计算机科学系08级2班学生,熟悉java语言,熟悉SQL语言。
2.2.3产品
1)程序
本软件的程序名称是:
ATM
采用的编程语言是:
Java语言
程序模块名称及功能:
ATM.exe:
其功能为启动程序运行
ku.mdb:
其作用为与ATM系统连接的数据库(与需求分析要一致)
2)文件
列出须移交用户的每种文件的名称及内容要点。
项目任务书;
项目开发计划;
项目需求说明书;
项目设计说明书;
项目开发总结报告;
使用说明;
项目源程序代码。
2.2.4验收标准
程序应能够正常运行,满足设计的各项要求。
2.3实施计划
2.3.1工作任务的分解与人员分工
对于项目开发中需要完成的各项工作,从需求分析、概要详细设计、代码实现、测试直到维护,包括文档的编制、审批、打印、分发工作,(用户培训工作,)软件安装工作等,按层次进行分解,指明每项任务的负责人和参加人员。
姓名
职责
参加时间
张少婷
总体设计、编写部分代码,完善代码,美化界面,数据库的连接,程序联试
全天
段严婷
参与ATM界面的设计,编写部分代码,完善部分代码,参与部分文档编写和界面美化
全天
宋红艳
ATM界面的设计,编写部分代码,文档编写,搜集资料,参与美化界面
全天
王金强
参与修改密码窗口的编辑,搜集部分资料
全天
2.3.2接口人员
张少婷负责项目的协调工作,数据库的连接。
2.3.3进度
时间
进度
2010-6-25:
下午14:
30-18:
00
完成开发项目计划书,需求说明书和项目设计说明书
2010-6-26:
全天
开始编程,按照前面的分工各自完成相应模块代码的编写和调试(登陆模块,主模块,修改密码模块,取款模块,返回信息模块,余额查询模块,帮助信息模块)
2010-6-27:
全天
继续程序编写
2010-6-28:
全天
完善代码,美化界面
2010-6-29:
全天
程序联试
2010-6-30:
上午
程序测试,完成项目开发的文档(总结与体会),总结工作,准备接受老师验收
2010-6-30:
下午
老师验收,完成项目开发
2.4计算机系统支持
1).操作系统环境:
WindowsXP;
2).软件开发平台:
EclipseSDK;
3).数据库开发平台:
MicrosoftOfficeAccess应用程序;
2.5参考资料
[1].Java2实用教程耿祥义、张跃平清华大学出版社出版。
[2].SQLServer2000实用教程陈联诚、陈旭东、区士超、
电子工业出版社。
3、项目需求说明书
3.1编写目的
本文档的目的在于确定用户的各项功能需求,阐明ATM柜员机必须具有的功能和性能,是本系统后续总体设计和详细设计的基础和依据。
3.2需求概述
3.2.1功能需求
结合任务书和对需求的实际了解,我们确定将要建立ATM柜员机取款系统。
ATM是一种高度精密的机电一体化装置,代替银行柜台人员的工作。
ATM柜员机是面向特定的某些对象的,所以用户到ATM取款机进入系统操作时应该进行身份验证,用户通过用户名和对应密码验证进入ATM取款机系统后,能根据自己的需要进行取款、存款、转账、查询余额、修改、帮助等操作。
持卡人可以使用信用卡或储蓄卡,办理取款、查询余额、转账、存款,修改密码等业务。
3.2.2数据需求
对ATM柜员机系统管理数据的描述,例如:
客户账号:
文本型,可由字符和数字组成,长度为3——15位,为登陆界面的用户名。
密码:
文本型,由6——16位的数字和字符组成,为登陆界面的登录密码。
余额:
长整型,长度255.取款、存款时都与余额进行相加或
相减。
4、项目设计说明书
4.1编写目的
本文档的目的在于确定实现《ATM柜员机》各项功能模块的详细设计,是本系统后续编码的基础和依据。
4.2系统总体结构设计
如图所示:
退出
密码不正确,
请重新输入!
主界面
ATM登陆界面
取款
帮
助
转
账
查询余额
余额
修改
密码
存款
4.3数据库结构设计
通过对系统需求的分析,可以建立user数据库包含下表
登陆表
字段名称
字段类型
字段宽度
是否允许为空
是否主键
说明
客户账号
文本
Notnull
是
用户账号
密码
文本
255
Notnull
否
用户密码
存取款表
字段名称
字段类型
字段宽度
是否允许为空
是否主键
说明
客户账号
文本
Notnull
是
用户账号
余额
长整型
255
Notnull
否
账户余额
4.4详细设计
首先建立一个名为“ATM”的工程文件,然后在工程文件中建立一个名为pkg的包,在包中建立9个文件,实现取款、余额查询、修改密码、存款、帮助、转账等功能,然后开始以下设计:
(一)登陆模块
为了保证系统的安全,在登录界面中输入正确的用户名和密码,才能进入主界面,否则退出应用系统。
开始运行程序,出现ATM登陆界面;
【1】登陆界面
如果输入的用户名不存在,则弹出如下图“提示对话框”:
如果输入的密码错误,则弹出如下图“提示对话框”:
输入正确的用户名和密码才能进入;
ATM欢迎界面
(二)主控模块
单击登陆界面“确定”按钮弹出主界面,选择所需要的服务;
主界面包括取款、余额查询、修改密码、存款、帮助、转账六个模块,在主界面中通过单击相应的按钮调用相应的功能模块.选择“退出”按钮结束程序。
【2】主界面
1.单击主界面“取款”按钮选择取款,弹出取款界面;
【3】取款界面
选择所需金额后,取款成功;
取款成功界面
2.单击主界面“查询余额”按钮,弹出余额界面;
如果账户余额不足1000元,则弹出如下图“消息对话框”:
如果账户余额不足500元,则弹出如下图“消息对话框”:
如果账户余额不足200元,则弹出如下图“消息对话框”:
如果账户余额不足100元,则弹出如下图“消息对话框”:
【4】余额查询界面
3.单击主界面“修改密码”按钮,弹出修改密码界面;
【5】密码修改界面
如果输入的旧密码错误,则弹出如下图“消息对话框”:
如果两次输入的密码不一致,则弹出如下图“消息对话框”:
只有输入正确的旧密码和相同的新密码才弹出修改成功对话框;
4.单击主界面“存款”按钮,弹出存款界面;
【6】存款界面
存款成功后,弹出如下图“消息对话框”:
5.单击主界面“帮助”按钮,弹出客户帮助界面;
【7】客户帮助界面
单击客户帮助界面“使用方法”按钮,弹出操作对话框;
【8】使用方法界面
6.单击主界面“转账”按钮,弹出转账界面;
【9】转账界面
转账成功后,弹出如下“消息对话框”:
5、项目开发总结报告:
张少婷(组长)
5.1概述
本次项目地开发意义在于让本组成员了解完整的项目开发流程和代码实现功能的重要性。
本次项目为《ATM柜员机》,我们通过登录界面输入正确的姓名与密码(我们在数据库建了一个表,通过数据库与登录界面的链接实现),然后可以进入主界面,可以进行取款,查询余额,修改密码,存款,转账等操作,,起到保护用户隐私作用。
主要负责总体设计、编写部分代码,完善代码,美化界面,数据库的连接,程序联试
5.2收获与体会(开发过程、结果、出错原因的分析)
这次课程设计我们做的是ATM柜员机系统,主要是服务于客户取款、查询余额等需求。
系统中采用的技术主要有:
JDBC数据库连接技术、利用Eclipse集成开发环境。
虽然系统的基本功能都已实现,但还是存在系统不稳定等多个问题尚待解决。
这个系统的开发除了我们的努力外,也得到了老师和同学的很大帮助。
我们正在做系统的过程中遇到了很多问题,有的是知识存储不足,有的是考虑不够周全,之所以能够顺利实现基本功功能,离不开老师和同学的大力相助。
事实证明,只靠自己是不能顺利完成一套功能完整的系统的,必须充分利用团队的力量。
开发一套系统,最重要的是细心,并不是一定要做到面面俱到,但也要充分考虑到客户的需求和现实意义,不管什么系统,只用运用到实际应用中,才具有先现实意义。
所以在准备工作中要正确分析社会需求了解现实应用,画出流程图,把大体框架做好,然后再逐一细化。
我们不可能做到面面俱到,但一定要做到步步扎实,作为一个程序编程人员,要保持清醒的头脑,以现实为依据,让自己的每一行代码都能实现自己的意义。
我认为这个收获应该说是相当大的。
一开始还可以,做到后来发现很多程序都是不完整的,这让我们伤透了脑筋。
很多次都是前一天调试好的程序第二天一开机又遇到了新的问题,看着别的小组都弄得有模有样了,可是我们却问题越来越多,新的问题不断出现,其中一个原因就是数据库基础不扎实,SQL语句没有搞清楚。
参考书毕竟只是一个参考,设计这种东西最后还是要靠自己动脑筋。
最后我们大家一起齐心协力,从平时做的实验﹑老师上课的举例﹑书本上的知识以及老师的辅导和其他同学的帮助下终于完成了。
通过这次课程设计,我收获的不仅仅是课程上的知识得到实际应用,还有编程的基本习惯和开发系统时应注意的流程,再次感谢老师的辛勤指导和我们组员的全力配合。
5.3致谢
短短五天的实践课程设计,使我们每一个人都有太多的收获。
对我而言,深刻地意识到团队合作的重要性,在团队中发挥个人才能,为了集体的成功添砖加瓦。
首先我要感谢我们的指导老师谢俊屏老师、赵鹏飞老师和任晓莉老师的精心指导、耐心辅助及系领导的殷切关心,还有其他同学的帮助,最后还要感谢我们组的每个组员的积极配合,谢谢他们!
项目开发总结报告:
段严婷(组员)
5.1概述
本次项目地开发意义在于让本组成员了解完整的项目开发流程和代码实现功能的重要性。
本次项目为《ATM柜员机》,我们通过登录界面输入正确的姓名与密码(我们在数据库建了一个表,通过数据库与登录界面的链接实现),然后可以进入主界面,可以进行取款,查询余额,修改密码,存款,转账等操作,,起到保护用户隐私作用。
参与ATM界面的设计,编写部分代码,完善部分代码,参与部分文档编写和界面美化。
5.2收获与体会(开发过程、结果、出错原因的分析)
在这次设计中遇到了很多实际性的问题,在实际设计中才发现,书本上理论性的东西与在实际运用中的还是有一定的出入的,所以有些问题不但要深入地理解,而且要不断地更正以前的错误思维。
一切问题必须要靠自己一点一滴的解决,而在解决的过程当中你会发现自己在飞速的提升。
对于ATM柜员机系统,主要是解决程序设计中的问题,而程序设计是一个很灵活的东西,它反映了你解决问题的逻辑思维和创新能力,它才是一个设计的灵魂所在。
因此在整个设计过程中大部分时间是用在程序上面的。
很多子程序是可以借鉴书本上的,但怎样衔接各个子程序才是关键的问题所在,这需要对系统的结构很熟悉。
通过这次课程设计我也发现了自身存在的不足之处,在运用到实践的过程中仍有意想不到的困惑,经过一番努力才得以解决。
这次课程设计让我充分认识到团队合作的重要性,只有分工协作才能保证整个项目的顺利完成。
另外在课程设计的过程中,当我们碰到不明白的问题时,指导老师总是耐心的讲解,给我们的设计以极大的帮助,使我们获益匪浅。
因此非常感谢老师的教导。
通过这次设计,我懂得了学习的重要性,了解到理论知识与实践相结合的重要意义,学会了坚持、耐心和努力,这将为自己今后的学习和工作做出了最好的榜样。
我觉得作为一名计算机专业的学生,这次课程设计是很有意义的。
更重要的是如何把自己平时所学的东西应用到实际中。
应该说这是通过我们小组成员的共同努力和动脑完成的,虽然内容并不是很复杂,但是我们觉得设计的过程相当重要,学到了很多,收获了很多。
小组人员的配合﹑相处,以及自身的动脑和努力,都是以后工作中需要的。
所以我认为这次的课程设计意义很深,和其他3位同学的共同学习﹑配合努力的过程也很愉快,感谢老师的耐心辅导。
5.3致谢
虽然是紧促短暂的五天实践课程开发,但我们每一个人受益匪浅。
对我而言,
增强了我们的交流能力和与团队协作的能力,加深了相互之间的了解。
而且深刻的意识到团队精神的重要,在团队中发挥个人才能,彰显团队实力。
首先对我们的指导老师谢俊屏、赵鹏飞老师和任晓丽老师的精心指导,耐心辅助及系领导的关心,谢谢他们!
项目开发总结报告:
宋红艳(组员)
5.1概述
本次项目地开发意义在于让本组成员了解完整的项目开发流程和代码实现功能的重要性。
本次项目为《ATM柜员机》,我们通过登录界面输入正确的姓名与密码(我们在数据库建了一个表,通过数据库与登录界面的链接实现),然后可以进入主界面,可以进行取款,查询余额,修改密码,存款,转账等操作,,起到保护用户隐私作用。
参与ATM界面的设计,编写部分代码,文档编写,搜集资料,参与美化界面。
5.2收获与体会(开发过程、结果、出错原因的分析)
我们正在做系统的过程中遇到了很多问题,有的是知识存储不足,有的是考虑不够周全,之所以能够顺利实现基本功功能,离不开老师和同学的大力相助。
事实证明,只靠自己是不能顺利完成一套功能完整的系统的,必须充分利用团队的力量。
开发一套系统,最重要的是细心,并不是一定要做到面面俱到,但也要充分考虑到客户的需求和现实意义,不管什么系统,只用运用到实际应用中,才具有先现实意义。
所以在准备工作中要正确分析社会需求了解现实应用,画出流程图,把大体框架做好,然后再逐一细化。
我们不可能做到面面俱到,但一定要做到步步扎实,作为一个程序编程人员,要保持清醒的头脑,以现实为依据,让自己的每一行代码都能实现自己的意义。
这次课程设计让我充分认识到团队合作的重要性,只有分工协作才能保证整个项目的顺利完成。
另外在课程设计的过程中,当我们碰到不明白的问题时,指导老师总是耐心的讲解,给我们的设计以极大的帮助,使我们获益匪浅。
因此非常感谢老师的教导。
通过这次设计,我懂得了学习的重要性,了解到理论知识与实践相结合的重要意义,学会了坚持、耐心和努力,这将为自己今后的学习和工作做出了最好的榜样。
我觉得作为一名计算机专业的学生,这次课程设计是很有意义的。
更重要的是如何把自己平时所学的东西应用到实际中。
5.3致谢
为期五天的Java课程设计实践,使我有太多的收获。
我深刻地意识到团队合作的重要性。
首先我要感谢我们的指导老师谢俊屏老师、赵鹏飞老师和任晓丽老师的精心指导、耐心辅助及系领导的殷切关心,还有其他同学的帮助,最后还要感谢我们组的每个组员的积极配合,谢谢他们!
项目开发总结报告:
王金强(组员)
5.1概述
本次项目地开发意义在于让本组成员了解完整的项目开发流程和代码实现功能的重要性。
本次项目为《ATM柜员机》,我们通过登录界面输入正确的姓名与密码(我们在数据库建了一个表,通过数据库与登录界面的链接实现),然后可以进入ATM柜员机中取款,查询余额,修改密码,转账,存款等,主要为实现ATM柜员机的功能的实现。
主要负责项目策划,编写修改密码,帮助界面,并对界面进行最终美化,测试程序。
5.2收获与体会(开发过程、结果、出错原因的分析)
我们这次课程设计的名称是“ATM柜员机”,看起来是一个很普通很常见的项目,平时我们都用它,而现在让我们来做这个项目感觉还挺难的,知道自己的开始的时候我完全不明白我们的这个项目该什么地方开始做,感觉很迷茫,经过指导老师的帮助,指引我们很快进入了正常的工作中。
首先是要写计划书,我们信心很大,预计实现的功能很多,我们分工合作。
我们开始了程序代码的编写,这时候才知道原来并不是我们想象的那么简单,在编写的过程中我们处处遇到困难,但是看见别的同学都很卖力的做着,我们也就想办法解决我们的问题,我们组员互相讨论,和别的组的同学相互学习.随着代码量的增加,我们自己的自我修改的能力得到了本质的提高。
代码多写是没有坏处的。
而其中感触最深的则是由于自己不小心,和对于逻辑运算的理解不够透彻,在经常判断的语句中括号少打或多打,直接造成了ATM的运行的BUG。
把人是找得头晕眼花。
经常一个小错误要花费一两个小时来查找那里错了。
仔细,是我在自我修改时候铭记的第一个词。
有时候就让老师来帮忙,在老师的帮助下我们解决了好多问题。
代码编好了,面临的一个个陌生的问题就是连接数据库,因为大家对这方面都还不了解,老师就讲解,给我们讲这方面的知识,最后我们也把数据库连上了。
感觉真是很欣慰。
虽然是一个很小的课程设计,但我学到了很多东西,首先让我意识到自己所掌握的知识还是很少,对知识的学习还是不够深入,这使我明白了在以后的学习中一定要努力,同时我也感到了团队合作的力量的强大,有些困难自己解决不了和组员一起就可以解决,老师也很辛苦,最后在指导老师们辛勤的工作和帮助下,我们完成了自己的作业,这此课程设计的制作对我们以后的学习和工作都有很大的帮助。
另外剩下一个感受很深的东西就是基础。
其实很多东西我们都是学过。
并且在别人的提示下可以很快的说出来。
但是当没人给你当这个引子的时候,我们常常就手足无措。
这就是基础不牢固的重要表现。
我也相信没人不知道基础的重要性,所以五天的项目结束后,我个人的感觉,对于基础的东西我比以前掌握得好多了。
但是只是相对,我还需要对基础知识进行近一步的巩固,复习。
对于基础的东西有自己的理解无论怎样,ATM柜员机结束以后,我们比之以前是成长了很多。
我会努力在后面的其他课程中努力学习。
5.3致谢
虽然是紧促短暂的五天实践课程开发,但我们每一个人受益匪浅。
对我而言,深刻的意识到团队精神的重要,在团队中发挥个人才能,彰显团队实力。
感谢我们的指导老师谢俊屏老师的精心指导,耐心辅助及系领导的关心,谢谢他们!
6、使用说明
1.安装JDK
从http:
//J
安装到指定路径,我选择的安装路径是D:
\jdk1.5.0。
右键单击“我的电脑”图标,在弹出的菜单中单击属性,然后依次为-高级-环境变量,在环境变量窗口添加配置如下环境变量:
变量:
JAVA_HOME变量值:
D:
\jdk1.5.0
变量:
PATH变量值:
D:
\jdk1.5.0\bin;
2.配置ODBC数据源:
控制面板--管理工具--数据源(ODBC),打开ODBC数据源管理器之后,单击“添加”按钮,在出现的创建数据源界面中,选择MicrosoftAccess驱动程序,在接下来的界面中选择E:
\目录下的ku.mdb数据库,数据源命名为user,单击确定,ODBC数据源设置完成。
3.使用EclipseSDK运行主程序:
输入用户名,密码,单击“确定”按钮进入相应的操作界面进行操作。
例如:
用户名001密码200801
7、项目源程序代码
详见系统程序源代码。
8、成绩评定表
课程设计题目
ATM柜员机
专业
计算机科学与技术
年、班级
2008级本
(2)班
姓名
学号
课程设计成绩
组长
张少婷
200896014077
成
员
宋红艳
200896014046
段严婷
200896014065
王金强
200896014049
指导教师评语:
指导教师:
(签名)
日期:
年月日
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Java程序设计 Java 程序设计 课程设计 ATM 柜员机