数据库课程设计实验报告-火车票售票管理系统
- 格式:doc
- 大小:729.50 KB
- 文档页数:20
目录一.概述 (2)二.系统需求分析 (2)2.1业务需求分析 (2)2.2功能需求 (3)2.3数据字典 (4)三.概念模型设计 (6)3.1 概念结构设计的方法与步骤 (6)3.1.1 概念结构设计的方法 (6)3.1.2 概念结构设计的步骤 (6)3.2 数据抽象与局部视图设计 (6)3.3 视图的集成 (8)四。
逻辑模型设计 (9)4.1 E-R图向关系模型的转化 (9)4.2 数据模型的优化 (10)4.3 数据库表格设计 (10)五。
物理模型设计 (12)六.关键业务逻辑的存储过程实现 (13)6.1 创建数据库 (13)6.2 在数据库‘火车站车票售票系统0301’下建表 (14)6.3 存储过程的实现 (16)6.3.1 按站站查询: (16)6.3.2 查询旅客购票信息: (17)6.3.3 增加一趟列车: (18)6.3.4 关键业务逻辑的实现 (19)七。
课程设计总结 (22)概述随着国民经济快速发展, 人们出行、交通越来越频繁, 对服务的快捷、便利性要求也越来越高。
从而对客运行业的建设与管理提出了更高的要求。
为适应和推动客运行业的发展, 各种交通公司和部门开始广泛采用使用日趋成熟的计算机技术和数据库技术来实现票务信息的现代化管理,具有手工管理所无法比拟的优点,如:检索迅速,查找方便,可靠性高,存储量大,保密性好,寿命长,成本底等。
这些优点能够极大地提高信息管理和业务管理的效率。
本火车站售票系统正是通过数据库存储信息实现高效率管理。
该实验设计首先进行需求分析,然后在需求文档的指导下实现系统的功能,如操作员的信息管理功能及旅客的火车信息查询、订票、退票等功能,最终实现的是旅客购得一张自己满意的票券,同时力求通过数据库系统及计算机在其中的运用达到提高工作效率,节约人力资源的效果。
系统需求分析在构造系统时,首先从需求出发构造数据库表,然后再由数据库表结合需求划分系统功能模块。
这样,就把一个大的系统分解成了几个小系统,使整个系统的功能更加详细易于理解,同时易于实现系统的整体设计。
数据库课程设计报告 -------火车售票管理信息系统软件学院软件工程2013级x班姓名: xx学号:2013xxxxxxxx目录一、系统开发平台 (1)四、需求分析 (2)4.1 用户需求说明 (2)4.1.1 数据需求 (2)4.1.2 事务需求 (3)4.2 系统需求说明 (4)五、数据库逻辑设计 (4)5.1 ER图 (4)5.2 数据字典 (5)5.3 关系表 (7)六、数据库物理设计 (7)6.1 索引 (7)6.2 视图本节可选 (8)6.3 安全机制 (8)七、应用程序设计 (8)7.1 功能模块 (8)7.2 界面设计 (15)7.3 事务设计 (15)八、测试和运行 (16)九、总结 (16)一、系统开发平台题目:对火车站的售票进行管理。
主要功能:车次管理(车次、起止地点、到达时间、开车时间)、每一车次的车票管理(车厢号、座位号)、售票、退票、查询、异常处理。
开发工具:eclipse数据库:mysql操作系统:windows8.1二、数据库规划2.1 任务陈述:做一个火车票售票管理系统:对火车站的售票进行管理。
主要功能:车次管理(车次、起止地点、到达时间、开车时间)、每一车次的车票管理(车厢号、座位号)、售票、退票、查询、异常处理。
2.2 任务目标完成一个火车票售票管理系统,要实现管理员对车票的增添以及删改功能,同时需要实现用户对车票的查询购买,以及出现调整之后的退票服务。
三、系统定义3.1 系统边界管理员:可以对车票以及车次进行删改操作。
用户:可以买票,但是不可以对火车票进行添加操作3.2 用户视图3.2.1 管理员视图(1)列车管理:包括列车的录入、查询、修改和删除。
(2)用户管理:包括系统使用用户的添加、查询、修改、删除等。
在线支付用户身份信息用户注册车次设置管理员车次信息录入用户信息管理票务系统车站实际情况(3)系统数据处理:数据查询,根据关键字过滤,查看当前车次信息,车票信息,用户信息以及处理历史。
火车票网上购票管理系统数据库系统分析与设计一、数据库需求分析1.用户需求:-用户可以通过系统注册和登录账号。
-用户可以查询火车班次及票价信息。
-用户可以选择购买火车票,并完成支付。
-用户可以查看已购买的火车票信息。
2.管理员需求:-管理员可以添加、修改和删除火车班次信息。
-管理员可以查询用户购票信息。
3.系统需求:-系统需要存储用户账号和密码信息。
-系统需要存储火车班次信息,包括班次号、起始站、终点站、出发时间、到达时间、票价等。
-系统需要存储用户购票信息,包括用户ID、班次号、座位号、购票时间等。
二、数据库设计根据以上需求,可以设计以下数据库表结构:1. 用户表(User)- 用户ID(UserID,主键)- 用户名(Username)- 密码(Password)2. 火车班次表(Train)- 班次号(TrainID,主键)- 起始站(StartStation)- 终点站(EndStation)- 出发时间(DepartureTime)- 到达时间(ArrivalTime)- 票价(Price)3. 火车票表(Ticket)- 票号(TicketID,主键)- 用户ID(UserID,外键,关联User表的UserID)- 班次号(TrainID,外键,关联Train表的TrainID) - 座位号(SeatNumber)- 购票时间(PurchaseTime)三、系统架构设计根据数据库设计,可以初步设计系统架构如下:1.前端页面:包括注册、登录、查询火车班次、购票、查看订单等页面。
2.后端服务:实现用户注册、登录、查询火车班次、购票、查看订单等功能,调用数据库进行数据操作。
3.数据库:存储用户信息、火车班次信息、订单信息等数据。
四、数据库操作根据数据库设计,可以设计以下数据库操作:1.用户相关操作:- 用户注册:向User表中插入新的用户信息。
- 用户登录:查询User表中的用户名和密码信息进行验证。
青岛理工大学琴岛学院设计报告课题名称:火车票管理系统学院:青岛理工大学琴岛学院专业班级:信息管理与信息系统11-1班学号:20110303016学生:指导教师:青岛理工大学琴岛学院教务处2013 年 7 月 5 日一、设计目的随着人们出行次数的增多,越来越多的人把火车作为首选交通工具,而对于铁路局来说庞大的客运量无疑又是一个巨大的问题。
采用数据库技术建立的管理系统不仅能提高出售/预定车票的效率,还能减少错误发生的概率,方便用户的查询订购车票。
降低工作人员的工作量,避免购票人员在车站无效的等票,可以调高购买者买到票的机率,这样的作用在春运期间最为显著,需要有一个完善的火车票的管理系统迫在眉睫,所以我们决定做火车票管理系统的数据库。
二、数据库设计1.需求分析:从实际角度出发,对于用户要提供方便快捷的车票查询和订票服务,对于车站工作人员,则是要能够方便明朗的对车次信息进行增删修改操作和车票的订售操作,提高车次的编组效率,是车次资源得到充分利用,并可以提高车票的出售效率降低工作人员的工作量。
用户登录的功能和车次查询、添加、车票出售的功能,这是火车管理系统的基本功能。
实现了这几个功能一个火车订票系统才能开始运作,在火车票管理系统中实现了用户的登录添加和车票的基本信息操作。
1.1数据流图:数据流图(Data Function Diagram),又名数据功能图表,简称DFD,就是采用图形方式来表达系统的逻辑功能、数据在系统内部的逻辑流向和逻辑变换过程,是结构化系统分析方法的主要表达工具及用于表示软件模型的一种图示方法。
以下是火车票管理系统数据流图:图1.顶层数据流图图2.一层数据流图1.2数据字典(1)数据项数据项是数据结构中讨论的最小单位,是数据记录中最基本的、不可分的有名数据单位。
数据项可以是字母、数字或两者的组合。
通过数据类型(逻辑的、数值的、字符的等)及数据长度来描述。
数据项用来描述实体的某种属性。
数据项描述={数据项名,数据项含义说明,列名,数据项类型,长度,取值范围,取值含义,与其他数据项的实际联系,数据项之间的联系}火车票管理系统主要涉及的数据项有:2.将需求分析得到的用户需求抽象为概念模型的过程就是概念结构设计。
沈阳工程学院课程设计设计题目:火车票管理系统系别信息工程系班级网络本101学生姓名刘雨娇金兆宁姚宇夏林学号02 13 19 24指导教师孙宪丽、杨弘平职称副教授、副教授起止日期:2012年12月3日起——至2012年12月7日止摘要随着Internet和Intranet技术的发展,人们对网络信息的需求越来越大,对网络数据库的交互和查询速度等性能的要求也越来越高。
未来火车站的发展趋势是完全自动化的售票信息查询,网络订票,智能化订票,而且随着计算机的普及,信息处理量的逐渐扩大,手工处理方式已经远远不能满足人们管理活动的需要,各种工作都逐渐由手工转为自动化,将使许多复杂、繁琐、且需要很多人力的工作变得简单。
火车站售票管理是本系统的根本任务,通过实现票务信息的计算机管理,以提高工作效率。
实现计算机管理的最佳技术就是数据库技术。
我们可以利用数据库将整个火车站的票务情况存入计算机,再配置上功能丰富的用户接口,以满足用户需求。
基于这样的背景并考虑到一定的实际意义及于我们将实践与理论结合起来,我们组在这次课设中选择了“火车售票管理系统”。
在这次课设中我们使用Java技术来开发该火车票管理系统。
因而在本报告中介绍了系统的开发环境以及开发工具,对Java在系统上的应用设计思想做了一个全面的叙述,对于系统中数据库中的数据表之间的具体关联等方面也做出了详细说明,并且具体讲述了系统各个功能模块的设计以及实现过程。
关键词火车售票管理系统Java技术网络数据库目录摘要 (I)第1章绪论 (1)1.1 项目背景 (1)1.2 编写目的 (1)1.3 开发环境 (1)1.3.1 硬件环境 (1)1.3.2 软件环境 (1)第2章系统功能介绍 (3)2.1 系统功能总框图 (3)2.2 模块功能介绍 (3)2.2.1 系统登录 (3)2.2.2 管理员登录 (3)2.2.3 普通用户登录 (4)2.3组内任务分工 (4)第3章数据库设计 (5)3.1 数据库需求分析 (5)3.2 数据流图 (5)3.3 数据库概念结构设计 (6)3.4 数据库表的设计 (7)第4章系统功能实现 (10)4.1 登陆系统 (10)4.2 管理员系统 (11)4.2.1 用户管理 (11)4.2.2 票务管理 (20)4.3 普通用户登录 (21)4.3.1 查询 (21)4.3.2 售票 (27)结论 (31)致谢 (32)参考文献 (33)第1章绪论信息社会的高科技,商品经济的高效益,使计算机的应用普及到经济和社会生活的各个领域。
火车票订票系统实验课题:火车票订票系统专业:计算机科学与技术姓名:AAAAA组员:BBBBBBB日期:2013 年5月26 日火车票订票系统一、团队成员XXXXXX二、角色分配——系统分析员作为团队中的系统分析员。
首先需要理解和明确整个项目的管理目标和未来的发展方向,其次需要充分了解用户的需求并且对用户需求未来可能的改变有一定的了解和预判。
在了解了用户的需求后,与系统设计员、系统开发员及DBA进行沟通以及对整个项目的统筹规划。
作为一名普通的学生,在学校经常会遇到各种订票的时候。
尤其是在放假的阶段,火车票、飞机票更是供不应求。
所以开发一个能够服务于普通用户的订票软件正是顺应了市场所需。
所以我们团队最后选择了设计开发一个火车票订票管理系统。
对于一个火车票订票管理系统,准确快捷的车次信息查询功能和方便简单的订票操作是十分必要的,因此系统必须为用户提供准确的车次信息和当前的车票状况,这也是火车票订票管理系统的最基本要求。
客户端后台管理员要能够及时添加、修改车次信息,并能够对用户信息进行录入和删除。
所以结合实际情况,火车票订票系统应满足一下需求:1.客户端界面清晰友好,达到一目了然的效果。
2.客户端能够有方便的查询系统及简单明了的订票、退票操作。
3.防止用户重复订票、退票操作,影响系统数据的正确性。
4.服务器端提供信息完全可靠,时效性强。
5.能够保证数据与信息的安全性。
综合以上需求,本系统需要以下几个模块来支持:1.用户模块:用于用户注册,用户登陆,订票,退票。
2.管理员模块:供后台管理员登录。
用于添加、修改车次及票务信息,查看所有用户信息及相应的订票信息。
3.游客模块:列车时刻查询,车次相关信息查询,及剩余车票查询。
三个模块的关系如下:当然,系统分析员也非常有必要与设计员沟通,共同确定系统的软硬件配置和数据库系统的总体设计。
整个系统的数据库E-R图设计如下:数据字典如下: 管理员表: 号 用户表:车次信息表:车站信息表:车票预定表:三、数据库的设计与系统实现1、表的设计我们设计的订票系统主要包括一下几个表,对表的编辑可以直接在Microsoft SQL Server中直接修改,也可以在系统界面中从前台操作修改,这里结合了SQL Server强大的数据处理功能和Visual Basic 直观的界面,使得整个系统不但功能强大,而且有着很友好的界面,让人用起来非常容易。
火车票售票系统一、实验目的:1、熟练掌握数据库设计原理及模型构建软件PowerDesignerd 的使用。
2、熟练掌握Visual Studio 2008的使用。
3、实现方便、快捷使用火车票购票系统查票、购票、退票等功能。
4、实现系统的安全性设置,使系统具有一定的维护功能。
二、实验设备及软件:PC 机一台、Visual Studio 2008、SQL SERVER 2000三、需求分析: 3.1 功能分析:功能模块图教师评阅意见:签名: 年 月 日实验成绩:火车票售票系统新用户注册 购票 、预约余 票 查询 退 票 票价查询1、新用户注册模块:新用户注册需要新用户填入自己的基本信息包括用户名、密码和确认密码),详细的购票需要信息(包括姓名、性别、出生日期、证件类型、证件号码)以及联系方式(包括手机号码、电子邮箱、地址),只有当所有的信息格式填写正确和填写完全后才能注册成功。
2、购票/预订模块:购票/预订模块需要用户登录后,输入需要购票的出发站、目的站和出发日期后即可显示可购票,选择自己需要的票即可购票,点击购票则购票成功。
3、余票查询模块:余票查询模块需要用户在登录进入售票系统后点击余票查询按钮,按照要求填入出发地、目的地,选择出发日期,选择填入出发车次,完成输入后即可在界面下方看到所有满足要求的查询结果。
4、退票模块:退票模块需要用户在登录后,进入退票界面,即可显示登录用户所有订单,选择需要退票的订单,点击退票按钮即可退票。
5、票价查询模块:票价查询模块同样需要用户在登录进入售票系统后点击余票查询按钮,按照要求填入出发地、目的地,选择出发日期,选择填入出发车次,完成输入后即可在界面下方看到所有满足要求的查询结果。
3.2 流程图:火车票售票系统业务流程图如下图所示:1、新用户注册及登录流程图:新用户填写失败注册信息提交注册成功2、购票/预订流程图:填写失败成功2、余票查询流程图:填写显示3、退票流程图:登陆失 败 显示成功 出 发 站 目 的 站 出 发 日 期 用 户购 票 用 户 出 发 站 目 的 站 出 发 日 期 余 票 信 息用 户 退票界面所 有 订 单 退 票4、票价查询流程图:用户登陆票价查询显示车票票价四、数据库结构设计:4.1 E-R模型的建立:E-R模型由新用户注册、登录界面、购票、余票查询、票价查询这五个实体构成。
沈阳工程学院课程设计设计题目:火车票管理系统系别信息工程系班级网络本101学生姓名刘雨娇金兆宁姚宇夏林学号02 13 19 24指导教师孙宪丽、杨弘平职称副教授、副教授起止日期:2012年12月3日起——至2012年12月7日止沈阳工程学院课程设计任务书课程设计题目:火车票管理系统系别信息工程系班级网络本101 学生姓名刘雨娇金兆宁姚宇夏林学号02 13 19 24指导教师孙宪丽、杨弘平职称副教授、副教授课程设计进行地点:实训F任务下达时间:2012 年12 月 3 日起止日期:2012年12月3日起—至2012年12月7日止教研室主任年月日批准1.设计的原始资料及依据查阅有关数据库设计、Java语言程序设计以及案例分析等资料,进一步熟悉面向对象程序设计基本理论以及基本思想。
本设计要求按照软件工程、数据库设计思想及设计步骤设计一个实用程序,并采用Java开发该系统。
通过本设计可以加深对面向对象程序设计基本思想的理解,加强学生研发、调试程序的能力,培养学生分析、解决问题的能力,提高学生的科技写作能力。
2.设计的主要内容及要求(1)写出系统的需求分析。
(2)写出系统的数据库设计过程,包括概念结构设计、逻辑结构设计、物理结构设计。
(数据库应用程序管理系统类设计详细写,其它类设计可以略)(3)写出系统设计思路—工作原理、功能规划。
(4)详细设计—数据分析、算法思路、类设计、功能实现(包括程序流程图、主要代码及注释)、界面等。
(5)运行调试与分析讨论--给出运行屏幕截图,分析运行结果,有何改进等。
3.对设计说明书撰写内容、格式、字数的要求(1)学生应撰写的内容为:中文摘要和关键词、目录、正文、参考文献等。
课程设计说明书(论文)的结构及各部分内容要求参照《沈阳工程学院毕业设计(论文)撰写规范》执行。
应做到文理通顺,内容正确完整,书写工整,装订整齐。
(2)装订格式:封面、任务书、成绩评审意见表、中文摘要和关键词、目录、正文、结论、致谢、参考文献。
数据结构与算法课程实验报告课程设计一:火车售票系统设计及实现姓名:cll班级:学号:一、实验内容:火车售票系统在现实中的应用已经非常普遍,目前通常使用可视化的方法实现,例如采用C/S模式下的程序设计或者采用B/S模式下的程序设计,通常都具有较为友好的界面和较为完善的功能。
火车售票系统的实现过程中,主要涉及到数据格式的设计,也就是数据结构的设计。
通常在采用数据库的情况下,可以运用数据库的设计来实现。
在没有采用数据库情况下需要,单独设计相应数据结构和算法。
二、实验目的:按给定需求,通过查找相关资料,完成火车售票系统设计及实现,在设计过程中充分运用数据结构与算法课程中所学知识,从而熟练地掌握和应用线性表、单链表等重要数据结构和常用算法。
提前熟悉软件需求分析,软件测试等环节,运用相应程序设计语言实现该系统,从而进一步提高程序设计能力。
三、问题描述(1)此系统可以实现售票、退票、车票剩余情况查询等功能。
(2)每张车票包含车次、座位信息。
在售票、退票、查询剩余票等环节中,都必须显示出车票的信息,即车次、座位情况。
(3)退票时,必须是车站售出的车票才能退,否则视为无效票,不能退票。
(4)演示程序以用户和计算机的对话方式进行,即在计算机终端上显示“提示信息”之后,由用户在键盘上输入程序中规定的运算命令;相应的输入数据(滤去输入中的非法字符)和运算结果显示在后。
(5)由订票系统的主要功能使程序的命令包括:1)查询;2)订票;3)退票4)退出订票系统四、问题的实现4.1所用的数据结构(包括所用数据结构的抽象数据类型定义和说明)typedef struct LNode{//数据域char name[10];//订票姓名int dnum;//订票数量char dj[50];//证件编号int zhekou; //1代表折扣对象float pay;//付费struct LNode *next;//指针域int zuohao[200];}LNode,*LinkList;//构造单链表(已订票)typedef struct Tickets{char *endname;//终点站名char *hnum;//车次名int fnum;//票价float discut;//折扣int day;//日期int wholenum;//总票额int lastnum;//余票量int tuipiao[100]; //退票处理,记录退票的座位号int tpcs;//记录目前退票次数int mcps;//记录卖出去的票数(包括退票)LinkList la;//已订票链表}Tickets;//构造结构类型(火车票)typedef struct{struct Tickets *elem;//存储空间的基址int length;int listsize;//当前分配的存储容量(以sizeof(Tickets)为单位)}SqList;//构造顺序表4.2主要实现思路1、火车站的火车票采用顺序表表示。
课程设计说明书(数据库技术及实训)题目: 火车票售票管理系统院系:计算机科学与工程学院专业班级:班学号:学生姓名:指导教师:2014年 5 月 4日课程设计(论文)任务书年月日摘要中国铁路客票发售和预订系统的核心功能是建立一个覆盖全国铁路的计算机售票网络,实现客票管理和发售工作现代化,从而方便旅客购票和旅行,提高铁路客运经营水平和服务质量,系统可预订、预售和发售当日客票,具有售返程、联程等异地购票功能。
系统预售期为20天。
可以实现票额、坐席、制票、计费、结算、统计等工作的计算机管理。
系统采用微软推出的Visual Studio 2005作为开发工具基于B/S结构,数据库采用微软的SQL Server 2005进行数据库设计。
关键词:铁路客运服务;计算机售票网络;SQL Server 2005目录1系统分析 (1)1.1 课题背景 (1)1.2目的和意义 (1)1.3可行性分析 (1)2系统设计 (3)2.1数据字典 (3)2.2数据流图 (3)2.3 系统模块总体设计 (11)2.4数据库概念结构设计 (11)3系统实现 (13)3.1 数据库逻辑结构设计 (13)3.3测试 (15)4总结 (16)4.1 设计体会 (16)4.2 系统改进 (16)参考文献 (16)1系统分析1.1 课题背景中国拥有总里程超过五万公里的铁路线,是世界上最大的铁路运输网之一,而铁路客运服务在其中又占有非常重要的地位。
其中有5000多个车站承办业务,日开列车2000多列。
为了在日益加剧的客户运输竞争服务中确保优秀,改善铁路客户的服务质量,铁道部门一直在寻找提高竞争力、改善服务的途径。
计算机应用火车站售票的日常管理为火车站售票的现代化带来了前所未有的动力和机遇,为火车站票务管理领域的飞速发展提供了无限潜力。
能给火车站票务带来明显的经济效益和社会效益。
1.2目的和意义火车票票务管理的全部数据处理都由人工操作,工作量大,工作效率低,错误率高,信息反馈不及时,因此本系统拟对该火车票票务管理做如下几方面改革:✧系统功能重构✧业务流程重组✧数据流程重组为解决上述问题,要根据目前火车票的管理模式和方法利用Internet、局域网和计算机开发基于Web的火车票订票管理信息系统,可以实现票额、坐席、制票、计费、结算、统计等工作的计算机管理。
数据库课程设计实验报告-火车票售票管理系统数据库课程设计报告 -------火车售票管理信息系统软件学院软件工程2013级x班姓名: xx学号:2013xxxxxxxx目录一、系统开发平台 (1)四、需求分析 (2)4.1 用户需求说明 (2)4.1.1 数据需求 (2)4.1.2 事务需求 (3)4.2 系统需求说明 (4)五、数据库逻辑设计 (5)5.1 ER图 (5)5.2 数据字典 (5)5.3 关系表 (7)六、数据库物理设计 (8)6.1 索引 (8)6.2 视图本节可选 (8)6.3 安全机制 (8)七、应用程序设计 (8)7.1 功能模块 (8)7.2 界面设计 (15)7.3 事务设计 (15)八、测试和运行 (16)九、总结 (16)一、系统开发平台题目:对火车站的售票进行管理。
主要功能:车次管理(车次、起止地点、到达时间、开车时间)、每一车次的车票管理(车厢号、座位号)、售票、退票、查询、异常处理。
开发工具:eclipse数据库:mysql操作系统:windows8.1二、数据库规划2.1 任务陈述:做一个火车票售票管理系统:对火车站的售票进行管理。
主要功能:车次管理(车次、起止地点、到达时间、开车时间)、每一车次的车票管理(车厢号、座位号)、售票、退票、查询、异常处理。
2.2 任务目标完成一个火车票售票管理系统,要实现管理员对车票的增添以及删改功能,同时需要实现用户对车票的查询购买,以及出现调整之后的退票服务。
三、系统定义3.1 系统边界管理员:可以对车票以及车次进行删改操作。
用户:可以买票,但是不可以对火车票进行添加操作3.2 用户视图3.2.1 管理员视图(1)列车管理:包括列车的录入、查询、修改和删除。
(2)用户管理:包括系统使用用户的添加、查询、修改、删除等。
在线支付用户身份信息用户注册车次设置管理员车次信息录入用户信息管理票务系统车站实际情况(3)系统数据处理:数据查询,根据关键字过滤,查看当前车次信息,车票信息,用户信息以及处理历史。
(4)管理员个人信息管理:包括查看个人信息、修改密码、重新登陆、退出系统等。
(5)用户请求信息管理:查看用户请求信息并加以处理。
3.2.2 用户视图(1)个人信息管理:查看个人信息,修改密码等。
(2)列车车次检索:包括根据车次进行精确查找,根据起始地点进行模糊查询,查询一定时间之后的车次或按照余票数量进行查询和过滤等等。
(3)车票管理:按照一定的流程购买自己所需要的车票。
查看自己所持有的所有车票。
并能按照一定流程进行退票。
四、需求分析4.1 用户需求说明4.1.1 数据需求信息需求,即在系统中需要处理哪些数据。
根据对火车站网上订票系统的分析,本系统的信息需求如表2-1所示。
表2-1信息输入输出信息输入信息处理信息输出用户输入所需车次检索系统数据库符合用户需求的车次及相关信息用户输入个人信息及所需订购的车票信息更新系统中的订票信息,将新信息存入系统数据库操作反馈(如订票成功)用户输入自己的名字、身份证号;或交易的订单号检索系统数据库符合用户需求的订票信息用户输入自己的名字检索系统数据库以得到订票记录,删除用户请求的订票记录,更新系统数据库操作反馈(如退票成功等)4.1.2 事务需求1.查询分为对车次信息的查询和客户对已订车票信息的查询。
要求:1)对车次的查询,可以按照发车车次进行查询;2)车次信息包括:车号、出发地、目的地、发车日期、开出时刻、票价。
3)座位类型设定。
4)车次信息只允许用户查询,不能修改。
2.订票通过查询系统,客户根据自己的需求找到满意的车次,再输入个人信息后直接通过网上订票确定已预订选中的车票。
要求:订票记录应包括:会员名、车号、发车日期、订购日期、订购票数、总价。
3.退票可退票,通过查询系统,客户可以根据自己的名字找到自己的订票信息,通过退票模块退去已购车票。
4.2 系统需求说明为了保证系统能够长期、安全、稳定、可靠、高效的运行,本系统应该满足以下的性能需求。
1.准确性和及时性系统处理的准确性和及时性是系统的必要性能。
系统应能及时而且准确的根据用户权限及所输入的信息做出响应。
由于本系统的查询功能对于整个系统的功能和性能完成举足轻重。
作为系统的很多数据来源,而车票的数量和时间又影响用户的决策活动,其准确性和及时性很大程度上决定了系统的成败。
在系统开发过程中,必须采用一定的方法保证系统的准确性和及时性。
2.易用性本系统是直接面对用户的,而用户往往对计算机并不是非常熟悉。
这就要求系统能够提供良好的用户接口,易用的人机交互界面。
要实现这一点,就要求系统应该尽量使用用户熟悉的术语和中文信息的界面,从而保证系统的易用性。
3.安全性网上订票系统中涉及到的数据是客运公司相当重要的信息,系统要保证用户的权限,对于车次等信息用户只享有查询服务,不得更改;系统还要提供方便的手段供系统维护人员进行数据备份、日常安全管理、以及系统意外崩溃时数据的恢复等工作。
同时系统还要保证对数据库进行及时更新,保证数据一致性。
五、数据库逻辑设计5.1 ER图用户的需求具体体现在各种信息的提供、保存、更新和查询,这就要求数据库结构能充分满足各种信息的输出和输入。
针对火车站网上订票系统,通过对网上订票工作的过程、内容以及数据流程分析,设计如下所示的数据项和数据结构:1.车次信息包括:车号、出发地、目的地、发车日期、开出时刻、剩余座位数、票价。
2.订票记录包括:订单号、身份证号、车号、订购日期、订购票数、总价。
3.用户信息包括:用户名、身份证号、性别、电话。
E-R图如图2.2所示5.2 数据字典表2-5车次信息表BusInfo字段名数据类型是否可说明空BusID char(10) NOTNULL车号(主键)BusFrom varchar(50)NOTNULL出发地BusTo varchar(50)NOTNULL目的地BusDate Datetime NOTNULL发车日期(主键)BusBegin Datetime NOTNULL开出时刻BusEnd Datetime NOTNULL到达时刻TicketNum int NOTNULL剩余票数Price Money NOTNULL票价表2-6订单表OrderInfo字段名数据类型是否可空说明OrderID Char(10) NOTNULL订单号(主键)UserID Char(18) NOTNULL身份证号(外键)BusID char(10) NOTNULL车号(外键)BusDate datetime NOT 发车日期(外键)NULLOrderDat e datetime NOTNULL订购日期OrderNum Int NOTNULL订购票数Total Money NOTNULL总价表2-7用户表User字段名数据类型是否可空说明UserID char(18) NOTNULL身份证号(主键)User varchar(50)NOTNULL用户名Sex Char(2)性别Phone varchar(12)电话5.3 关系表实体联系实体用户购买车票管理员删改车票用户退订车票六、数据库物理设计6.1 索引在用户列表中,以用户的nick name为主键进行索引,通过nick name查询修改信息。
在火车票数据库中,以火车的车次为主键进行索引。
6.2 视图本节可选此环节设计在数据库应用生命周期的需求分析和收集阶段标识的用户视图。
通常,视图使用SQL或类似QBE的工具创建。
例如,购买车票6.3 安全机制在本火车票售票管理系统中,我建立了两种类型的安全机制,系统安全和数据安全。
在系统安全的建设方面,不允许以游客身份访问本系统,所有用户都必须注册并登陆,登录时会验证用户名和密码。
只有两者匹配时,才可访问本系统。
在系统安全方面实现了对方法的封装,能保证系统和数据两方面的安全。
在数据安全方面,数据库对象的访问和使用有严格的控制,其中的某些表只有具有特定权限才可以访问。
七、应用程序设计本系统综合应用了B/S和C/S架构,可以通过客户端或者网页进行对火车票的管理。
7.1 功能模块7.1.1登陆模块如果用户是新用户,可以在此注册。
如果是老用户,在验证密码正确以及用户存在的情况下,可以登陆成功。
7.1.2注册模块注册模块包含用户名,密码,身份证号以及手机号四项信息,其中有对密码的确认,以免发生误输的可能。
同时还会判断身份证的正误,首先是判断身份证的位数,然后可以通过特定的计算方式来计算出身份证号是否正确。
手机号同样是判断位数来判断手机号是否可用,若在真实应用中可以通过发验证码验证该手机号是否可用。
7.1.3购票模块在查询tab一栏中,通过点击往返箭头可以交换出发地与到达地,从而能更加方便的购买返程的票。
出发日期,用户不能手动输入,而是模仿了12306网站的通过点击日历中的日期来选择日期,一方面能够更好的规范日期格式,另一方面也有利于用户方便的选择自己的出行时间。
购票模块可以通过浏览器或者客户端两个方式进行操作。
操作的大体流程为,首先通过出发地以及目的地还有出发日期进行查询,然后由用户选择适合自己的车票进行购买,为了模仿真实的购票系统,个人感觉需要添加支付模块,但是由于个人能力有限并没有实现,所以购票成功后的状态是未支付状态,具体如下所示。
7.1.4退票模块下面显示具体的代码仅仅是为了排版的美观。
已经退票的车票如果点击退票会提示已经退票。
未退票的车票可以成功退票。
这是客户端部分。
7.1.5管理员模块管理员模块可以实现对火车票的管理,可以添加或者删除火车票。
首先需要添加车次,也可以删除车次。
然后对车次的具体座位进行票务的更改。
7.2 界面设计见上功能模块截图。
7.3 事务设计本火车票售票管理系统中涉及到的事务,均以现实世界火车票购票的日常事务为原型。
其中可圈可点的几处介绍如下。
登陆模式,需要知道用户的身份证号信息,以此对身份证进行核对。
每人一个账号,可以避免数据库发生重大错误。
注册过程中,通过核对两次输入的密码是否一致可以保证用户密码的可靠性,对身份证号以及手机号的核对可以避免之后购票的时候出现失误。
八、测试和运行该系统可以完美运行在linux系统以及windows系统之上,还可以兼容ie各个版本。
在运行过程中,如果数据错误还会给予用户以详细的提示,很好的实现了人机交互。
除此之外,还对此火车票售票管理系统进行了低强度的压力测试。
测试结果较为理想九、总结在未来相当长的时间内,火车将成为21世纪最为可靠,快速,便捷的出行方式,同时,随着我国经济快速发展,和经济增长方式逐渐向发展内需方向转变,为中国铁路的发展带来了全新的机遇。
对火车票预定与管理系统,我认为将会出现以下几种发展趋势:1:纸质车票将会被电子车票代替:电子车票的出现将乘客的唯一标识例如指纹或RFID技术作为购票和乘车凭证,因为免去了纸质车票的传递过程,将更大程度的方便乘客选择火车出行,真正的可以做到足不出户就能完成车票的订购。