《数据库课程设计实验报告-火车票售票管理系统》由会员分享,可在线阅读,更多相关《数据库课程设计实验报告-火车票售票管理系统(19页珍藏版)》请在金锄头文库上搜索。
1、1数据库课程设计报告数据库课程设计报告 -火车售票管理信息系统火车售票管理信息系统软件学院软件工程2013 级 x 班: xx学号:2013xxxxxxxx目 录一、系统开发平台. 1四、需求分析. 24.1 用户需求说明. 24.1.1 数据需求. 24.1.2 事务需求. 34.2 系统需求说明. 4五、数据库逻辑设计. 45.1 ER 图. 45.2 数据字典. 55.3 关系表. 7六、数据库物理设计. 76.1 索引. 76.2 视图本节可选. 86.3 安全机制. 8七、应用程序设计. 87.1 功能模块. 87.2 界面设计. 157.3 事务设计. 15八、测试和运行. 16九
2、、总结. 16i一、系统开发平台一、系统开发平台题目: 对火车站的售票进行管理。主要功能:车次管理(车次、起止地点、到达时间、开车时间)、每一车次的车票管理车厢号、座位号 、售票、退票、查询、异常处理。开发工具:eclipse数据库:mysql操作系统二、数据库规划2.1 任务陈述:做一个火车票售票管理系统:对火车站的售票进行管理。主要功能:车次管理(车次、起止地点、到达时间、 开车时间)、每一车次的车票管理车厢号、 座位号 、售票、退票、查询、异常处理。2.2 任务目标完成一个火车票售票管理系统,要实现管理员对车票的增添以及删改功能,同时需要实现用户对车票的查询购买,以及出现调整之后的退票服
3、务。三、系统定义3.1 系统边界管理员:可以对车票以及车次进行删改操作。用户:可以买票,但是不可以对火车票进行添加操作3.2 用户视图 3.2.1 管理员视图1 列车管理:包括列车的录入、查询、修改和删除。2 用户管理:包括系统使用用户的添加、查询、修改、删除等。在线支付 用户身份信息用户注册 车次设置管理员车次信息录入 用户信息管理1票务系统车站实际情况3 系统数据处理:数据查询,根据关键字过滤,查看当前车次信息,车票信息,用户信息以及处理历史。4 管理员个人信息管理:包括查看个人信息、修改密码、重新登陆、退出系统等。5 用户请求信息管理:查看用户请求信息并加以处理。3.2.2 用户视图1个
4、人信息管理:查看个人信息,修改密码等。2列车车次检索:包括根据车次进行精确查找,根据起始地点进行模糊查询,查询一定时间之后的车次或按照余票数量进行查询和过滤等等。3车票管理:按照一定的流程购买自己所需要的车票。查看自己所持有的所有车票。并能按照一定流程进行退票。四、需求分析四、需求分析用户需求说明用户需求说明4.1.14.1.1 数据需求数据需求信息需求, 即在系统中需要处理哪些数据。 根据对火车站网上订票系统的分析,本系统的信息需求如表 2-1 所示。表 2-1 信息输入输出2信息输入用户输入所需车次信息处理检索系统数据库信息输出符合用户需求的车次及相关信息用户输入个人信息及所需订购的车票信
5、息更新系统中的订票信息,将新信息存入系统数据库操作反馈如订票成功用户输入自己的名字、身份证号;或交易的订单号用户输入自己的名字检索系统数据库符合用户需求的订票信息检索系统数据库以得到订票记录, 删除用户请求的订票记录, 更新系统数据库操作反馈如退票成功等4.1.24.1.2 事务需求事务需求1.查询分为对车次信息的查询和客户对已订车票信息的查询。要求:1对车次的查询,可以按照发车车次进行查询;2车次信息包括:车号、出发地、目的地、发车日期、开出时刻、票价。3座位类型设定。4车次信息只允许用户查询,不能修改。2.订票通过查询系统,客户根据自己的需求找到满意的车次,再输入个人信息后直接通过网上订票
6、确定已预订选中的车票。要求:3订票记录应包括:会员名、车号、发车日期、订购日期、订购票数、总价。3.退票可退票,通过查询系统, 客户可以根据自己的名字找到自己的订票信息,通过退票模块退去已购车票。4.24.2 系统需求说明系统需求说明为了保证系统能够长期、安全、稳定、可靠、高效的运行,本系统应该满足以下的性能需求。系统处理的准确性和及时性是系统的必要性能。 系统应能及时而且准确的根据用户权限及所输入的信息做出响应。 由于本系统的查询功能对于整个系统的功能和性能完成举足轻重。作为系统的很多数据来源,而车票的数量和时间又影响用户的决策活动,其准确性和及时性很大程度上决定了系统的成败。在系统开发过程
7、中,必须采用一定的方法保证系统的准确性和及时性。2.易用性本系统是直接面对用户的,而用户往往对电脑并不是非常熟悉。这就要求系统能够提供良好的用户接口,易用的人机交互界面。要实现这一点,就要求系统应该尽量使用用户熟悉的术语和中文信息的界面,从而保证系统的易用性。网上订票系统中涉及到的数据是客运公司相当重要的信息,系统要保证用户的权限,对于车次等信息用户只享有查询服务, 不得更改;系统还要提供方便的手段供系统维护人员进行数据备份、日常安全管理、以及系统意外崩溃时数据的恢复等工作。同时系统还要保证对数据库进行及时更新,保证数据一致性。五、数据库逻辑设计五、数据库逻辑设计 ER ER 图图用户的需求具
8、体表达在各种信息的提供、保存、更新和查询, 这就要求数据库结构4能充分满足各种信息的输出和输入。针对火车站网上订票系统,通过对网上订票工作的过程、内容以及数据流程分析,设计如下所示的数据项和数据结构:1.车次信息包括:车号、出发地、目的地、发车日期、开出时刻、剩余座位数、票价。2.订票记录包括:订单号、身份证号、车号、订购日期、订购票数、总价。3.用户信息包括:用户名、身份证号、性别、。E-R 图如图所示数据字典数据字典表 2-5 车次信息表 BusInfo字段名数据类型空BusIDchar(10)NOTNULLBusFrom)5是否可说明车号主键varchar(50NOTNULL出发地Bus
9、To)BusDatevarchar(50NOTNULL目的地DatetimeNOTNULL发车日期主键BusBeginDatetimeNOTNULL开出时刻BusEndDatetimeNOTNULL到达时刻TicketNumintNOTNULL剩余票数PriceMoneyNOTNULL票价表 2-6 订单表 OrderInfo字段名数据类型是否可空OrderIDChar(10)NOTNULLUserIDChar(18)NOTNULLBusIDchar(10)NOTNULLBusDatedatetimeNOTNULLOrderDateOrderNumIntdatetimeNOTNULLNOTNU
10、LL订购票数订购日期发车日期外键车号外键身份证号外键订单号主键说明6TotalMoneyNOTNULL总价表 2-7 用户表 User字段名数据类型空UserIDchar(18)NOTNULLUser)SexPhone)是否可说明身份证号主键varchar(50NOTNULL用户名Char2varchar(12性别关系表关系表实体用户管理员用户联系购买删改退订实体车票车票车票六、数据库物理设计六、数据库物理设计索引索引在用户列表中,以用户的 nick name 为主键进行索引,通过 nick name 查询修改信息。在火车票数据库中,以火车的车次为主键进行索引。7视图本节可选视图本节可选此环节
11、设计在数据库应用生命周期的需求分析和收集阶段标识的用户视图。通常,视图使用 SQL 或类似 QBE 的工具创建。例如,购买车票安全机制安全机制在本火车票售票管理系统中, 我建立了两种类型的安全机制, 系统安全和数据安全。在系统安全的建设方面,不允许以游客身份访问本系统,所有用户都必须注册并登陆,登录时会验证用户名和密码。只有两者匹配时,才可访问本系统。在系统安全方面实现了对方法的封装,能保证系统和数据两方面的安全。在数据安全方面, 数据库对象的访问和使用有严格的控制,其中的某些表只有具有特定权限才可以访问。七、应用程序设计七、应用程序设计本系统综合应用了B/S和C/S架构, 可以通过客户端或者
12、网页进行对火车票的管理。功能模块功能模块8如果用户是新用户,可以在此注册。如果是老用户,在验证密码正确以及用户存在的情况下,可以登陆成功。注册模块包含用户名,密码,身份证号以及号四项信息,其中有对密码确实认,以免发生误输的可能。同时还会判断身份证的正误,首先是判断身份证的位数,然后可以通过特定的计算方式来计算出身份证号是否正确。号同样是判断位数来判断号是否可用,假设在真实应用中可以通过发验证码验证该号是否可用。9在查询 tab 一栏中,通过点击往返箭头可以交换出发地与到达地,从而能更加方便的购买返程的票。10出发日期,用户不能手动输入,而是模仿了 12306 网站的通过点击日历中的日期来选择日
13、期,一方面能够更好的标准日期格式,另一方面也有利于用户方便的选择自己的11出行时间。购票模块可以通过浏览器或者客户端两个方式进行操作。操作的大体流程为,首先通过出发地以及目的地还有出发日期进行查询, 然后由用户选择适合自己的车票进行购买,为了模仿真实的购票系统, 个人感觉需要添加支付模块,但是由于个人能力有限并没有实现,所以购票成功后的状态是未支付状态,具体如下所示。12下面显示具体的代码仅仅是为了排版的美观。 已经退票的车票如果点击退票会提示已经退票。未退票的车票可以成功退票。13这是客户端部分。7.1.5 管理员模块管理员模块可以实现对火车票的管理,可以添加或者删除火车票。14首先需要添加
14、车次,也可以删除车次。然后对车次的具体座位进行票务的更改。界面设计界面设计见上功能模块截图。事务设计事务设计本火车票售票管理系统中涉及到的事务, 均以现实世界火车票购票的日常事务为原型。其中可圈可点的几处介绍如下。登陆模式, 需要知道用户的身份证号信息, 以此对身份证进行核对。 每人一个账号,15可以防止数据库发生重大错误。注册过程中,通过核对两次输入的密码是否一致可以保证用户密码的可靠性, 对身份证号以及号的核对可以防止之后购票的时候出现失误。八、测试和运行八、测试和运行该系统可以完美运行在 linux 系统以及 windows 系统之上, 还可以兼容 ie 各个版本。在运行过程中,如果数据
15、错误还会给予用户以详细的提示,很好的实现了人机交互。除此之外,还对此火车票售票管理系统进行了低强度的压力测试。测试结果较为理想九、总结九、总结在未来相当长的时间内,火车将成为 21 世纪最为可靠,快速,便捷的出行方式,同时,随着我国经济快速发展, 和经济增长方式逐渐向发展内需方向转变,为中国铁路的发展带来了全新的机遇。 对火车票预定与管理系统, 我认为将会出现以下几种发展趋势:1: 纸质车票将会被电子车票代替: 电子车票的出现将乘客的唯一标识例如指纹或RFID技术作为购票和乘车凭证, 因为免去了纸质车票的传递过程,将更大程度的方便乘客选择火车出行,真正的可以做到足不出户就能完成车票的订购。目前上海已经进入了磁卡火车票,这已经是在原有纸质车票基础上的一个巨大的变化。2:火车票预定与管理系统功能将更加多元化,系统将更加集中,电子车票的出现将使火车票信息系统的架构发生巨大变化,原来分散的,独立的基于客户机/服务器的结构将转换为浏览器/服务器结构,并且一个主机系统可以服务全国的乘客订票需求。同时因为上百万的用户的在线使用,对火车票预定与管理系统的功能提出一个新的挑战。对系统的可靠性,可用性,性能要求发生质的变化3.该系统仍然没有实现支付功能,还欠缺中间站点的16