课程设计火车票网上售票系统Word下载.docx
《课程设计火车票网上售票系统Word下载.docx》由会员分享,可在线阅读,更多相关《课程设计火车票网上售票系统Word下载.docx(34页珍藏版)》请在冰豆网上搜索。
(教师填写)
指导老师:
(签字)
2011年月日
第一章项目开发计划书
1.1引言
1.1.1编写目的
此项目开发计划书的编写主要是为了给开发《火车站网上订票系统》做主要的规划和整合,在开发过程中起到引导作用,以及给使用者提供简要的说明。
1.1.2背景
火车站市场的管理和规范问题,是困扰我们多年的一个老问题,也是政府管理中的一个难点,订票是客运业务中的一个最基本的业务,表面上看,它只是火车站业务的一个简单的部分,但是它涉及到管理与客户服务等多方面,因此,过去传统的售票方式已经不能满足现代客运业务流量剧增的客观要求,这就要求一种全新的订票方式——网上订票,来缓解订票高峰时期的客运压力,并为用户提供方便快捷的订票服务。
目前火车站售票的状况是仅靠手工操作,以现有的工作人员很难应付车票订购高峰时刻的大量数据处理问题。
同时还会出现由此带来的大量记录存放和管理所带来的问题。
本次设计拟开发一个火车站网上订票系统,可以降低工作人员的工作量,提高工作人员的工作效率,同时方便顾客订票。
1.2项目概述
1.2.1工作内容
《火车站网上订票系统》针对的用户是需要查询火车票信息、预订火车票以及退订火车票的人;
该系统需要实现如下主要功能以及相关说明:
火车票信息查询:
站与站的火车票信息查询、火车车次的查询以及用户已订票的信息查询。
火车票预订:
在规定的有效时间段内,预订火车票,但要收取一定的手续费。
火车票退订:
在车票的有效期之内,能够对所预订的火车票进行退订,对于退还的金额有一定比例的扣除。
1.2.2主要参加人员
组长:
张鹏
组员:
蔡珀瑛伍佳钟佳尹唐文
1.2.3产品
1、系统开发计划书
2、系统需求说明书
3、系统设计说明书
4、测试计划
5、一个能正确运行的可执行程序,源程序清单
1.2.4服务
安装、维护和运行支持从使用该系统开始,维护期限为一年。
1.2.5验收标准
各个功能均能正常使用,满足用户的需求。
1.2.6本计划的批准者和批准日期
批准者:
颜富强
批准日期:
2011年6月6日
1.3实施计划
1.3.1工作任务的分配与人员分工
张鹏任务:
(1)系统总的开发计划书
(2)系统的总体设计
(3)组织小组讨论(4)项目开发进度的管理
(5)团队的组织和协调
蔡珀瑛任务:
系统的可行性分析
钟佳任务:
系统的需求分析
伍佳任务:
数据库的设计以及系统的开发
尹唐文任务:
1.3.2进度
系统规划阶段:
项目标志性事件开始到完成
开发阶段:
项目开发计划书的完成6.6-6.7
需求分析阶段:
系统需求说明书完成6.8-6.10
设计阶段:
系统设计说明书6.11-6.15
编码实现:
项目的形成6.16-6.23
测试阶段:
测试计划6.24-6.27
移交阶段:
项目的递交6.28-6.30
1.4支持条件
1.4.1计算机系统支持
操作系统需要windows2000以上;
操作系统环境:
windowsxp/windows7;
数据库需要MicrosoftAccess95;
数据库驱动:
Microsoft公司的sqljdbc驱动;
前台开发工具:
VisualBasic6.0;
前台界面类型:
windows窗体应用程序。
第二章可行性分析
2.1可行性研究前提
2.1.1要求
(1)主要功能:
为游客提供火车票信息查询以及订票服务,方便火车站的售票工作,提高火车站的服务质量和服务效率
(2)性能要求:
游客提供的信息必须及时的反映在火车站的工作平台上。
售票系统的订单必须无差错的存储在火车站的主服务器上。
对服务器上的数据必须进行及时正确的刷新。
(3)输出要求:
数据完整,详实。
(4)输出要求:
简捷,快速,实时。
(5)安全与保密要求:
服务器的管理员享有对火车车次信息库及火车票票信息库和售票票信息库的管理与修改。
售票员只享有对订票信息库的部分修改(写入与读出)。
(6)完成期限:
预计六个月。
2.1.2目标
系统实现后,大大提高火车站的火车票售票服务效率。
降低售票服务中的错误发生率,减少信息交流的烦琐过程及其带来的开销。
2.1.3决定可行性的因素
技术可行,现有技术可完全承担开发任务。
操作可行,软件能被原有工作人员快速接受
2.2技术可行性分析
2.2.1系统简要描述
在火车站中的终端是安装了WindowsXP的PC机,主要目的是向火车站的服务器传递数据。
当顾客在火车站进行咨询时,终端向服务器发出查询请求,服务器根据火车信息库的实时数据,向终端发送数据,显示在终端的屏幕上。
当顾客向售票员售票时,终端向服务器发出发出查询售票请求,服务器核对后,存入售票票信息库,并修改售票信息库,核对后,传送机票确认表单,终端打印出机票。
2.2.2系统主要功能流程图
图1系统流程图
2.3经济上可行性
本系统其他应用软件、硬件系统也易于获得.因此,开发成本较低。
而引进使用本系统后,与传统方式相比,具有高效率、低成本、高质量的特点,可以节省不少人力、物力及财力。
所以,从经济的角度来看,该系统可行。
2.4操作可行性
系统采用菜单式,实现用户与数据库的交互,界面简洁友好,操作方便。
2.5开发工具的选择
开发工具:
VisualBasic6.0
数据库环境:
MicrosoftAccess95
系统环境:
MicrosoftWindowsXP/MicrosoftWindows7
系统实现依靠相对熟悉的VB语言和MicrosoftAccess95数据库系统,其基本操作实质还是对数据库进行添加、删除、查找等操作。
2.6结论
综上所述,火车售票系统在技术非常成熟,主客观条件都具备,且具有良好的效益,因此开发此系统是可行的。
为了提高售票效率,方便人们查找火车票信息,建议立即开发。
第三章需求分析
3.1市场需求分析
3.2系统功能性需求分析
3.2.1功能划分
本系统的目标使用人群是广大的火车乘客,建成后将有助于缓解火车票售票人员的工作量。
因此本系统首先需要实现用户对火车票的查询的查询功能,包括查询火车的票价和座位号等,查询到所需车票的用户还可以进行预订,预订时需填写用户的必要信息包括姓名、身份证号、收票地址等。
预订好车票的用户因某些因素需要退票的,在火车发车前的规定时间内,还可以进行退票。
3.2.2功能描述
3.2.2.1注册功能模块
对于想利用本系统进行火车票查询的用户,首先需要注册成为系统的用户方能进行查询操作,系统保存用户的注册信息,在注册用户时仅需要输入由用户自定义的用户名称和密码,注册成功后页面随即转入主页(登录界面)。
3.2.2.2登录功能模块
用于用户的登录,对于已经在本系统注册的用户可以根据注册时所用的用户名和密码登录到本系统,但是用户名和密码必须正确,若是不正确的用户名和密码,系统便进行错误提示。
系统确认用户名和密码后便跳转到查询界面。
3.2.2.3查询功能模块
查询分为站站查询,车次查询以及已订车票的信息查询。
所有上网用户都可以使用本系统的查询功能,对车票信息有个基本的了解。
用户在查询界面输入框输入所要查询的出发站和目的站,或者是火车车次,系统则会根据输入的信息进行搜索,并给出搜索结果,用户还可点击搜索结果查看火车票的详细信息。
3.2.2.4订票功能模块
用户在查询界面查询到自己所满意的车票时,可以进行网上订票操作,所订车票将自动添加到用户的个人信息当中,方便用户日后进行管理。
3.2.2.5管理功能信息模块
只有登录后的用户才可以管理自己的信息,在个人信息框中可以查看到用户已订的车票和用户注册时所填的个人信息。
用户由于某些个人因素需要退票的还可以进行退票操作。
3.3系统非功能性需求
3.3.1可用性
本系统的潜在用户群具有的身份、背景可能会有较大的差异,因此对本系统的可操作性和易用性都提出了很高的要求。
过于复杂的操作将不可避免的损失大量的用户,本系统应能让任何用户都不必借助任何操作手册或相关的系统帮助就能顺利地进行各种操作。
3.3.2可靠性
系统建成后预计将有大量的用户在此查询火车票信息并进行大量的预订操作,因此对系统的稳定性也有比较高的要求。
一旦系统不能正常工作,会给用户群带来巨大的损失也将导致失去用户对系统的信任。
3.3数据字典
通过系统需求分析,对网上订票系统编制数据字典如下:
各主要数据流的定义如表1至表4所示:
表1
表2
表3
表4
3.4实体-联系图
根据需求分析,可以画出系统E-R图如下:
图2火车站网上订票系统E-R图
第四章系统设计
4.1总体设计
4.1.1需求概述
本系统的目标一方面为减少火车站售票人员在售票高峰期的工作压力,另一方面为用户提供一个查询火车票信息和预定火车票的平台。
因此,本系统需要实现火车票信息的查询功能,火车票预定和火车票退订的功能。
而为了让用户不丢失或者及时的修改信息,用户需要在系统进行简单的注册,登录,即系统还需实现用户的注册、登录功能。
4.1.2客户关系管理系统功能设计
根据系统需求分析和系统功能模块结构图来看,该系统应具备如下基本功能:
●列车信息查询
●已预订火车票信息查询
●预订火车票
●退订火车票
本火车站网上订票系统可划分为信息查询、网上订票、取消订票三个部分。
其中信息查询又可分为车次查询和订单查询两个部分。
其层次图如图3.1所示。
其功能模块结构图如下:
图3程序功能模块图
图4站站查询系统流程图
图5车次信息查询系统流程图
图6订票系统流程图
图7退票系统流程图
4.1.3过程设计
4.1.1程序流程图
本系统主界面为用户设计了三个功能操作以供选择:
查询,订票,退票。
另外,为方便用户,还将“退出系统”也单另列了出来,用户可以根据需要触发不同事件。
其处理流程如图4.1所示。
1.系统管理员以及系统用户操作处理流程
图8系统管理员及系统用户操作流程图
2.列车信息查询流程
图9列车信息查询流程图
3.退票处理流程
图10退票处理流程图
4.2数据库设计
4.2.1数据库详细设计
数据库文件名:
db_train
(1)列车信息表结构(db_info)
列名
数据类型
允许Null值
发车站
文本
否
到达站
车次
车型
运行时间
里程
参考票价
Long
余票信息
发车-到达
主键为:
没有主键
(2)注册用户表结构(login)
描述
Usr
用户名
Pwd
用户密码
真实姓名
身份证号码
电话
取票地址
是
票价
发车-到时
(2)管理员登陆表结构(masterlogin)
密码
4.2.2数据结构与程序关系
程序各个模块都要与数据库系统联系。
物理数据结构主要用于各模块之间函数的信息传递。
接口传递的信息将是以数据结构封装了的数据,以参数传递或返回值的形式在各模块间传输。
4.3功能模块的设计与实现
4.3.1会员注册模块
用户如果想要注册,则按要求输入信息,包括用户名,密码,确认密码。
还要进行身份信息验证,包括真实姓名,身份证号,联系手机,收票地址。
输入完后点击“注册”,则系统自动转入登陆界面。
注册界面如下:
图11注册界面
具体方法代码实现如下:
PrivateSubCommand1_Click()
IfNotText1.Text="
"
AndNotText2.Text="
AndNotText3.Text="
AndNotText4.Text="
AndNotText5.Text="
AndNotText6.Text="
AndNotText7.Text="
AndText2.Text=Text3.TextThen
Data1.RecordSource="
select*fromloginwhereusr='
&
Text1.Text&
"
'
Data1.Refresh
IfNotData1.Recordset.EOFThen
MsgBox"
对不起用户名已经被占用!
重新输入"
vbOKOnly+vbInformation,"
提示"
Text1.Text="
Text2.Text="
Text3.Text="
EndIf
IfData1.Recordset.EOFThen
Data1.Recordset.addnew
Data1.Recordset.Fields(0)=Text1.Text
Data1.Recordset.Fields
(1)=Text2.Text
Data1.Recordset.Fields
(2)=Text4.Text
Data1.Recordset.Fields(3)=Text5.Text
Data1.Recordset.Fields(4)=Text6.Text
Data1.Recordset.Fields(5)=Text7.Text
Data1.Recordset.Fields(6)="
Data1.Recordset.Fields(7)="
Data1.Recordset.Fields(8)="
Data1.Recordset.Fields(9)=0
Data1.Recordset.Fields(10)="
Data1.UpdateRecord
Text4.Text="
Text5.Text="
Text6.Text="
Text7.Text="
恭喜,注册成功!
Me.Hide
Form_Unload(0)
Else
您输入或者提供的信息不正确,请您重新输入!
EndSub
PrivateSubForm_Load()
Data1.DatabaseName=App.Path&
\db_train.mdb"
PrivateSubForm_Unload(CancelAsInteger)
Train_ts.Show
PrivateSubTimer1_Timer()
IfCheck1.Value=1Then
Command1.Enabled=True
IfCheck1.Value=0Then
Command1.Enabled=False
PrivateSubTimer2_Timer()
Then
Label21.Caption="
√"
IfNotText2.Text="
Label22.Caption="
IfText3.Text=Text2.TextAndNotText3.Text="
Label23.Caption="
IfNotText4.Text="
Label12.Caption="
IfNotText5.Text="
Label14.Caption="
IfNotText6.Text="
Label15.Caption="
IfNotText7.Text="
Label16.Caption="
4.3.1站站查询
站站查询是用户在界面输入框输入想要查询的列车起始终点站城市名,即可查询相应的列车信息。
具体实现如下:
图12
代码:
AndText3.Text="
ListView1.ListItems.Clear
OnErrorResumeNext
Data1.Recordset.MoveFirst
select*fromtb_infowhere发车站='
and到达站='
Text2.Text&
sign=0
DoWhileNotData1.Recordset.EOF
SetitmX=ListView1.ListItems.Add()
IfData1.Recordset.RecordCount>
0Then
itmX.Text=Data1.Recordset.Fields(0)
itmX.SubItems
(1)=Data1.Recordset.Fields
(1)
itmX.SubItems
(2)=Data1.Recordset.Fields
(2)
itmX.SubItems(3)=Data1.Recordset.Fields(3)
itmX.SubItems(4)=Data1.Recordset.Fields(4)
itmX.SubItems(5)=Data1.Recordset.Fields(5)
itmX.SubItems(6)=Data1.Recordset.Fields(6)
itmX.SubItems(7)=Data1.Recordset.Fields(7)
itmX.SubItems(8)=Data1.Recordset.Fields(8)
Data1.Recordset.MoveNext
sign=1
Loop
Ifsign=0Then
抱歉,没有查询到从"
到"
的列车信息!
4.3.2车次查询
单独的车次查询是在没有输入列车起始终点站城市名情况下,输入列车车次,点击查询即可显示所有该次列车的详细信息。
图13
代码如下:
IfText1.Text="
AndText2.Text="
select*fromtb_infowhere车次='
Text3.Text&
抱歉,