[毕业论文]基于JAVA的火车票售票系统.doc

上传人:仙人指路1688 文档编号:4019128 上传时间:2023-04-01 格式:DOC 页数:46 大小:1.35MB
返回 下载 相关 举报
[毕业论文]基于JAVA的火车票售票系统.doc_第1页
第1页 / 共46页
[毕业论文]基于JAVA的火车票售票系统.doc_第2页
第2页 / 共46页
[毕业论文]基于JAVA的火车票售票系统.doc_第3页
第3页 / 共46页
[毕业论文]基于JAVA的火车票售票系统.doc_第4页
第4页 / 共46页
[毕业论文]基于JAVA的火车票售票系统.doc_第5页
第5页 / 共46页
点击查看更多>>
资源描述

《[毕业论文]基于JAVA的火车票售票系统.doc》由会员分享,可在线阅读,更多相关《[毕业论文]基于JAVA的火车票售票系统.doc(46页珍藏版)》请在三一办公上搜索。

1、山东交通学院2010届毕业生毕业论文(设计)题目:火车票售票系统院(系)别信息工程系 专 业计算机科学与技术 班 级计算062 学 号060811234 姓 名郑太文 指导教师张勇 徐海云 二一年六月原 创 声 明本人郑太文郑重声明:所呈交的论文“火车票售票系统,是本人在指导老师徐海云、张勇的指导下开展研究工作所取得的成果。除文中特别加以标注和致谢的地方外,论文中不包含任何其他个人或集体已经发表或撰写过的研究成果,对本文的研究做出重要贡献的个人和集体均已在文中以明确方式标明,本人完全意识到本声明的法律后果,尊重知识产权,并愿为此承担一切法律责任。 论文作者(签字): 日期: 年 月 日 摘要当

2、今时代交通很发达,空中通道、海上通道、陆上通道应有尽有,四通八达。作为陆路交通的龙头老大火车,正发挥着自己不可替代的作用。几乎每个人与火车交通都有着千丝万缕的关系。正因为对当前火车售票的系统有着莫大的兴趣,同时也供有相同兴趣爱好的朋友参考,因此决定开发一个火车售票系统,解决现在面临的挑战。通过对火车信息的具体分析,得到一条分析售票的具体路线,售票员通过不同方式查询得到结果最后把查询到想要的票售给乘客。并且过程中可以售全国各地站点的车票,乘客可以在某一个站方便地买到别的站点的车票。通过整个系统的设计,最终得到了比较完善的系统,售票员可以通过登录后实现售票和退票等功能。整个设计时一个比较繁琐的过程

3、,本来火车站等信息在全国来说就是一个庞大的数据库,要把这所有的数据充分利用与活用,并不见得是一件很容易的事。关键词:售票系统,票价,站点,车厢类型AbstractWell-developed transportation era, air channels, sea lanes, land access everything, extending in all directions. As the leader in land transport - trains, are playing an irreplaceable role in their own. Almost every man

4、 and train transport are inextricably linked. Because of the current train ticketing system has a great interest. Also,as a reference for the same interests of the people, therefore decided to develop a train ticketing system,account for the challenges what we now facing.Through detailed analysis of

5、 information on the train, get a specific line of ticket, the conductor results in different ways by the last query you want to check the tickets sold to passengers. And the process can be sold throughout the site tickets, passengers can stand in one convenient site to buy other tickets.Through the

6、design of the entire system, end up a relatively perfect system, after the conductor can be achieved by logging features such as ticketing and refunds. The design of a more complicated process, especially in the way the database, the people a little bit confusing. Originally the railway station and

7、other information in the country as a whole is a huge database, which should make full use of all data and usage, and is not necessarily an easy thing. Key words:Train ticketing system, Fare, Site, Train type目录前言11火车票售票系统概述21.1火车票售票系统的概念21.2系统概述21.2.1设计目的和意义21.2.2适用范围22需求分析32.1系统开发目标32.2可行性分析32.3系统说

8、明32.4系统功能简介43概要设计53.1系统主界面设计53.2功能要求63.2.1系统功能结构图63.2.2系统功能模块说明73.3数据库分析与设计83.3.1数据库需求分析83.3.2数据库概念结构设计83.3.4数据库逻辑结构设计94详细设计114.1软件要求与运行环境114.1.1软件要求114.1.2运行环境114.2系统文件管理模块114.2.1界面设计114.2.2设计思路124.2.3主要代码及实现124.3列车查询和售票模块124.3.1界面设计124.3.2设计思路134.3.3主要代码及实现134.4退票模块164.4.1界面设计164.4.2设计思路174.4.3主要代

9、码及实现174.5帮助模块194.5.1界面设计194.5.2设计思路204.5.3主要代码及实现205系统的调测与修改235.1软件测试的目的和原则235.2登录信息的测试235.3修改密码模块的测试245.4查询和售票模块的测试275.5退票模块的测试37结 论44致 谢45参考文献46前言随着计算机技术的发展,人们对计算机智能化的需求越来越大,对软件的实用性、速度等性能的要求也越来越高。未来火车站的发展趋势是完全自动化的售票信息查询,网络订票,智能化订票,而且随着计算机的普及,信息处理量的逐渐扩大,手工处理方式已经远远不能满足人们管理活动的需要,各种工作都逐渐由手工转为自动化,将使许多复

10、杂、繁琐、且需要很多人力的工作变得简单。在本此毕业设计中,由于时间与水平的关系,当然不可能做到这样的程度,只不过是模拟一下由售票员来操作的售票系统而已。火车站售票管理是本系统的根本任务,通过实现票务信息的计算机管理,以提高工作效率。实现计算机管理的最佳技术就是数据库技术。我们可以利用数据库将整个火车站的票务情况存入计算机,再配置上功能丰富的用户接口,以满足用户需求。一个火车站售票信息管理系统应达到的目标是提供及时、广泛的信息服务,加快信息检索的效率,实况灵活的查询,减轻管理人员制作报表和统计分析的负担,且系统规模不太大但又要保证支持日常工作的要求,以便系统应易于扩充,方便日后统一联网与管理,提

11、高管理水平。该软件解决对于众多乘客对于查询的功能和实现售票退票的功能。采用对SQL Server数据库的访问,实现查询功能,售票能读出数据库中车票信息,包括票价等,能显示车票上的基本信息。退票功能能计算要求退的车票是否符合退票的标准,符合标准的根据20%的手续费用收取进行差额退回,车票信息重返数据库。火车票售票管理是一件比较复杂但又非常重要的事情,它是涉及国家铁路运输的正常工作、国民经济的发展和人民生活水平质量的大事情。火车售票涉及到许多内容,有登陆用户的帐号密码问题,有乘客超载问题,有经济结算问题,有订票管理问题。因此,本毕业设计就是专门解决这些问题的。但如上所述,由于铁路火车票务管理的复杂

12、性,本毕业设计与开发也仅是一个尝试性的工作,但它很有启发性,对于研究开发该类程序可以起一个抛砖引玉的作用。1火车票售票系统概述1.1火车票售票系统的概念火车票售票系统是对是使用计算机管理的方式来代替以前手工处理的工作。实现了乘客和售票员之间简单快速的售票操作交替过程。此外,售票员可以根据乘客的需要进行各类车次车站的查询,使乘客及时的了解到必要的车次信息。对于乘客的付款过程,售票员的操作也不再繁琐,系统将自动计算出该付的金额以及需要找回的金额。1.2系统概述本系统运用IDE和SQL7等工具,开发实现的模块有登陆模块、按车次查询模块、按车站查询模块、售票模块、退票模块、口令修改模块等。登陆模块实现

13、售票员通过正确密码登录系统才能进行各项操作;按车次查询模块实现输入车次全称或者是车次代号的一部分既能检索出符合条件的车次信息;按车站查询模块可以查询出所有经过车站的的车次;售票模块实现售票功能;退票模块实现退票功能;口令修改模块实现用户的密码修改功能;同时本文还分析了软件工程、数据库技术的相关理论。本系统具有良好的可移植性和可修改性。系统简单,易于操作,对相关的具有售票业务的企业具有一定的使用价值。1.2.1设计目的和意义在火车以主要交通工具的今天,有一个良好的售票系统显得是如此的重要,对于火车各站点的售票系统以作为国有机密文件保存,不可能有开放的源代码提供十分完善的火车售票系统的所有实现的功

14、能,甚至是连火车票的数据库,都不太可能得到全而且新的数据。基于此,个人决定作为兴趣爱好,研究火车的售票系统的实现过程,尽管最终实现的不太可能与当前火车站应用的系统相媲美,但作为一个爱好,也应做到尽可能的完善。希望该作品的实现能给爱好相同课题的朋友带来点帮助。1.2.2适用范围本系统适用于对火车票的售票系统有兴趣的朋友,基于系统基本实现了火车票售票过程中的基本操作,对于更好的了解当前国内铁路部门的的列车管理有一定帮助。2需求分析需求分析是系统开发早期的一个重要阶段,是任一软件开发成功的基础。需求分析的目的是确定用户的需求。2.1系统开发目标设计并实现火车票售票系统,使车站售票工作更加系统化、规范

15、化和自动化,从而达到提高管理效率的目的。(1)利用计算机系统实现车票出售以及车次车站查询管理。(2)操作简单,查询方便。(3)系统扩充容易,移植性好。(4)友好的用户界面,既面向系统开发者,又面向用户。2.2可行性分析可行性分析研究8的目的就是用最小的代价在尽可能短的时间里确定问题是否能解决,通过分析系统的规模与目标,研究与此类似的系统后,本人具体从以下三方面考虑。(1)技术可行性本系统是采用IDE3作为开发工具的,它具有界面友好、操作简便、速度较快等优点,并对于数据库操作与管理、可视化开发环境、面向对象程序设计等方面的要求不是很高,本人已经系统地学习过利用Java语言1实现可视化界面的面向对

16、象编程,为本系统的设计与实现提供了技术可行性。(2)经济可行性火车票售票系统是一个大型的管理系统,而我个人是实现了其中部分功能,在开发时也需要软件开发人员花费一定的时间和精力,但真正应用起这样的软件,给铁路部门带来的利益却是不可估量的,节省了许多人力,物力上的开支,使信息管理工作变繁为简,使其更加合理化、规范化。工作效率的提高就意为着整体水平的提高,是非常值得投资的。而且本系统开发过程中所使用的软件都是开源软件,无需购买,在一定程度上节省了不必要的花费。(3)操作可行性本系统是基于IDE环境平台开发的,移植性强,易于操作。而且本系统还采用了可视化面向对象的工具开发,其窗口、界面简洁易懂,所以系

17、统在操作上是可行的。2.3系统说明本系统主要考虑了以下几点内容:(1)用户登录:保证软件的实用性,只有具有售票员的身份通过正确登录才能进入系统。(2)方便的数据输入性能,良好的人机界面,将工作人员从繁琐的手写统计中解放出来。(3)灵活的查询性能,快速实现车次车站的查询。(4)对车票进行出售及退回的管理。2.4系统功能简介本系统可以细化为四个功能:查询、售票、退票以及修改用户密码。(1)查询的主要功能为:用户可以根据需要选择按车次或者是按车站查询,二者皆可以查询出符合条件的若干组信息。(2)售票的主要功能为:用户通过查询得到的信息选择自己需要的车次车站进行车票的出售。(3)退票的主要功能为:对于

18、乘客在本次列车在当前站点为出发前的车票可以退票,退票要收取一定的手续费。(4)修改用户密码的主要功能是对当前登录的用户进行密码的修改,新密码可以为数字或者是字母以及一些常用符号,新密码位数不得少于6位。3概要设计3.1系统主界面设计系统登录界面设计如图3.1所示:图3.1 系统登录界面Fig.3.1 The Log System Interface系统主界面就是要求用户输入用户名和密码,通过正确认证点击“登录”按钮才能进入系统主界面如下图3.2所示,点击“取消”按钮推出当前系统。图3.2 系统主界面Fig.3.2 The main System Interface3.2功能要求3.2.1系统功

19、能结构图系统功能结构图如下图3.3所示:图3.3 系统的功能结构图Fig.3.3 Structure of the System3.2.2系统功能模块说明(1)系统管理模块本系统可以通过点击【文件】菜单下的【退出】子菜单,执行整个系统的退出操作;点击【文件】菜单下的【注销】子菜单,执行重新登录的操作;点击【文件】菜单下的【修改密码】子菜单,执行当前用户的密码修改操作。(2)售票退票模块在主界面中点击【操作】菜单下的【售票】子菜单,执行车票的查询及出售操作;点击【操作】菜单下的【退票】子菜单,执行退票的相关操作。(3)帮助模块在主界面中点击【帮助】菜单下的【关于】子菜单,即可获得当前系统的一些简

20、单介绍。3.3数据库分析与设计如何设计出一个能够满足用户各项当前与可预见的应用要求、性能良好的数据库是数据库应用系统设计中的一个核心问题。它可以提高数据存储效率,保证数据的完整一致性。数据库的设计9主要包括3个阶段:数据库需求分析、数据库概念结构设计和数据库逻辑结构设计。3.3.1数据库需求分析因为数据库系统应用于火车票售票系统,所以必须充分满足此管理系统的各种要求。此系统要求对于数据的更新操作颇为苛刻,每次卖出车票都得对数据库进行更新,并且对于车次发车时间在当前时间之前的车次记录也要实时更新。通过以上分析,数据库设计必须满足以下几点:(1)记录车次基本的信息。(2)记录车站的基本信息。(3)

21、记录用户的基本信息。(4)记录根据车票类别规定的票价信息。3.3.2数据库概念结构设计根据数据库需求分析,可以得到如图3.4所示的实体-关系模型8。登录查询退票售票员售票图3.4实体-关系模型Fig.3.4 Entities Model3.3.4数据库逻辑结构设计数据库的概念结构设计完毕后,就可以将上面的数据库概念结构转化为某种数据库系统所支持的实际数据类型,也就是数据库的逻辑结构。根据鞋类信息管理系统的功能要求,选取SQL Server 2000作为后台数据库。与本系统有关的数据表如表3.13.4所示:Runlist表记录所有车次经过的站点,站站查询主要通过此表进行查找满足条件的列车信息。表

22、3.1列车路线总表Tab. 3.1 Total list for train table字段名数据类型主键否TrainIDvarchar 10是StationIDsmallint 2是StationNamevarchar 40否Arrivesortsmallint 2否Arrivedatevarchar 10否StartTimevarchar 6否StopTimevarchar 6否Distancesmallint 2否PriceHardsmallint 2否PriceHard2smallint 2否PriceSoftsmallint 2否PriceSoftberthsmallint 2否Ti

23、cketPrice表是记录各车厢类别票价的表,按每公里计算,两地之间的的票价根据里程和车厢类别的不同而不同。表3.2 车票价格表Tab. 3.2 Ticket price Table字段名数据类型主键否IDint 4是TrainTypenvarchar 50否SeatTypenvarchar 50否pricenumeric 9否TrainsInfo表记录记录车次的一些基本信息,包括始发站,终点站,发车时间,到达时间全程里程等等。表3.3 列车信息表Tab. 3.3 Trains information Table字段名数据类型主键否TrainIDvarchar 10是TrainTypeVarc

24、har 20否BeginStationIDsmallint 2否BeginStationVarchar 40否EndStationIDsmallint 2否EndStationVarchar 40否BeginTimevarchar 5否EndTimevarchar 5否Timesvarchar 10否Distancesmallint 2否Stationnumsmallint 2否Seatnum0int 4否Seatnum1int 4否Seatnum1int 4否userInfo表记录了有用户的ID号和密码,用户在登录时输入的ID和密码只有和数据库中的匹配是才能正常登录进入系统。表3.4 用户信

25、息表Tab. 3.4 User information Table字段名数据类型主键否ProductIdVarchar 50是NameChar 20否PrincipalChar 20否DepartmentVarchar 50否UnitsVarchar 50否UnitpriceFloct 8否CommentVarchar 50否4详细设计4.1软件要求与运行环境4.1.1软件要求运行环境是Windows 2000 以上;系统开发语言是Java;系统开发平台是Netbeans IDE 6.1;后台数据库是SQL Server 2000。4.1.2运行环境安装SQL Server 2000并运行服务

26、管理器。本系统利用JDBC连接的数据库。4.2系统文件管理模块4.2.1界面设计系统的文件菜单下有修改密码,注销,退出选项。整个窗体示意图如图4.1所示。图4.1 系统文件管理模块Fig.4.1 System Exit Module4.2.2设计思路对系统文件菜单下各选项的设计思路如下,在主页面菜单栏下设置一个下拉菜单4,然后为其添加相应事件,系统运行后会自动的显示出系统的总界面,然后如果用户想要进行密码修改或者重新登录或者退出程序,那么就可以点击文件菜单选项选择相应的子菜单进行操作。4.2.3主要代码及实现定义一个JmenuItem5的三个对象modpwd、logoff、EX,然后分别调用各

27、自的ActionPerformed(java.awt.event.ActionEvent evt)方法,为对象modpwd、logoff、EX添加事件,再实现修改密码,注销,退出等相应的功能。点击子菜单“注销”选项时,后台调用方法logoffActionPerformed(),该方法中dispose();实习关机当前创口,使用new Main().setVisible(true);重新启动软件。点击子菜单“退出”选项时,后台调用方法EXActionPerformed (),方法中System.exit(0);实现退出系统的功能。点击子菜单“修改密码”选项时,后台调用方法modpwdAction

28、Performed (),方法中对修改密码的界面进行调用。4.3列车查询和售票模块4.3.1界面设计售票和查询模块主要功能是:可以查询所需列车信息和对查询出的车票进行出售,界面设计如图4.2所示:图4.2列车查询和售票模块Fig.4.2 Trains Ticket Query and Selling Module4.3.2设计思路对火车票的所有信息进行检索,找出满足条件的车票信息,在页面上进行显示。查询可以按照车次和车站进行查询。对于查询出来的结果可以选择需要的车厢类别和车票类别会自动计算单价进行售票。“显示总金额”、“显示找零”、“打印车票”等按钮帮助实现售票功能的全过程。4.3.3主要代码

29、及实现本模块中主体操作都在“查询”按钮中,对于查询按钮的操作实现需要与数据建立连接10。通过对界面变量值的getText()值的判断然后进行数据查询找到合适数据。其中CON.trainid(trid1);语句是调用类conn中的方法实现与数据库的连接,通过模糊查询找到零个或者多个列车号的信息。如果没有找到相应的信息,JOptionPane.showMessageDialog(this,不能满足要求!);语句将提示用户没能找到用户输入的相应信息。如果找到了相应的信息,界面上变量为table的表格将通过setValueAt方法对各项列车属性进行添加。CON.getall(sta, got,this

30、.getDate();语句是站站查询的入口点,通过连接数据哭找到经过两站间的所有车次信息显示在表格中。如果没能找到车次,则JOptionPane.showMessageDialog(this,对不起,您的输入有误或没有直达车次!);语句将提示用户不能找到相应的结果。4.4退票模块4.4.1界面设计退票模块主要功能是:对已经出售的车票进行退回处理,当然要求退回的车票必须在该车次还没出发前。退票模块的整个窗体示意图如图4.3所示。图4.3 退票模块Fig.4.3 Tickets Back up Module4.4.2设计思路首先获得系统当前的日期和当前的时间2,再把获得的系统日期时间和界面输入的日

31、期和车票出发的时间比较,要是车票日期时间在当前系统日期时间之前后,则满足退票条件输入票单价后,点击“计算”按钮就可算出应付的手续费和应退款,最后再确认是否要退票,点击“退票”按钮即可完成退票操作,点击“取消”按钮可以取消当前操作。4.4.3主要代码及实现在菜单栏中选择退票选项的主要代码包括:设置面板的Visible属性,调用退票界面的类,jLayeredPane4.setVisible(true);语句调用了退票界面的类。退票界面中点击“计算”按钮实现功能的主要代码包括:对于界面得到的一些数据进行检查,例如要是为空就提示要进行输入的操作等。还是通过JOptionPane.showMessage

32、Dialog()来实现。通过查找得到数据库中的列车信息,通过当前时间和车票出发时间的比较,要是当前时间在列车出发时间之后的话,就不能实现退票操作,否则就计算手续费,按20%计算,最后将算出的应退还款和手续费在界面上显示。退票界面中点击“确定退票”按钮实现功能的主要代码包括:通过连接数据库将退回的票信息返回到数据库中,CON.backtic(TRID,NUM,getDate();语句能修改数据库中的车票信息。退票界面中点击“取消”按钮实现功能的主要代码如下:/退票窗口中的取消按钮private void jButton1ActionPerformed(java.awt.event.ActionE

33、vent evt) jLayeredPane3.setVisible(true); jLayeredPane4.setVisible(false); 4.5帮助模块4.5.1界面设计帮助模块的主要功能:向用户显示当前系统的一些基本信息,以及声明系统的版权。图4.4 帮助模块Fig.4.4 Help Module4.5.2设计思路利用Jtext控件显示文本内容,将文本属性设置为不可编辑。4.5.3主要代码及实现调用文本对话框,代码实现如下:new help().setVisible(true);能调用help类,显示帮助界面。具体文本实现代码是自动生成的。5系统的调测与修改5.1软件测试的目的和

34、原则软件测试就是在软件投入运行之前,对软件需求分析、软件设计和编码的最后复审,是保证软件质量的关键步骤6。如果给软件测试下定义,可以这样讲:软件测试是根据软件开发各阶段的规格说明和程序内部结构而精心设计的一批测试用例,(即输入数据和预期的输出结果),并利用这些测试用例去运行程序,以发现程序错误的过程。软件测试的目的是想以最少的时间和人力找出软件中潜在的各种错误和缺陷,如果成功的实施了测试,就能够发现软件中的错误。测试的附带收获是,它能够证明软件的功能和性能与需求说明相符。此外,实施测试收集到的测试结果数据为可靠性分析提供了依据。软件测试应遵循以下一些原则:(1)应有程序设计者以外的人员参加测试

35、。(2)应选择不合理的输入数据和非法输入数据。(3)测试应从“小规模”开始,逐步转向“大规模”。(4)应在测试工作真正开始以前较长一段时间内进行测试计划。(5)测试用例应由两部分组成:输入数据和预期输出结果。(6)所有的测试都应追溯到用户需求。(7)不仅要检验程序是否能实现预期功能(性质),还应检查程序是否做了不应该做的工作。(8)修改以后的程序必须进行重新测试。本系统测试方案以界面为测试的基础,在测试过程中,依靠软件与其运行环境之间的接口来选择和产生测试数据,而不管软件的具体需求和具体实现细节。包括软件输入,输出数据的类型、取值范围等等。测试项目主要包括对软件各个模块的测试,测试数据覆盖面广

36、。由于测试项目较多,现列出其中几项在测试过程中出现的问题以及解决的方法。5.2登录信息的测试系统进入登录界面后,要求用户输入ID号码和密码,当密码和ID号码不匹配时,会提示错误信息。该测试的目的是保证登录是合法的,对于非法用户绝对予以禁止。经测试结果如图5.1所示:图5.1 登录信息测试图Fig.5.1 Logging Information Test如果用户连续三次输入错误时,系统将在提示错误信息后点击“确定”按钮后将自动退出。经测试结果如图5.2所示:图5.2 三次密码错误测试图Fig.5.2 Three Wrong Password Test5.3修改密码模块的测试该测试的目的是保证密码

37、修改过程不会产生错误。要求用户原密码输入正确看,并且两次正确输入满足要求的新密码。当其中的要求不满足时,就会有提示信息。经测试结果如图5.3所示:图5.3 原密码错误测试图Fig.5.3 Old Password Wrong Test该测试的另一个目的是防止防止用户输入的新密码过于简单,不安全。经测试结果如图5.4所示:图5.4 新密码过于简单测试图Fig.5.4 New Password Simple Enough Test当原密码输入正确,新密码符合要求时,点击“确认”按钮确认修改密码,会有相关提示信息提示修改密码成功。经测试结果如图5.5所示:图5.5 修改密码成功测试图Fig.5.5

38、Change Password Success Test5.4查询和售票模块的测试该测试的目的是保证能够按照用户的需求查询出结果或者正常出售车票。该模块的各种条件检查较多,以下分情况测试。当选择站站查询时,如果没能从数据库中查找到从起始站到到达站的车次信息,就会有提示信息。测试结果如图5.6所示:图5.6 无直达车测试图Fig.5.6 No Through Train Test当用户需要选择车次以便进行售票操作时,如果选择行为空时,会有相应的提示信息。经测试结果如图5.7所示:图5.7选择行为空测试图Fig.5.7 Selected Row is Null Test售票时可以选择车厢类别,如果

39、选择的车厢类别在所要出售的车次上没有的话,会有提示信息。经测试结果如图5.8所示:图5.8 车厢类型测试图Fig.5.8 Carriage Type Test当售票时出现实付款比要求付的款少时,有提示信息。经测试结果如图5.9所示:图5.9 实付款不足测试图Fig.5.9 Payment Not Enough Test当乘客要求一次性购票超过二十张时,系统会提示不能一次性购票超过二十张的信息。经测试结果如图5.10所示:图5.10 车票数量超标测试图Fig.5.10 Tickets Too Many Test 当乘客要求购的票比当前数据库中车票数要多时,会有车票不足的提示信息。经测试结果如图5

40、.11所示:图5.11 车票数量超标测试图Fig.5.11 Tickets Too Many Test 当用户还没有输入款项前就点击“打印车票”时,系统会提示要求先付款。经测试结果如图5.11所示:图5.12 先付款后打印车票测试图Fig.5.12 First Pay for and then Print Test当用户输入的实付款小于等于0时,会有提示信息要求用户输入大于0的数字。经测试结果如图5.13所示:图5.13 实付款大于零测试图Fig.5.13 Payment Compare 0 Test当用户输入的车票数量小于等于0时,会有提示信息要求用户输入大于0的数字。经测试结果如图5.14

41、所示:图5.14 车票数量大于零测试图Fig.5.14 Tickets Number Compare 0 Test正常操作时,点击“打印车票”按钮后,会显示车票窗口,接下来点击“确定”按钮会提示售票成功。经测试结果如图5.15所示:图5.15 售票成功测试图Fig.5.15 Tickets Salling Success Test5.5退票模块的测试该测试的目的是保证退票过程车票重新返回数据库并且准确找回乘客应有的金钱。输入的车次有误的情况下,会有提示信息弹出。经测试结果如图5.16所示:图5.16车次测试图Fig.5.16 Train ID Test数量输入不是正数的情况下,测试结果如图5.

42、17所示:图5.17车票数量测试图Fig.5.17 Tickets Number Test票单价不是正数的情况下,测试结果如图5.18所示:图5.18票单价测试图Fig.5.18 Tickets Price Test当要求退票的车次的发车日期时间在当前日期之前,即要求退的车票车次已经发车时,系统提示不能退票。相关测试如图5.19所示:图5.19发车时间测试图Fig.5.19 Trains Times Test当用户在没有点击“计算”按钮直接要求退票时,系统会有消息提示。相关测试如图5.20所示:图5.20先计算后退票测试图Fig.5.20 First Count and then Ticket

43、 Backup Test当退票时以上错误条件均未满足,就能通过点击“确定退票”成功退票。相关测试如图5.21所示:图5.21成功退票测试图Fig.5.21 Ticket Backup Success Test结 论毕业设计是每个大学生在大学的最后一门课程,是理论与实践的一次很好的结合,是对大学所学知识的考验,也是提高动手能力的绝好机会,它是大学生毕业后能更好投身于工作或继续深造的过渡阶段。本次毕业设计建立在IDE平台上,使用了SQL Server 2000数据库,大学课程中已经学习过了IDE的理论知识,也学习了关于数据库的各种操作。论文从需求分析、概要设计、详细设计和测试四个阶段阐述了火车票售

44、票系统的开发过程,设计并实现了科学的信息管理模式。本系统已经完成车票查询,出售,退回以及修改密码等基本处理。对于庞大的火车信息数据库,本系统很好地处理了这方面的问题,灵活应用数据库,更是火车票系统显得灵活化。在车票查询方面,用户可以根据需要选择车次查询或者站站查询,而对于二者的查询都使用了模糊查询,更使得用户有了更多的选择余地。甚至对于车票上的座位,也是系统自动计算得到的,完全实现了一体化的目标。在设计的不同阶段都会有不同的问题出现,要解决这些问题就要查阅资料,同时用到的工具不一定都学过,所以要边学边用。在这个时候学习方法是很重要的,其中实例是最好的学习资料,搞懂一个实例才能学习到一门语言的精

45、髓,才懂得怎样把书上的知识应用到实际的编程当中。论文主要介绍了本课题的开发背景,所要完成的功能和开发的过程。重点的说明了系统设计的思想、难点和解决方案。另外,在数据库的设计方面,本人采用了SQL Server代理中的作业功能,使得数据库能够做到自动更新的更能,对于火车票这个大的数据库,自动更新也是不可避免的。这次毕业设计过程中本人将理论结合实际,学到了很多课本以外的东西,从而也提高了动手能力。但由于时间的限制和技术的不熟练,导致软件中还存在很多不足之处并需要进一步的研究和改善。例如,在打印车票功能上,只是简单的显示了车票的样式,并没有实现与外界打印的连接,也就是说不能通过打印机打印出车票来。需要改进的地方主要在车票和数据库的实时更新上,列车信息是实时更新的,而本系统并没有设置高级管理员去管理这些信息,只有数据库管理员去通过修改数据库才能修改列车信息。本人希望自己在毕业设计中所学习到的技术、思想和精神能够

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公文档 > 其他范文


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号