火车票售票系统-软件工程设计报告解析_第1页
火车票售票系统-软件工程设计报告解析_第2页
火车票售票系统-软件工程设计报告解析_第3页
已阅读5页,还剩21页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、成绩:软件工程课程设计说明书专 业 网络工程班 级_姓 名学 号指导老师2014-09-18完成日期火车票售票系统摘要 火车站是目前客流量最大的运输工具。 对于售票如此大的工作量, 完全靠人 工是不可能达到高效水平的, 因此,开始思考开发提高售票效率以及劳力的计算 机售票系统。 售票系统的核心是数据库技术, 利用数据库将整个火车站的票务情 况存入计算机,再配置上用户接口,基本实现了查询、售票、退票、订票、改签 等功能,一定程度上提高了售票效率。针对火车站的售票实际情况, 按照软件工程的结构化设计思想, 经过项目的 可行性研究和需求分析、总体设计、 详细设计, 以及编码实现和调试等步骤设计 开发

2、了火车站网上订票系统。并运用数据流图和数据字典、 E-R 图和数据库逻辑 结构、层次图、系统流程图、以及程序流程图,对该系统的数据需求、数据库、 系统软件结构、系统流程、以及处理过程等进行分析和设计。关键词:信息管理、 售票、数据库 、用户接口目录第一章 前言 51.1 项目开发的必要性 51.2 项目功能的概述 5第 2 章 软件开发环境 62.1 软件开发环境 . 62.2 软件性能需求 . 6第 3 章 需求分析 63.1 可行性研究 63.1.1 经济可行性 . 63.1.2 技术可行性 . 63.1.3 操作可行性 . 73.2 需求分析 73.2.1 功能需求 . 73.2.2 数

3、据需求 . 83.2.3 性能需求 . 83.2.4 约束与限制 . 9第 4 章 总体设计 94.1 系统概要 . 94.2 系统结构组成 . 10第 5 章详细设计 115.1 数据库设计 . 115.1.1 数据库介绍 . 115.1.2 数据表设计 . 125.1.3 数据表的应用 . 145.2 模块设计 . 145.2.1 登录/ 注册模块 . 155.2.2 查询模块 . 165.2.3 售票模块 . 185.2.4 退票模块 . 205.2.5 改签模块 225.2.6 修改车次模块 245.2.7 统计信息模块 25第一章 前言1.1 项目开发的必要性火车是目前客流量最大的运

4、输工具,未来很长一段时间中也会延续这种现 状。传统的人工售票成本大,出错率高等缺点,已是跟不上现代人的生活节奏。 而软件相对于人工来说,它有更高处理速度,出错率也将很低,当然,其成本也 会大大降低。如今, 对火车的要求在于提高售票效率, 火车售票也渐渐进入自动 化:自动化售票,快捷方便的查询、改签、退票,智能化的订票。在曾经看来是 复杂繁琐的工作,变得简单快速人性化。 通过提高售票效率, 还可以提高火车运 输甚至整个运输业的运行效率。火车站售票系统的主要作用是通过计算机实现票务信息的统一管理, 来提高 工作效率, 使售票员售票和乘客购票更加方便高效。 实现计算机管理的当然少不 了数据库技术。

5、我们可以利用数据库将整个火车站的票务情况存入计算机, 再配 置上界面友好功能完善的用户接口, 以满足用户需求。 一个火车站售票信息管理 系统应达到的目标是提供及时、准确的信息服务,加快信息检索的效率, 实况灵 活的查询, 减轻管理人员制作报表和统计分析的负担, 且系统规模不太大但又要 保证支持日常工作的要求,以便系统应易于扩充,提高管理水平。1.2 项目功能的概述本系统主要用于火车票的销售,提供了以下几个子功能:用户登录和注册、 火车票订购、火车票信息查询、订票查询、售票、取票方式、改签、退票以及后 台方面的火车班次信发布、取消火车班次、订票生成、取票号生成等后台功能。火车站售票系统将由四部分

6、组成: 网上订票客户程序,售票员系统,系统管 理员系统以及置于服务器的数据库服务器第 2 章 软件开发环境2.1 软件开发环境开发工具: Visual C+6.0使用的数据库: Server 2008系统开发语言: C+开发环境: Win 72.2 软件性能需求本系统对电脑配置要求不高, 一般中低端配置就行, 由于开发环境是 Win 7, 其他操作系统运行此系统的稳定性还未知。第 3 章 需求分析3.1 可行性研究该阶段通过对系统目标的初步调研和分析, 提出可行性方案并进行论证。 我 们在这里主要从技术可行性、经济可行性和操作可行性三方面进行分析。3.1.1 经济可行性本系统其他应用软件、 硬

7、件系统也易于获得 .因此,开发成本较低。 而引进使 用本系统后,与传统方式相比,具有高效率、低成本、高质量的特点,可以节省 不少人力、物力及财力。所以,从经济的角度来看,该系统可行。3.1.2 技术可行性系统实现依靠我相对熟悉的 C+语言和SQL Server2008数据库系统,其基 本操作实质还是对数据库进行添加、 删除、查找等操作。 所以,从技术角度来看,该系统可行。3.1.3 操作可行性系统采用菜单式, 实现用户与数据库的交互, 界面设计时将尽量使系统界面 简单易操作,充分考虑使用人员的习惯,使得操作简单,数据录入简单、迅速、 规范、可靠;统计、计算准确;制表灵活;适应力强。因此,操作方

8、面的可行性 也能满足。3.2 需求分析需求分析是软件设计的一个重要的环节。 本阶段对售票系统的应用情况作全 面调查,以确定系统目标, 并对系统所需要的基础数据以及数据处理要求进行分 析,从而确定用户的需求。用户对系统的需求我们从以下几方面进行分析。3.2.1 功能需求本火车售票系统应该具备如下功能:1、查询模块:分为对车次信息的查询和客户对已订车票信息的查询。要求:1)对车次的查询,可以按照发车车次进行查询;2)车次信息包括:火车列次、出发地、目的地、发车日期、开出时刻、票 价。3)座位类型设定。4)车次信息只允许用户查询,不能修改。2、售票模块:通过查询系统,根据客户的需求找到满意的车次,再

9、输入个人信 息后直接通过网上售票确定已预订选中的车票。要求 :售票记录应包括:会员名、车号、发车日期、订购票数、总价。3、退票模块:可退票,通过查询系统,可以根据客户的名字找到客户的订票信 息,通过退票模块退去已购车票。4、改签模块:当行程计划有变是,可改签,通过查询系统,可以根据客户的名 字找到客户的订票信息,通过改签模块改签已购车票。5、车次修改:提供车次信息、票价修改、站点修改、增加车次,减少车次、车 次的临时调度和临时路线更改等操作。6、统计信息:将要统计的车次号输进到统计界面,根据车次的售票情况作出销 售额、客流情况统计表。3.2.2 数据需求1、数据录入和处理的准确性数据的输入是否

10、正确是数据处理的前提, 错误的输入会导致系统输出的不正 确和不可用,从而得不到想要的结果。 数据的输入来源是手工输入。 所以系统地 界面要让用户容易使用,如果用户出现误操作,系统能简单明了的给出中文提 示。2、数据的一致性和完整性由于系统的数据是共享的, 在不同的代售点中,车次信息是共享数据,所以 如何保证这些数据的一致性,是系统必须解决的问题。要解决这一问题, 要求系 统能保证数据的一致性, 在数据录入处控制数据的去向, 并且要求对数据库的数 据完整性进行严格的约束。对于输入的数据, 要为其定义完整性规则,如果不能符合完整性约束, 系统 应该拒绝该数据,并给出出错提示。3、数据的共享与独立性

11、 整个售票系统的数据是共享的。 然而,从系统开发的角度上看,共享会给设 计和调试带来困难。因此, 应该提供灵活的配置, 使不同权限的用户都可以正常 进行操作。3.2.3 性能需求为了保证系统能够长期、安全、稳定、可靠、高效的运行,本系统应该满足 以下的性能需求。1. 准确性和及时性 系统处理的准确性和及时性是系统的必要性能。 系统应能及时而且准确的根 据用户权限及所输入的信息做出响应。 由于本系统的查询功能对于整个系统的功 能和性能完成举足轻重。 作为系统的很多数据来源, 而车票的数量和时间又影响 用户的决策活动, 其准确性和及时性很大程度上决定了系统的成败。 在系统开发 过程中,必须采用一定

12、的方法保证系统的准确性和及时性。2. 易用性本系统是直接面对用户的, 而用户往往对计算机并不是非常熟悉。 这就要求 系统能够提供良好的用户接口,易用的人机交互界面。要实现这一点, 就要求系 统应该尽量使用用户熟悉的术语和中文信息的界面,从而保证系统的易用性。此外,对服务器的要求,至少能够满足当地售票人员同时访问。对客户端, 在线使用的电脑中安装即可使用, 使用本系统功能时,电脑配置一般情况下, 响 应速度 2s 左右,3.2.4 约束与限制客户下订单提交后需在半小时内进行确认信息,并且做出相应的决定,如: 退票、换票、付款等。售票员在开车前半小时不准售票,在开车前 2 小时不准退 票。改签的天

13、数的范围为 1 天,一天内只能改签一次。关于操作权限,客户应该只有查询、订票、改签、退票的权限,售票员应该 只有售票和查询票务信息的权限, 管理员应该给予特殊权限, 使之能对票务信息 查询、修改。第 4 章 总体设计4.1 系统概要本火车站售票系统是根据需求分析开发的原型系统, 目的是为了火车站工作 人员顺利快速完成每次售票工作,以致火车运行畅通。该系统在开发各个阶段, 都突出现代软件设计的新思想、新技术的研究与应用及其有效性和实用性的证 实。系统使用的用户主要有:客户、售票员、系统管理员。都是在客服端界面上 进行操作, 并不需要了解服务器具体情况。 只要用户的计算机上安装本单机版软件便可方便

14、的使用本系统4.2 系统结构组成系统的软件系统总体分为五部分:登录、售票、退票、改签、用户管理。:登录模块:验证用户合法性,登录后设定用户权限;售票模块:提供查询和售票操作;退票模块:提供查询、核对信息和退票操作;改签模块:提供查询、核对信息和改签操作;车次修改:提供车次信息、票价修改、站点修改、增加车次,减少车次、车 次的临时调度和临时路线更改等操作;统计信息:将要统计的车次号输进到统计界面, 根据车次的售票情况作出销 售额、客流情况统计表。总体数据流图如下图:总体结构图下图:第5章详细设计5.1 数据库设计数据库介绍系统基于Visual C+6.0平台开发,使用了 Server2008数据

15、库。Server 2008 功能强大,方便系统管理员组织和共享的数据库,方便系统管理员工作组作出更好的决策。数据表设计F面具体创建每一个表:表1管理员信息字段名称字段类型主键外键是否为空默认值管理员IDVarchar(10)是否否001管理员姓名Varchar(50)否否否Admin管理员密码Varchar(16)否否否无表2售票员字段名称字段类型主键外键是否为空默认值售票员IDVarchar(10)是否否100售票员姓名Varchar(50)否否否无售票员密码Varchar(16)否否否无证件号码Varchar(20)否否否无联系地址Varchar(50)否否否无联系电话Varchar(20

16、)否否否无表3客户表字段名称字段类型主键外键是否为空默认值客户IDVarchar(10)是否否10000客户姓名Varchar(50)否否否无客户密码Varchar(16)否否否无证件号码Varchar(20)否否否无真实姓名Varchar(50)否否否无联系地址Varchar(100)否否否无邮政编码Varchar(10)否否否无联系电话Varchar(20)否否否无表4订单信息字段名称字段类型主键外键是否为空默认值订单号Varchar(10)是否否10000乘车日期Datetime否否是无车次Varchar(10)否是是无始发站Varchar(10)否否是无终点站Varchar(10)否否

17、是无席别Varchar(10)否否是无票种Varchar(10)否否是无张数Varchar (5)否否是1备注Varchar(100)否否是无表5列车信息表字段名称字段类型主键外键是否为空默认信息始发站Varchar(10)否否是无车次Varchar(10)是否否无终点站Varchar(10)否否是无发车时间Datetime否否是无停靠站Varchar(10)否否是无到站时间Datetime否否是无票种Varchar(10)否否是无表6火车票表字段名称字段类型主键外键是否为空默认信息票种Varchar(10)是否否无车次Varchar(10)否是否无张数Varchar(10)否否是1数据表的应

18、用当客户端登录时,后台服务器查找数据库,匹配相应的用户名和密码,若未找到,则返回错误信息。登录订票系统,用到售票员表,通过每一个售票员来操 作每一个终端,通过对客户需求(即:客户买票的要求填写订单信息表,包括火 车票表)。若要查询统计功能则需要以管理员身份登录,用到管理员信息表,管 理员可以修改列车时刻表。5.2模块设计本火车售票下系统主要有登录/注册、查询、售票、退票、改签、修改车次、 统计信息这些功能,设计时按这些功能设计模块就可以了。其详细功能图如下:本火车售票下系统有客户、售票员、系统管理员三种用户,其中客户可以自 己注册账户登录,而售票员和系统管理员则直接由相关部门授权给定账号密码登

19、 录。其程序流程图如下所示:登录是否是验证输入正确格验证输入确格式格式调用函数调用函数提示输入错误i t否注册到数据库中匹配提示账号或密码错、rr_误?匹配失败存储到数据库中四配成功登录成功登录是否客户登录/注册模块流程图输入登录信息售票员/管理员登录模块流程图522查询模块客户与售票员成功登录后,都具有查询车票信息的权限,其享有的操作是一 样的。查询可分为按车次查询与站点查询,客户或售票员通过输入待查询车次或者 站点查询车票的相关信息,包括票价,时刻,剩余票数等信息。若用户输入的车 次或者站点错误,系统会提示输入错误。能够对客户要求的大部分查询类型都能够查询,每个查询功能键都一目了 然,能快

20、速精确的显示要查询的信息。要求单次的查询系统的处理时间在 2秒以 内。查询功能时序图如下图:1:输人直询信啟HE仙A白_£e:车票嵐社 < T;车票信息吒L1客服或售票员4.遮回查踊的僧慝5:建立>©:车票信息查询功能时序图输入项目:车次号或者站名。输出项目:车次号、站点、发车时间、至V站时间、剩余票数、车票价格、旅 程历时。该模块通过访问数据库查询车票信息,提取客户或售票员输入的车次或者站 名,封装成SELECT语句,至威据库中查询车票信息,将信息返回到用户界面。 若输入错误,弹出错误提示框。其程序流程图如下图:查询功能流程图523售票模块客户成功登录后,享有

21、购票服务;售票员成功登录后,享有售票权限。购票与售票实质上是同一中操作,只不过是操作主体不同,下面对售票员的售票模块 进行说明。根据客户的需求如发车日期、发车时间、车票类型(学生票、军人票)等,客售票员查询相关的车票信息,选择客户所需要的车次,下订单,然后结算。单 次售票任务在25秒之内完成,系统的反应时间在 3秒之内;保证多台机器同时 运行该系统不会有过高延时。售票时序图如下图所示:售票功能时序图输入项目:车次、站点、日期。输出项目:车票信息、剩余票数。售票员输入客户预购车票的相关信息,调用查询模块,到数据库中查询是否 有票,若有,则选择需要的票数和车次,并将卖出票数写入数据库,数据库中对

22、应车次剩余票数刷新,储存,售票员选择打印火车票给客户;若无则提示车票已 售完,回到输入信息界面,重复上边的算法流程。售票算法流程图如下图:售票算法流程图524退票模块客户与售票员登录后,均有退票的权限,下面对售票员的退票情景进行分析。 处理客户由于某种情况需要退回车票的情况, 客户要在车站指定的时间内进 行退票。超过指定时间,只能改签,不能退票。系统及时的记录下所退回的车票, 更新数据库。退票时序图如下图所示:数据库DAO2;翻5:威场逼回 E乎甦住64衽是苦匹配确讯退幕&车斛息<退票控制器於售票员退票界面J-退票13:威功返回44:诞就金颉w佔:堤袖退赶额TIII退票时序图输入项目:车票编号。输出项目:确认车票界面、警告提示、退票款、数据修改成功。售票员扫描客户欲退车票的条形码,获得车票编号,售票员点击退票按钮, 将车票编号交给退票模块。退票模块到数据库中查询此票是否已售出,若匹配则 点击确认退票,退票模块修改数据库, 售票员返还退票款;若不匹配则会提示售 票员此票未售出。退票算法流程图如下图所示:退票算法流程图525改签模块客户与售票员登录

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论