火车站售票管理系统的设计实现分析Word文档下载推荐.docx
- 文档编号:17333532
- 上传时间:2022-12-01
- 格式:DOCX
- 页数:41
- 大小:355.43KB
火车站售票管理系统的设计实现分析Word文档下载推荐.docx
《火车站售票管理系统的设计实现分析Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《火车站售票管理系统的设计实现分析Word文档下载推荐.docx(41页珍藏版)》请在冰豆网上搜索。
铁路信息化建设目前主要集中在搞好铁路运输生产管理上,加快计算机调度系统建设,完善客票发售与预订系统,搞好各地信息系统的结合,实现资源有效利用,信息共享。
其总体目标是:
形成具有国际水平的铁路信息化基础通信平台,实现各部门各系统之间的信息数据共享,互联互通;
建成车,机,工,电,辆各部门调度控制,安全生产,运输指挥的现代化保障体系。
为铁路运输各部门提供所需的管理信息资源和强有力的决策支持。
通过现代客货营销手段和电子商务手段,带动铁路运输经济发展,大幅度提高运输效益。
建立建全与信息化相适应的管理体制。
我国目前的铁路信息化总体程度居国领先,国际先进水平。
1.2开发目的和意义
铁路客票发售和预订系统经过几年的建设,取得了很大的进展。
火车站售票系统的推广使用,大大方便了旅客购票,也预示着我国铁路售票系统正日趋合理与完善,并且具有良好的交互界面,容易被用户所接受。
本系统基于铁路售票系统订票业务的基本流程,通过模拟售票员与客户之间的基本操作,实现了查询、订票、退票等基本功能,同时利用计算机网络,通过网络与售票系统,为用户提供方便快捷的订票服务,使得售票服务更为便捷效率,使铁路售票系统应用更为广泛,但由于铁路火车票务管理的复杂性,本设计与开发也仅是一个尝试性的工作,希望为铁路售票业务,铁路客运及运输发展更为稳定,迅猛尽微薄之力。
1.3完成情况
本项目针对火车站的售票实际情况,按照软件工程的结构化设计思想,经过项目的可行性研究和需求分析、总体设计、详细设计,以及编码实现和调试等步骤设计开发了火车站售票管理系统。
并运用数据流图和数据字典、E-R图和数据库逻辑结构、层次图、系统流程图、以及程序流程图,对该系统的数据需求、数据库、系统软件结构、系统流程、以及处理过程等进行了分析和设计。
该系统基于铁路售票系统订票业务的基本流程,通过模拟售票员与客户之间的基本操作,可以满足火车站网上售票的基本要求,包括查询、订票、退票等三个方面的功能。
该系统能运用到火车站售票的工作中,根据用户的需求,设置其权限,并快捷方便的为用户提供服务。
2.开发技术及方法
本系统是一个基于B/S构架的系统。
系统的开发和应用目的是使售票活动能够在多个不同的地点进行并且能够使旅客通过系统查询到自己所需要的出行信息。
基于B/S结构售票系统的具体实现的功能:
查询,订票,退票,等三大模块,并研究B/S结构在网络中面临的安全问题及提出相应的解决方案。
2.1开发环境和开发工具
伴随着Internet/Intranet技术的发展,开发基于Web的应用程序势在必行,数据库技术更是需要和Web数据相结合,才有更为广阔的前景。
ASP.Net作为微软推出的新兴Web应用程序开发技术,在数据库应用方面发挥着越来越重要的作用。
本系统的开发平台是ASP.NET2000,数据库选择用的SQLServer2000,语言使用JAVA,开发工具是Eclipse。
2.2技术及方法
2.2.1B/S模式
B/S结构即浏览器和服务器结构。
它是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构;
它是一次性到位的开发,能实现不同的人员,从不同的地点,以不同的接入方式(比如LAN,WAN,Internet/Intranet等)访问和操作共同的数据库;
它能有效地保护数据平台和管理访问权限,服务器数据库也很安全。
在JAVA这样的跨平台语言出现之后,B/S架构管理软件更是方便、快捷、高效。
2.2.2.NET
.NET是MicrosoftXMLWebservices平台。
XMLWebservices允许应用程序通过Internet进行通讯和共享数据,而不管所采用的是哪种操作系统、设备或编程语言。
Microsoft.NET平台提供创建XMLWebservices并将这些服务集成在一起。
对个人用户的好处是无缝的、吸引人的体验。
而且.NET平台的基础架构.NET框架(Framework),采用统一的命令集支持各种编程语言。
从而消除各种异类框架之间的差异,提供强的跨语言继承性、错误处理和调试功能。
2.2.3ASP.NET
ASP.NET是把基于通用语言的程序在服务器上运行。
不像以前的ASP即时解释程序,而是将程序在服务器端首次运行时进行编译,这样的执行效果,当然比一条一条的解释强很多。
因为ASP.NET是基于通用语言的编译运行的程序,所以它的强大性和适应性,可以使它运行在Web应用软件开发者的几乎全部的平台上。
通用语言的基本库,消息机制,数据接口的处理都能无缝的整合到ASP.NET的Web应用中。
ASP.NET同时也是language-independent语言独立化的,所以,你可以选择一种最适合你的语言来编写你的程序,或者把你的程序用很多种语言来写,现在已经支持的有C#(C++和Java的结合体),VB,Jscript。
ASP.NET使运行一些很平常的任务如表单的提交客户端的身份验证、分布系统和配置变得非常简单。
ASP.NET使用一种字符基础的,分级的配置系统,使你服务器环境和应用程序的设置更加简单。
因为配置信息都保存在简单文本中,新的设置有可能都不需要启动本地的管理员工具就可以实现。
这种被称为"
ZeroLocalAdministration"
的哲学观念使ASP.NET的基于应用的开发更加具体和快捷。
一个ASP.NET的应用程序在一台服务器系统的安装只需要简单的拷贝一些必须的文件,不需要系统的重新启动。
多处理器环境的可靠性ASP.NET已经被刻意设计成为一种可以用于多处理器的开发工具,它在多处理器的环境下用特殊的无缝连接技术,将很大的提高运行速度。
即使你现在的ASP.NET应用软件是为一个处理器开发的,将来多处理器运行时不需要任何改变都能提高他们的效能,但现在的ASP却做不到这一点。
自定义性和可扩展性ASP.NET设计时考虑了让开发人员可以在自己的代码中自己定义"
plug-in"
的模块。
这与原来的包含关系不同,ASP.NET可以加入自己定义的组件。
程序的开发从来没有这么简单过。
安全性基于Windows认证技术和每应用程序配置,可以确保你的原程序是绝对安全的。
ASP.NET的语法在很大程度上与ASP兼容,同时它还提供一种新的编程模型和结构,可生成伸缩性和稳定性更好的应用程序,并提供更好的安全保护。
可以通过在现有ASP应用程序中逐渐添加ASP.NET功能,随时增强ASP应用程序的功能。
ASP.NET是一个已编译的、基于.NET的环境,把基于通用语言的程序在服务器上运行。
将程序在服务器端首次运行时进行编译,比ASP即时解释程序速度上要快很多.而且是可以用任何与.NET兼容的语言(包括VisualBasic.NET、C#和JScript.NET.)创作应用程序。
3.系统分析
3.1可行性分析
该阶段通过对系统目标的初步调研和分析,提出可行性方案并进行论证。
我们在这里主要从技术可行性,经济可行性和操作可行性三方面进行分析。
3.1.1经济可行性
开发该系统所需的相关资料可以通过已存在的网上购票系统进行调查采集,所需的其他应用软件、硬件软件也易于获得。
因此,开发成本低。
而引进使用本系统后,与传统方式相比,具有高效率、低成本、高质量的特点,可以节省不少人力、物力及财力。
所以,从经济的角度来看,该系统可行。
3.1.2技术可行性
开发工具:
Eclipse
数据库环境:
SQLServer2000
系统环境:
MicrosoftWindows2000或以上版本
系统实现依靠相对熟悉的Java语言和SQLServer2000数据库系统,其基本操作实质还是对数据库进行添加、删除、查找、等操作,暂不存在技术问题。
3.1.3操作可行性
系统采用菜单式,实现用户与数据的交互,界面简洁友好,操作方便。
用户只需对订票流程和业务了解即可,不需掌握数据库等相关知识。
3.2需求分析
该系统是利用ASP.NET2000平台开发,数据库采用的是SQLSever2000,旨在开发一个具有开放体系结构的、易扩充的、易维护的、具有良好人机交互界面的火车售票系统,为用户提供满意的火车票订票服务。
3.2.1功能需求
火车站售票管理系统的参与者:
◆乘客:
查询、预订车票的人员。
◆售票员:
具体负责乘客的车票订单。
◆票务管理员:
负责更新车票信息。
◆系统管理员:
系统管理员负责系统的员工信息管理,会员信息管理以及系统的维护等。
根据以上分析,创建系统参与者,系统参与者如图3.1所示:
图3.1系统参与者
(1)管理员用例图
火车站系统中的所有人都是管理员,管理员是一个抽象的概念,他包含的行为是所有管理员的共同行为。
管理员在本系统过合法的身份验证能够修改自身的信息和密码。
根据以上分析,系统管理员用例图如图3.2所示:
图3.2系统管理员用例图
(2)系统管理员用例图
系统管理员能够通过本系统进行如下活动:
①管理会员信息:
系统管理员能够对当前注册到本系统的客户进行整理。
②管理售票员信息:
系统管理员能够管理当前系统中的售票员信息,如添加、删除和修改售票员信息等。
③系统设置:
系统管理员可以对系统进行必要的设置和维护,如升级等。
根据以上分析,系统管理员用例图如图3.3所示:
图3.3系统管理员用例图
(3)票务管理员用例图
票务管理员能够通过本系统进行如下活动:
添加车票信息、删除车票信息、修改车票信息等。
根据以上分析,票务管理员用例图如图3.4所示:
图3.4票务管理员用例图
(4)乘客用例图
对于火车票售票系统,乘客可以登录和查询。
其下为乘客的用例图,即乘客可以进行的活动。
根据以上分析,乘客用例图如图3.5所示:
图3.5乘客用例图
3.2.2数据需求
(1)数据录入和处理的准确性
数据的输入是否正确是数据处理的前提,错误的输入会导致系统输出的不正确和不可用,从而得不到想要的结果。
数据的输入来源是手工输入。
所以系统地界面要让用户容易使用,如果用户出现误操作,系统能简单明了的给出中文提示。
(2)数据的一致性和完整性
由于系统的数据是共享的,在不同的代售点中,车次信息是共享数据,所以如何保证这些数据的一致性,是系统必须解决的问题。
要解决这一问题,要求系统能保证数据的一致性,在数据录入处控制数据的去向,并且要求对数据库的数据完整性进行严格的约束。
对于输入的数据,要为其定义完整性规则,如果不能符合完整性约束,系统应该拒绝该数据,并给出出错提示。
(3)数据的共享与独立性
整个售票系统的数据是共享的。
然而,从系统开发的角度上看,共享会给设计和调试带来困难。
因此,应该提供灵活的配置,使不同权限的用户都可以正常进行操作。
3.2.3性能需求
为了保证系统能够长期、安全、稳定、可靠、高效的运行,本系统应该满足以下的性能需求。
(1)系统的准确性和及时性
系统处理的准确性和及时性是系统的必要性能。
系统应能及时而且准确的根据用户权限及所输入的信息做出响应。
由于本系统的查询功能对于整个系统的功能和性能完成举足轻重。
作为系统的很多数据来源,而车票的数量和时间又影响用户的决策活动,其准确性和及时性很大程度上决定了系统的成败。
在系统开发过程中,必须采用一定的方法保证系统的准确性和及时性。
(2)系统的开放性和可扩展性
售票系统在开发过程中,应该充分考虑以后的可扩充性。
例如车次信息的临时或者永久性改变,用户查询的需求也会不断的更新和完善。
所有这些,都要求系统提供足够的手段进行功能的调整和扩充。
而要实现这一点,应通过系统的开放性来完成,即系统应是一个开放系统,只要符合一定的规,可以简单的加入和减少系统的模块,配置系统的硬件。
通过软件的修补、替换完成系统的升级和更新换代。
(3)系统的易用性和易维护性
售票系统是直接面对普通用户的,而大多普通用户往往对计算机并不是非常熟悉。
这就要求系统能够提供良好的用户界面。
要实现这一点,就要求系统应该尽量使用用户熟悉的术语和中文信息界面;
针对用户在使用中出现的错误操作,尽量给出中文提示。
售票系统中涉及到的数据是铁路部门的相当重要的信息,系统应提供方便的手段供系统维护人员进行数据的备份,日常的安全管理,以及系统意外崩溃时数据的恢复等工作。
4.系统设计
4.1总体设计
本火车站售票管理系统可划分为信息查询、网上订票、取消订票三个部分。
其息查询又可分为车次查询和订单查询两个部分。
系统功能结构如图4.1所示。
图4.1系统功能结构图
4.2详细设计
4.2.1过程设计
本系统主界面为用户设计了三个功能操作以供选择:
查询,订票,退票。
另外,为方便用户,还将“退出系统”也单另列了出来,用户可以根据需要触发不同事件。
根据分析,系统用户权限的系统主程序流程图,售票员权限的系统主程序流程图,车次信息查询程序流程图,售票程序流程图,订票信息查询模块程序流程图,退票模块程序流程图,如图4.2—4.7所示:
图4.2系统用户权限的系统主程序流程图
图4.3售票员权限的系统主程序流程图
图4.4车次信息查询程序流程图
图4.5售票程序流程图
图4.6订票信息查询模块程序流程图
图4.7退票模块程序流程图
4.3数据库设计
本系统采用的数据库软件为SQLserver2000,本系统用到的数据库名为selltickets(售票),它里面包括表,下面逐一介绍。
4.3.1用户表
用户表用来存储注册用户的信息,它的结构如表4.1所示:
表4.1用户表
字段名称
数据类型
长度
描述
序号
Int
4
主键
用户名
Char
10
密码
联系方式
Varchar
50
负责人
单位全称
具体地址
20
号
代售点编号
为代售点用户自动分配编号
用户类型
Int
代售点为1,企业用户为2
4.3.2车次详细信息表
车次详细信息表存储的是车次的具体路段信息,它的结构如表4.2所示:
表4.2车次详细信息表
Decimal
9
车次
18
开车时间
Datatime
8
到达时间
Datetime
出发站
到达站
行程
每两站之间的距离
4.3.3订票纪录表
订票纪录表存储的是用户的买票记录和订票信息,买票和订票操作产生的记录有不同的字段,本系统中把两种不同字段放在一表里,如果订票字段为空,则系统可判断这是一条买票记录,它的具体结构如表4.3所示:
表4.3订票记录表
车发站
座位类型
票数
总价格
发车日期
时间
座位号
4.3.4退票纪录表
退票纪录表存储的是用户的退票记录和退票信息,它的具体结构如表4.4所示:
表4.4退票记录表
5.系统实现
5.1系统登录界面
本系统设计要求用户通过登录框选择访问权限,登录系统。
登录身份包括系统管理员、票务管理员和乘客。
其中,用户须输入用户名和密码,以进入系统。
系统用户输入正确的用户名和密码,访问系统,得到其相应的权限。
系统登陆界面如图5.1所示:
图5.1系统登陆界面
5.2系统管理员登录界面
系统管理员具有系统的管理、系统的设置和系统的维护权限。
在系统管理中可以实现对乘客信息和票务管理员信息的添加、删除和修改,在系统设置中可以修改系统的相关属性,在系统维护中可以实现清除系统运行中发生的故障和错误,对系统进行必要的修改与完善,使系统适应用户环境的变化,满足新提出的需要。
系统管理员登录界面如图5.2所示:
图5.2系统管理员登录界面
5.3票务管理员登录界面
票务管理员是车票信息的管理者,具有添加车票信息、修改车票信息、删除车票信息的权限。
票务管理员通过日期、车次或出发地、目的地来查询相关车票信息,并完成对车票信息的添加、删除和修改。
票务管理员登录界面如图5.3所示:
图5.3票务管理员登录界面
5.4乘客登录界面
乘客是本系统的主要使用者,具有查询车票信息、预订车票和退票的
权限,在查询功能中,乘客通过日期、车次或出发地、目的地来查询相关车票信息,如票价、余票、列车正晚点、列车时刻表、中转站等。
查询成功后,乘客选定满意的车次,在购票处完成预定。
乘客登录界面如图5.4所示:
图5.4乘客登录界面
6.系统测试
6.1测试方法
采用黑盒测试,黑盒测试着重测试软件的功能需求。
黑盒测试力图发现下述类型的错误:
(1)功能不正确或遗漏了功能;
(2)界面错误;
(3)数据结构错误或外部数据库访问错误;
(4)性能错误;
(5)初始化和终止错误
6.2测试过程
(1)登录模块
将通过确认测试的软件,作为整个基于计算机系统的一个元素,与计算机硬件、外设、某些支持软件、数据和人员等其他系统元素结合在一起,在实际运行环境下,对计算机系统进行一系列的组装测试和确认测试。
在登录模块中重点测试如下:
①输入数据有效性判定;
②有效数据输出测试,无效数据输出测试。
③系统安全性和反应速度进行测试,系统的稳定性要求
(2)查询模块
在查询模块中重点需要测试如下:
(3)退票模块
在退票模块中重点需要测试如下:
①库中的记录确定更改;
②提示车票退票时限准确。
6.3测试结果
(1)测试方案
表6.1测试方案表
编号
等价类
输入
预期的输出
1
日期输入格式如13.01.12
‘13.04.23’
13.04.23
2
月份围在1~12之间,日的围在1~30之间
‘13.13.02’或‘13.02.36’
“错误--无效输入”
3
输入数字为负数
‘-3’
输入文字为汉字
‘’
5
输入空字符串
“错误--没有数字”
(2)测试结论
本系统基本能达标,但仍存在些许细节问题,希望再加斟酌,争取完全达标。
7.总结
7.1小结
本文主要介绍了基于B/S结构的火车站售票管理系统的分析设计以及编程实现。
整个系统的功能结构和现实中的火车站售票系统还具有一定的差距,通过2000开发平台和sqlserver2000数据库,完成开始原来设想的大部分功能模块。
现将本系统的开发过程中取得的成果归结如下:
(1)根据对现实中火车站售票管理系统的界面分析,我们设计完成了数据库中数据表的所有字段,系统通过和数据库交互的结果能顺利地完成系统对数据库的常规操作。
(2)采用Java语言Eclipse工具独立设计开发完成整个系统的界面设计与实现。
(3)独立编程实现了系统原先设计的大部分功能,根据对有些功能实现的理解,完成了对一些特有功能的编码。
但由于火车站售票管理系统的复杂性和编者水品的限制,本系统依然存在很多问题:
(1)软件采纳的数据不是很全面,不能很好的接受外来的影响。
(2)客流人数预设不到位,可能会有票数不达的局限。
如果这些问题存在,会影响系统的操作,秩序也会受到破坏。
(3)与已存在的火车站售票管理系统相比整个系统的功能结构和现实中的火车站售票系统还具有一定的差距。
7.2实践感想
在这次课程设计过程中我们遇到了不少的难题,比如数据库操作问题,界面设计问题,函数使用与消息处理问题等等。
其中,最关键的是最初对系统的需求分析做的不透彻,导致后续设计工作乃至编码时的修改工作量变大。
以至于为了能按时完成设计任务,我们一连度过了几个通宵。
尤其,越接近结束,就越是时常出现问题。
所以,通过这次课程设计我深刻的体会到软件工程还是必须学精通、学透彻。
通过这一次的课程设计,我们组员越来越默契,在设计过程中我们先把功能分工了,然后每个人下去都把需求写出来,当需求综合时,大家都不局限于只考虑自己的功能实现,往往还要考虑其他组员的功能。
大家一起集思广益,用心认真的完成着系统每一部分的设计与实现,我认为这是我们的一次大的进步。
这一学期的软件工程的课程设计我们完成的是火车站售票管理系统,当看到系统最终成型并能准确实现相应的功能的时候我们觉得特别的开心,我们的努力获得了回报。
我很高兴能有这样的一个机会让我们一起面对一个难题并为之倾尽全力,这个过程给了我新的体会也些许改变了我一直以来各种烦恼的心态。
由于暑假的远离课本,这个学期一开始我就觉得好多东西跟不上节奏,完成课程设计的过程给了我动力,当然也给了我压力,让我能够静下心来好好研究一下课上所讲的知识,自己去学习新的知识,也让我能和伙伴们一起讨论问题、解决问题,这种感觉很不错的。
在完成课程设计的过程中我学到了很多东西
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 火车站 售票 管理 系统 设计 实现 分析