1、论文火车票预定系统的设计与实现火车票预定系统的设计与实现学 生 姓 名: 学 院: 专 业: 班 级: 学 号: 指 导 教 师: 完 成 日 期: 摘 要针对火车站的订票实际情况,按照软件工程的结构化设计思想,本次课程设计经过项目的可行性研究和需求分析、总体设计、详细设计,以及编码实现和调试等步骤设计开发了火车票预定系统。并运用数据流图和数据字典、E-R图和数据库逻辑结构、层次图、系统流程图、以及程序流程图,对该系统的数据需求、数据库、系统软件结构、系统流程、以及处理过程等进行了分析和设计。本次课程设计利用MyEclipse 开发工具和MySQL数据库来开发这个火车票预定系统。该系统要解决的
2、是火车站网上订票工作所要解决的问题,可以满足火车站网上订票的基本要求,包括查询、订票、退票等三个方面的功能。该系统能运用到火车站订票的工作中,根据用户的需求,设置其权限,并快捷方便的为用户提供服务。关键词:软件工程 需求 设计 服务AbstractAccording to the actual situation, the train tickets according to the structural design of software engineering, the curriculum design of project feasibility study and through
3、the requirement analysis, system design, detailed design and coding and commissioning procedures designed and developed station tickets online system. And by using the data flow chart and the data dictionary, e-r chart and logical structure, database, system flowcharts, level and program flow chart
4、of the system, the data needs, database, software system structure, system, and flow process are analyzed and the design.This course design using the MyEclipse development tools and MySQL database to develop this train tickets online system. This system to solve the train tickets online work is to s
5、olve the problem, can meet the basic requirements of train tickets online, including tracing, booking tickets, refund from three aspects of the function. This system can be applied to train tickets work, according to the needs of users, set permissions and convenient for users to provide services.Ke
6、ywords: Software Engineering Demand Design Service第一章 项目概述1.1现系统概述目前火车站售票的状况是仅靠手工操作,以现有的工作人员很难应付车票订购高峰时刻的大量数据处理问题。同时还会出现由此带来的大量记录存放和管理所带来的问题。本次设计拟开发一个火车票预定系统,可以降低工作人员的工作量,提高工作人员的工作效率,同时方便顾客订票。火车站市场的管理和规范问题,是困扰我们多年的一个老问题,也是政府管理中的一个难点,订票是客运业务中的一个最基本的业务,表面上看,它只是火车站业务的一个简单的部分,但是它涉及到管理与客户服务等多方面,因此,过去传统的售
7、票方式已经不能满足现代客运业务流量剧增的客观要求,这就要求一种全新的订票方式网上订票,来缓解订票高峰时期的客运压力,并为用户提供方便快捷的订票服务。本次设计便是利用开发工具MyEclipse 和MySQL数据库共同开发的一个火车票预定系统的设计与实现,它能方便快捷地运用在火车站订票业务的营运之中,可以降低工作人员的工作量,提高工作人员的工作效率,同时方便顾客订票。因特网技术的飞速发展为铁路带来了全新的售票方式。 1994年10月,美国联合铁路公司率先推出了网上售票系统,乘客只须在网上输入自己的信用卡号和有效期,就可以直接购买车票。出票方式有电子车票、车站取票、送票上门等多种方式。网上订票给旅客
8、带来了方便。购票者足不出户就可在电脑上查询火车动态、票价和车票的可售情况,并直接订购车票,免去了奔波之苦。网上订票还扩充了铁路公司的销售网点。截至1997年9月底,世界上排名前20位的铁路公司都有了自己的网上售票系统。网上订票的优越性使国内越来越多的铁路公司着手研制自己的网上订票系统。1999年9月,中国羊城铁路公司的网上订票系统正式启动,只要进入羊城铁路公司的网上订座页面就可以自己订购车票了,票款的支付方式为网上支付和现金支付。1.2系统组织机构目前系统组织机构如下图1-1所示:售票情况统计图1-1系统组织机构图1.3系统业务流程本系统设计主要是根据订票业务的基本流程进行的,系统功能包括如下
9、几个方面:查询:分为对车次信息的查询和客户对已订车票信息的查询订票:通过查询系统,客户根据自己的需求找到满意的车次,再输入个人信息后直接通过网上订票确定已预订选中的车票。退票:可退票,通过查询系统,客户可以根据自己的名字找到自己的订票信息,通过退票模块退去已购车票会员管理图1-2 系统的业务流程 第二章 系统的可行性研究与需求分析2.1 可行性研究可行性研究的目的就是用最小的代价在尽可能短的时间确定问题是否能够解决。该阶段通过对系统目标的初步调研和分析,提出可行性方案并进行论证。我们在这里主要从技术可行性、经济可行性和操作可行性三方面进行分析。可行性研究的目的就是用最小的代价在尽可能短的时间确
10、定问题是否能够解决。该阶段通过对系统目标的初步调研和分析,提出可行性方案并进行论证。我们在这里主要从技术可行性、经济可行性和操作可行性三方面进行分析。2.1.1经济可行性开发该系统所需的相关资料可以通过已存在的网上订票系统进行调查采集,所需的其他应用软件、硬件系统也易于获得.因此,开发成本较低。而引进使用本系统后,与传统方式相比,具有高效率、低成本、高质量的特点,可以节省不少人力、物力及财力。所以,从经济的角度来看,该系统可行。2.1.2技术可行性开发工具:JSP 数据库环境:MySQL系统环境:Microsoft Windows 2000或以上版本。系统实现依靠相对熟悉的JSP语言和MySQ
11、L数据库系统,其基本操作实质还是对数据库进行添加、删除、查找等操作,暂不存在技术问题。2.1.3操作可行性系统采用菜单式,实现用户与数据库的交互,界面简洁友好,操作方便。用户只需对订票流程和业务调查了解即可,不需掌握数据库等相关知识。2.2 需求分析需求分析是软件设计的一个重要的环节。本阶段对订票系统的应用情况作全面调查,以确定系统目标,并对系统所需要的基础数据以及数据处理要求进行分析,从而确定用户的需求。用户对系统的需求我们从以下几方面进行分析。2.2.1功能需求本网上订票系统应该具备如下功能:1. 查询分为对车次信息的查询和客户对已订车票信息的查询。要求:1) 对车次的查询,可以按照发车车
12、次进行查询;2) 车次信息包括:车号、出发地、目的地、发车日期、开出时刻、票价;3) 座位类型设定;4) 车次信息只允许用户查询,不能修改。2. 订票通过查询系统,客户根据自己的需求找到满意的车次,再输入个人信息后直接通过网上订票确定已预订选中的车票。要求:订票记录应包括:会员名、车号、发车日期、订购日期、订购票数、总价。3. 退票可退票,通过查询系统,客户可以根据自己的名字找到自己的订票信息,通过退票模块退去已购车票。2.2.2数据需求信息需求,即在系统中需要处理哪些数据。根据对火车票预定系统的设计与实现的分析,本系统的信息需求如表2-1所示。表2-1信息输入输出信息输入信息处理信息输出用户
13、输入所需车次检索系统数据库符合用户需求的车次及相关信息用户输入个人信息及所需订购的车票信息更新系统中的订票信息,将新信息存入系统数据库操作反馈(如订票成功)用户输入自己的名字、身份证号;或交易的订单号检索系统数据库符合用户需求的订票信息用户输入自己的名字检索系统数据库以得到订票记录,删除用户请求的订票记录,更新系统数据库操作反馈(如退票成功等)2.2.3性能需求为了保证系统能够长期、安全、稳定、可靠、高效的运行,本系统应该满足以下的性能需求。1. 准确性和及时性系统处理的准确性和及时性是系统的必要性能。系统应能及时而且准确的根据用户权限及所输入的信息做出响应。由于本系统的查询功能对于整个系统的
14、功能和性能完成举足轻重。作为系统的很多数据来源,而车票的数量和时间又影响用户的决策活动,其准确性和及时性很大程度上决定了系统的成败。在系统开发过程中,必须采用一定的方法保证系统的准确性和及时性。2. 易用性本系统是直接面对用户的,而用户往往对计算机并不是非常熟悉。这就要求系统能够提供良好的用户接口,易用的人机交互界面。要实现这一点,就要求系统应该尽量使用用户熟悉的术语和中文信息的界面,从而保证系统的易用性。3. 安全性网上订票系统中涉及到的数据是客运公司相当重要的信息,系统要保证用户的权限,对于车次等信息用户只享有查询服务,不得更改;系统还要提供方便的手段供系统维护人员进行数据备份、日常安全管
15、理、以及系统意外崩溃时数据的恢复等工作。同时系统还要保证对数据库进行及时更新,保证数据一致性。2.2.4数据流图数据流图(DFD:Data Flow Diagram)是对调查材料进行加工、提炼、抽出其中只反映组织中信息运动规律的部分,是组织中信息运动的抽象,是信息系统逻辑模型的主要形式。由于图形描述简明,清晰,不涉及到技术细节,所描述的内容是面向用户的,所以数据流程图是系统分析人员与用户进行交流的有效手段,也是系统设计的主要依据之一。数据流图符号说明如表2-2所示。表2-2 数据流图符号说明图形符号名称符号说明实体记述系统之外的数据提供或数据获得组织机构或个人,框内为试题名称处理记述某种业务的
16、手工或计算机处理,其中,PM区记述处理标号,C区记述处理名称数据流记述数据流的流动方向,FM记述数据流名称数据存储记述与处理有关的数据存储,DN区记述存储的标号,S区记述存储数据的名称退票图2.3数据流图2.2.5数据字典数据字典对数据流程图的各种成分其注解、说明作用,给这些成分赋以实际的内容并且还要对系统分析中其他需要说明的问题进行定义和说明。数据字典是对DFD的说明,是系统设计、系统实施及系统维护的重要基础资料。数据字典描述的主要内容有:数据流、数据元素、数据存储、加工处理、其中数据元素是组成数据流的基本成分。火车票网上预定系统专家数据管理模块数据字典如下:1. 数据元素:是不可再分的数据
17、单位名字:用户功能模块描述:用于区分用户使用系统权限编号:F1.1数据类型:字符串取值范围:管理员、会员 名字:信息管理模块描述:对车票的信息查询和订购信息查询编号:F1.2数据类型:字符串取值范围: 车系信息、订购车票信息名字:订退票管理模块描述:进行订票退票处理编号:F1.3数据类型:字符串取值范围: 订票信息和退票信息处理名字:管理设置模块描述:车票信息管理、会员管理、订票管理和售票情况统计编号:F1.4数据类型:字符串数据来源: 管理信息2. 数据存储:数据存储是数据结构停留或报讯的地方。也是数据流的来源和去向之一。可以是手工文档或手工凭单,也可以使计算及文档,一般而言,应包括如下内容
18、:数据存储名,说明,编号,输入的数据流,输出的数据流,组成(数据结构),数据量,存取频度,存取方式。名字:用户信息描述:与用户相关的属性集合编号:D1组成:用户名、地址、性别、电话、密码、邮箱、权限、验证码名字:信息查询描述:与信息查询相关的属性集合,存放订单信息的文件,以供用户查询,并作相应操作编号:D1组成:用户名、车号、发车日期、订购日期、订购票数、总价3. 数据流:是数据结构在系统内传输的路径。岁数据流的描述通常包括如下内容:数据流明,说明,编号,数据流来源,数据流去向,组成(数据结构)名字:退订票管理描述:与退订票相关的信息编号:F1组成:订票信息、退票信息、名字:用户信息管理描述:
19、动态进行专家查询的条件组合编号:F2.1组成:用户名、地址、性别、电话、密码、邮箱、权限、验证码4. 数据处理:是处理过程的具体处理逻辑通常在详细设计过程中用判定表或评定树来描述。在数据字典中,只需要描述处理过程说明性信息,通常包括以下内容:处理过程名,说明,输入数据流,输出数据流,处理名字:顶退票管理描述:预订车票、退车票编号:P1.1、P2.1输入/输出数据流: 预定车票、退车票输入输出2.2.6系统数据模型用户的需求具体体现在各种信息的提供、保存、更新和查询,这就要求数据库结构能充分满足各种信息的输出和输入。针对火车票预定系统的设计与实现,通过对网上订票工作的过程、内容以及数据流程分析,
20、设计如下所示的数据项和数据结构:1. 车次信息包括:车号、出发地、目的地、发车日期、开出时刻、剩余座位数、票价。2. 订票记录包括:订单号、身份证号、车号、订购日期、订购票数、总价。3. 用户信息包括:用户名、身份证号、性别、电话。表2-4 E-R图符号约定符号含义符号说明实体表示实体集属性表示属性联系表示联系集线段将属性连接到实体集或将实体集连接到联系集票价图2-5实体-联系图(E-R图)2.2.7数据库逻辑结构由系统的概念模型导出关系模式。主要原则及实现方法如下:1. 主要原则:一个实体型转换为一个关系模式。实体的属性就是关系的属性,实体的码就是关系的码。1) 一个1:1联系可以转换为一个
21、独立的关系模式,也可以与任意一端对应的关系模式合并。如果转换为一个独立的关系模式,则与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,每个实体的码均是该关系的候选码。如果与某一端实体对应的关系模式合并,则需要在该关系模式的属性中加入另一个关系模式的码和联系本身的属性。2) 一个1:n联系可以转换为一个独立的关系模式,也可以与n端对应的关系模式合并。如果转换为一个独立的关系模式,则与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码n端实体的码。3) 一个m:n联系转换为一个关系模式。与该联系相连的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码各实体码
22、的组合。4) 一个或三个以上实体间的一个多元联系可以转换为一个关系模式。与该多元联系相连的各实体的码以及联系本身的属性均转换为关系的属性,而关系的码为各实体码的组合。2. 实现:依据上述原则,得出管理信息系统的关系模式:1) 登陆用户(用户ID,密码)2) 车次出发地,目的地,发车日期(主键),开出时刻,到达时刻,剩余票数,安全数,票价3) 订单订单号(主键),身份证号(外键),车号(外键),发车日期(外键),订购日期,订购票数,总价由于关系当中没有属性的存在,为了实现成套出库的功能也没有消除部分依赖,所以该数据库设计仅为1NF火车票预定系统的设计与实现数据库中各个表格的设计结果如表2-5表2
23、-7所示。每个表格表示在数据库中的一个表。表2-5车次信息表BusInfo字段名数据类型是否可空说明BusIDchar(10)NOT NULL车号(主键)BusFromvarchar(50)NOT NULL出发地BusTovarchar(50)NOT NULL目的地BusDateDatetimeNOT NULL发车日期(主键)BusBeginDatetimeNOT NULL开出时刻BusEndDatetimeNOT NULL到达时刻TicketNumintNOT NULL剩余票数PriceMoneyNOT NULL票价表2-6订单表OrderInfo字段名数据类型是否可空说明OrderIDCh
24、ar(10)NOT NULL订单号(主键)UserIDChar(18)NOT NULL身份证号(外键)BusIDchar(10)NOT NULL车号(外键)BusDatedatetimeNOT NULL发车日期(外键)OrderDatedatetimeNOT NULL订购日期OrderNumIntNOT NULL订购票数TotalMoneyNOT NULL总价表2-7用户表User字段名数据类型是否可空说明UserIDchar(18)NOT NULL身份证号(主键)Uservarchar(50)NOT NULL用户名SexChar(2)性别第三章 系统的总体设计3.1 系统软件结构设计3.1.
25、1 软件结构本火车票预定系统的设计与实现可划分为信息查询、网上订票、取消订票三个部分。其中信息查询又可分为车次查询和订单查询两个部分。其层次图如图3.1所示。取消订票图3.1火车票预定系统的设计与实现的层次图3.1.2 模块算法1. 各级别算法1) 界面级算法处理输入信息,产生相应任务。信息加工图3.2界面级算法示意图2) 数据库级算法执行相应数据库操作,并直接返回信息反馈。任务数据校验,调用相关模块功能图3.3数据库级算法示意图3) 任务级算法执行所需功能,满足用户需求。界面显示图3.4任务级算法示意图2. 调用关系1) 界面模块调用任务模块2) 任务模块调用数据模块3) 数据模块调用界面模
26、块显示3.2 系统流程图操作反馈图3.5顶层系统流程事务图3.6车次信息查询系统流程图输入查询条件图3.7订单信息查询系统流程图输入订票信息图3.8订票系统流程图输入退票信息图3.9退票系统流程图第四章 详细设计4.1模块算法1. 各级别算法1) 界面级算法处理输入信息,产生相应任务。信息加工图4.1界面级算法示意图2) 数据库级算法执行相应数据库操作,并直接返回信息反馈。任务数据校验,调用相关模块功能图4.2数据库级算法示意图3) 任务级算法执行所需功能,满足用户需求。界面显示图4.3任务级算法示意图2. 调用关系1) 界面模块调用任务模块2) 任务模块调用数据模块3) 数据模块调用界面模块
27、显示4.2 接口设计4.2.1 用户接口用户通过界面接口实现参数的输入,进入相应的界面后输入提示的信息即可产生相应的任务。4.2.2 外部接口接口通过一个数据转换器,将网络二进制数据流转换为一个合适的数据结构单位并添加到缓冲区中。4.2.3内部接口表4-1 内部接口说明表顶层模块二级模块接口数据模块底层数据操作模块取出记录集,执行SQL语句用户操作模块对应数据库相关表操作界面模块界面模块生成任务缓冲区模块生成批处理4.2.4 软件接口本系统程序所使用的数据库来源于主机数据库,所以系统数据与主机数据库数据向一致。4.2.5 模块内部模块以接受参数方式独立登陆主机数据库并且独立运行,返回数据包显示
28、在界面上。4.3 过程设计4.3.1 程序流程图本系统主界面为用户设计了三个功能操作以供选择:查询,订票,退票。另外,为方便用户,还将“退出系统”也单另列了出来,用户可以根据需要触发不同事件。其处理流程如图4.5所示。图4.5图4.10反映了不同触发事件具体的处理流程。1. 系统用户权限的系统主处理流程登录,确定访问权限图4.4系统用户权限的系统主程序流程图2. 车次信息查询处理流程返回主页图4.5车次信息查询程序流程图3. 订票处理流程错误提示图4.6 订票程序流程图4. 订票信息查询处理流程退票图4.7订票信息查询模块程序流程图5. 退票模块处理流程输入退票信息图4.8退票模块程序流程图第
29、五章 系统的实现与调试5.1 应用系统的开发及测试5.1.1 系统首页图5.1系统首页5.1.2 产品说明图5.2产品说明5.1.3 用户登录及访问权限本系统设计要求用户通过登录框选择访问权限,登录系统。其中,用户须输入用户名和密码,以进入系统。未使用过本系统的用户选择注册会员,系统自动跳转至主界面。系统用户权限登录访问时,车次信息查询、订票信息查询、订票、退票等功能均可用。系统用户输入正确的用户名和密码,访问系统,得到其相应的权限。如图5.3-5.4。 图5.3登录框 系统用户输入错误的用户名或身份证号,系统拒绝其访问。如图5.5。图5.5 出错提示新用户在登录窗口选择“注册”单选钮,系统自
30、动跳转到注册页面,并控制其访问权限,如图5.6所示。图5.6新用户权限登录主窗体5.1.4 车次信息查询对车次信息的查询,系统提供了车次信息,进行精确的查询,系统经过检索,返回符合用户要求的车次,再由用户自行选择满意的车次。图5.7选择查询条件。图5.7车次查询条件框5.1.5 订票信息查询对于订票信息的查询,本系统只提供一种查询方式。由于用户在登录时已选择了访问权限,且输入了身份证号等确认具体身份的重要信息。故用户可以通过菜单选项直接查询自己的订票信息。该信息由系统自动返回,简便、快捷。图5.8订票5.1.6 订票系统用户可以通过两种方式进入到订票环节。一是在主界面的菜单选项中,直接选择“订票”服务,二是用户可
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1