火车站售票系统概要设计.doc

上传人:本田雅阁 文档编号:2529858 上传时间:2019-04-05 格式:DOC 页数:14 大小:217.02KB
返回 下载 相关 举报
火车站售票系统概要设计.doc_第1页
第1页 / 共14页
火车站售票系统概要设计.doc_第2页
第2页 / 共14页
火车站售票系统概要设计.doc_第3页
第3页 / 共14页
火车站售票系统概要设计.doc_第4页
第4页 / 共14页
火车站售票系统概要设计.doc_第5页
第5页 / 共14页
点击查看更多>>
资源描述

《火车站售票系统概要设计.doc》由会员分享,可在线阅读,更多相关《火车站售票系统概要设计.doc(14页珍藏版)》请在三一文库上搜索。

1、四、概要设计说明书1引言21.1编写目的21.2项目背景21.3定义21.4参考资料32任务概述32.1 目标32.2 运行环境32.3 需求概述32.4条件与限制43总体设计43.1处理流程43.2总体结构和模块外部设计63.3功能分配84接口设计84.1外部接口84.2内部接口85数据结构设计95.1逻辑结构设计105.2物理结构设计115.3数据结构与程序的关系116运行设计116.1运行模块的组合116.2运行控制116.3运行时间127出错处理设计127.1出错输出信息127.2出错处理对策128.安全保密设计129.维护设计13火车站售票系统概要设计说明书1引言1.1编写目的本火车

2、站售票系统项目的前一阶段,即需求分析阶段中已经将系统用户对本系统的需求做了详细的阐述,这些用户需求已经在上一阶段中对网络上的一些铁路局,铁路火车站中获得,并在需求说明书中得到详尽叙述及阐明。 本阶段在系统的需求分析的基础上,对火车站售票系统做概要设计。主要解决了实现该系统需求的程序模块设计问题。包括如何把该系统划分成若干个模块、决定各模块之间的接口、模块之间传递的信息,以及数据结构、模块结构的设计等。在以下的概要设计报告中将在本阶段中对系统所做的概要设计进行详细的说明。 在下一阶段的详细设计中,程序设计员可参考概要设计报告,在概要设计对火车票售票系统所作的模块结构设计的基础上,对系统进行详细设

3、计。在以后的软件测试及软件维护阶段也可参考此说明书,以便于了解在概要设计过程中所完成的各模块设计结构,或在修改时找出本阶段设计的不足或错误。1.2项目背景本系统主要用于火车票的销售,提供了以下几个子功能:用户登录和注册、火车票预订、火车票信息查询、订票查询、售票、取票方式、退票以及后台方面的火车班次信发布、取消火车班次、订票生成、取票号生成等后台功能。 火车站售票系统将由四部分组成:网上订票客户程序,售票员系统,系统管理员系统以及置于服务器的数据库服务器。本系统与其他系统的关系如下:客户程序售票员系统数据库服务器网 络客户程序系统管理员系统客户程序1.3定义1.3.1 专门术语SQL SERV

4、ER:系统服务器所使用的数据库管理系统(DBMS)。SQL:一种用于访问查询数据库的语言。事物流:数据进入模块后可能有多种路径进行处理。主键:数据库表中的关键域。值互不相同。外部主键:数据库表中与其他表主键关联的域。ROLLBACK:数据库的错误回复机制。1.3.2 编写系统:若未特别指出,系统指火车站售票系统。SQL:Structured Query Language(结构化查询语言)。1.4参考资料a. 实用软件工程清华大学出版社 陆惠恩著 2006年5月b. 软件项目管理案例教程 机械工业出版社 韩万江、姜立新著 2004年1月c. 中国铁路网2任务概述2.1 目标主要为了解决实现该系统

5、需求的程序模块设计问题。包括如何把该系统划分成若干个模块、决定各模块之间的接口、模块之间传递的信息,以及数据结构、模块结构的设计等。在以下的概要设计报告阶段中将在本阶段中对系统所作的概要设计进行详细的说明。2.2 运行环境 系统将由四部分组成:网上订票客户程序,售票员系统,系统管理员系统以及置于服务器的数据库服务器。该系统能运行在Windows98以上操作系统之上(客户端),且支持各种主流浏览器,也能运行在Unix、Linux等操作系统(服务端),如果还需要运行在其他的操作系统,需要对软件进行重新的编译。2.3 需求概述为了便于客户预定火车票,客户端把用户预定火车票的订单信息,包括送票方式、乘

6、车日期、车次、始发站、终点站、票种和张数,提交后传输到服务器端,由系统管理员来审核通过,最后确认,返回客户端,告知用户到规定的售票点去领取火车票或者送票员送票上门。用户要在当天2个小时到网站去确认信息,并记住领取火车票的取证号,凭证件到火车站,经售票员校对无误后即可领取车票。用户可以直接到火车站通过售票员进行购买车票,如果想要退票应在发车前6小时到火车站由售票员确认进行退票操作。如果用户想要退订车票应该在开车前1天到火车站或者在本网上进行退订操作。要求系统能有效、快速、安全、可靠和无误的完成上述操作,并要求用户界面简单明了,易于操作,服务器程序易于维护。2.4条件与限制用户订单提交后需在开车前

7、的12小时之前进行确认信息,并且做出相应的决定,如:退票、换票等。如果用户的订单是11天之内的,用户应在开车11天内到本网站进行查询。售票员在开车前一小时不准售票,在开车前6小时不准退票。改签的天数的范围为1天。3总体设计3.1处理流程下面将使用(结构化设计)面向数据流的方法对火车站售票系统的处理流程进行分析。系统可分为两大部分:一是客户端程序,二是服务器端程序。以下将分别对系统的这两大部分进行流程分析:3.1.1 客户端的程序流程客户端的输入信息为用户的基本信息、订单的基本信息、车票的销售信息,输出的信息为打印订单、打印车票和确认或出错信息。其内部处理流程如下:324用户资料经网络送服务器程

8、序7订票/取票8165订单号0车票销售信息13打印订单121411输出确定预订信息服务器经网络送来回答1715109输出错误信息161418输出确定预订信息1920打印火车票下面对各模块(以数字表示)进行功能说明:1读入并确定(订票/取票),若输入是订票时转入2,输出则转入5。2读入用户资料,读取所输入的用户资料,并将其格式化,将格式化数据送3。3检验输入资料,检验格式化输入资料,初步检查输入是否有误,它是一个事务处理中心,有误转2再次读入,检查无误则将数据送4。4准备服务器数据,由格式化用户资料准备需发送到服务器的数据,将准备好的数据送7。5读入订单,读取所输入的订单号,并将其格式化,将格式

9、化数据送6。6准备服务器数据,由格式化订单号准备需发送到服务器的数据,不同于4,它将准备的是订单号,将准备好的数据送7。0读入车票销售信息,即在火车站购票或退票的信息,将准备好的数据送7。7准备网络数据包,将数据准备/加密成网络传输数据包。8网络数据发送,将数据包经网络发送到服务器程序,它是程序与网络的接口。9网络数据接受,接受由服务器程序经网络传送到客户端的数据包,它是程序与网络的接口。10解开/判断,解开9所接受的数据包,并判断数据是订票数据、购票数据、退票数据或是取票数据,它是事务处理中心,是订票、购票、退票则将数据送11,是取票则将数据送18。11订票、购票或退票成功与否,由数据判断订

10、票、购票或退票是否成功,它是事务处理中心,若操作成功则将数据送12,不成功则将数据送15。12准备输出数据,由接收的服务器数据准备输出数据,其中关于订单的数据将送13,其他车票销售信息和用户相关资料送14。13打印订单,由订单信息处理订单格式并打印出订单。14输出定位确定,在屏幕上显示确定定位及其他信息。15判断错误,由数据判断出错误类型,将类型送到16。16准备错误语句,由具体错误类型准备错误语句,送17。17输出错误语句,在屏幕上显示对应错误语句。18取票核对成功与否,由数据判断取票核对是否成功,若成功则将数据送19,否则送15。19准备火车票输出数据,由接收的服务器数据准备将打印的火车票

11、数据数,据其中关于订单的火车票的数据送入20,其他包括用户相关资料等送14。20打印火车票,由订单信息及列车信息处理订单格式并打印出火车票。3.1.2 服务器程序流程7654客户端经网络送来数据客户端网络送来的数据981716321数据库(班次、票务)送客户端13来自客户端1211101415下面对各模块(以数字表示)进行功能说明:1网络数据接收,接收由客户端程序经网络传送到服务器的数据包,它是程序与网络的接口。2解开数据,解开加密打包的数据,并将回复的数据格式化送入3。3判断操作,由数据判断需要做什么数据操作,是事务处理中心,若为订票、购票、退票操作则将数据送4,若为取票操作则将数据送10。

12、4准备数据库查询语句,由订票、购票、退票数据准备访问SQL SERVER数据库所需的SQL语句,送入5。5数据库操作,运行SQL语句,查询并存入数据库,获得相应的订票、购票数据,将数据送入6。它需要包括初步对查询的判断。它必须为乘客安排可抵达目的地的有座位的班次。6判断查询是否成功,利用查询所得的数据判断订票、购票、退票是否成功,是事务处理中心,若操作成功则将数据送7,不成功则将数据送8。7准备回送数据,准备订票、购票成功后需回送客户端程序的数据,送6。8确定原因,由查询数据判断订票、购票、退票不成功的原因,送9。9准备回送数据,根据不成功的原因,准备需回送客户端程序的数据,送16。10准备数

13、据库查询语句,由领票数据、购票数据和退票数据准备访问SQL SERVER数据库所需的SQL语句,送11。11数据库操作,运行SQL语句,查询并存入数据库,获得相应的取票数据,将数据送入12,它需要包括初步对查询的判断。12判断查询是否成功,利用查询所得的数据判断取票、购票和退票是否成功,是事务处理中心,若取票操作成功则将数据送13,不成功则将数据送14。13准备回送数据,准备取票确认后需回送客户端程序数据,送16。14确定原因,由查询数据判断取票、购票、退票不能确认的原因,送15。15准备回送数据,根据不成功的原因,准备需回送客户端程序的数据,送16。16准备网络数据包,将数据准备/加密成网络

14、传输包。17网络数据传送,将数据包经网络发送到服务器程序,它是程序与网络的接口。以上显示的各模块由于事务流处理上的便利,将有些功能模块拆分到各事务流中。3.2总体结构和模块外部设计下面以结构图来描述火车站售票系统的软件总体结构。框内标明了模块的名字:方块之间的直线表示模块的调用关系。3.2.1 客户端部分火车站售票系统(客户端部分)接收输入数据联络服务器输出数据准备订票/购票发送数据准备确认发送数据检验输入读入用户资料读入账单号确定(订票/购票/取票)用户资料订单号订票/购票/取票准备网络数据包解开网络数据包确认操作类型发送数据接收数据订票/购票成功?cccccccccchenggong取票成

15、功?判断错误类型准备输出准备错误信息显示错误准备输出打印订单显示确认打印火车票确认显示火车票订单3.2.2 服务器部分火车站售票系统(服务器部分)接收数据数据处理、查询发送数据判断类型准备SQL判断查询解开数据包数据库操作判断原因接收客户端数据准备返回数据准备返回数据准备数据包发送数据到用户端3.3功能分配客户端程序主要有三大块:接收数据、网络通信及输出部分。服务器程序主要也有三大功能:接收网络数据、数据库操作及发送网络数据部分。服务器程序需与已建立的SQL数据库连接。4接口设计 4.1外部接口4.1.1 用户界面 在用户界面部分,根据需求分析的结果,用户需要一个用户友善界面。在界面设计上,做

16、到简单明了,易于操作,并且注意到界面的布局,应突出显示重要及出错信息。外观上也要做到合理化,考虑到用户多对Windows风格较熟悉,应尽量向这一方面靠拢。在设计语言上,已决定使用C#进行编程,在界面上可使用ASP.NET技术,其中服务器程序界面要做到操作简单,易于管理。在设计上采用下拉式菜单方式。 总的来说,系统的用户界面应做到可靠性、简单性、易学习和使用。4.1.2 软件接口 服务器程序可使用.NET提供的与数据库连接的接口,进行数据库的访问。 服务器程序上可使用Navicate for SQL 对数据库的备份命令,以做到对数据库的保存。 在网络软件接口方面,使用一种无差错的传输协议,采用滑

17、动窗口式对数据进行网络传输及接收。4.1.3 硬件接口在输入方面,对于键盘、鼠标的输入,使用标准输入/输出,对输入进行处理。在输出方面,打印机的连接及使用,也可标准输入/输出对其进行处理。在网络传输部分,在网络硬件部分,为了实现高速传输,将使用高速ATM。4.2内部接口内部接口方面,各模块之间采用函数调用、参数传递、返回值的方式进行信息传递。具体参数的结构将在数据结构设计的内容中说明。接口传递的信息将是以数据结构封装了的数据,以参数传递或返回值的形式在各模块间的传递。5数据结构设计5.1 数据库数据结构设计DBMS的使用上系统将采用SQL,系统主要需要维护7张表:表1 管理员信息字段名称字段类

18、型主键外键是否为空默认值管理员IDVarchar(10)是否否001管理员姓名Varchar(50)否否否Admin管理员密码Varchar(16)否否否无表2 员工字段名称字段类型主键外键是否为空默认值员工IDVarchar(10)是否否100员工姓名Varchar(50)否否否无员工密码Varchar(16)否否否无证件号码Varchar(20)否否否无联系地址Varchar(50)否否否无联系电话Varchar(20)否否否无表3 用户信息字段名称字段类型主键外键是否为空默认值用户IDVarchar(10)是否否10000用户密码Varchar(16)否否否无证件号码Varchar(20

19、)否否否无真实姓名Varchar(50)否否否无联系地址Varchar(100)否否否无邮政编码Varchar(10)否否否无联系电话Varchar(20)否否否无表4 订单信息字段名称字段类型主键外键是否为空默认值订单号Varchar(10)是否否10000乘车日期Datetime否否是无车次Varchar(10)否是是无始发站Varchar(10)否否是无终点站Varchar(10)否否是无席别Varchar(10)否否是无票种Varchar(10)否否是无张数Varchar(5)否否是1备注Varchar(100)否否是无表5 列车信息表字段名称字段类型主键外键是否为空默认信息始发站Va

20、rchar(10)否否是无车次Varchar(10)是否否无终点站Varchar(10)否否是无发车时间Datetime否否是无停靠站Varchar(10)否否是无到站时间Datetime否否是无票种Varchar(10)否否是无表6 火车票表字段名称字段类型主键外键是否为空默认信息票种Varchar(10)是否否无车次Varchar(10)否是否无张数Varchar(10)否否是1表7 送票者信息表字段名称字段类型主键外键是否为空默认信息送票者IDVarchar(10)是否否无送票者姓名Varchar(50)否否否无5.1逻辑结构设计5.2物理结构设计5.3数据结构与程序的关系6运行设计6.

21、1运行模块的组合用户端程序在有输入时启动接收数据模块,通过各模块之间的调用,读入并对输入进行格式化。在接收数据模块得到充分数据时,将调用网络传输模块,将数据通过网络送到服务器,并等待接受服务器返回的信息。接收到返回信息后随时即调用数据输出模块,对信息进行处理,产生相应的输出。 服务器程序的接收网络数据模块必须始终处于活动状态。接收到数据后,调用数据处理/查询模块对数据库进行访问,完成后调用网络发送模块,将信息返回用户端。6.2运行控制运行控制将严格按照各模块间函数调用关系来实现。在各事务中心模块中,需对运行控制进行正确的判断,选择正确的运行控制路径。在网络传输方面,用户端在发送数据后,将等待服

22、务器的确认收到信号,收到后,再次等待服务器发送回答数据,然后对数据进行确认。服务器在接到数据后发送确认信号,在对数据处理、访问数据库后,将返回信息回送用户端,并等待确认。6.3运行时间在需求分析中,对时间的要求必须对作出的操作有较快的反应。网络硬件对运行时间有最大的影响,当网络负载量大时,对操作反应将受到很大的影响。所以将采用高速ATM(异步传输模式)网络,实现用户端与服务器之间的连接,以减少网络传输上的开销。其次是服务器的性能,这将影响对数据库访问时间即操作时间的长短,影响加大客户机操作的等待时间,所以必须使用高性能的服务器。软件对本系统的速度影响将会大于硬件的影响。7出错处理设计7.1出错

23、输出信息程序在运行时主要会出现两种错误:(1)由于输入信息,或无法满足要求时产生的错误,称为软错误。(2)由于其他问题,如网络传输超时等,产生的问题,称为硬错误。 对于软错误,须在订票、购票、退票和取票操作成功判断及输入数据验证模块由数据进行数据分析,判断错误类型,再生成相应的错误提示语句,送到输出模块中。对于硬错误,可在出错的相应模块中输出简单的出错语句,并将程序重置。返回输入阶段。 出错信息必须给出相应的出错原因,例:“该列火车已满!”,“查无此信息!”等等。7.2出错处理对策所有的用户端及服务器都必须安装不间断电源以防止停电或电压不稳定造成的数据丢失的损失。若真断电时,用户端将不会有太大

24、的影响,主要是服务器上:在断电后恢复过程可采用SQL SERVER的日志文件,对其进行ROLLBACK处理,对数据进行恢复。 在网络传输方面,可考虑建立一条成本较低的后备网络,以保证当主网络断路时数据的通信。 在硬件方面要选择叫可靠、稳定的服务器机种,保证系统运行的可靠性。8.安全保密设计由于数据的传输上需要通过网络传输,为了用户资料进行保密,需要在网络的传输过程中对数据进行加密。 这个工作主要是在准备网络包,及解开网络包这两个模块完成,它们对数据进行加密及解密还原工作。 在加密算法选择上将使用RSA加密算法。9.维护设计 维护方面主要为对服务器上的数据库数据进行维护。可使用SQL SERVER的数据库维护功能机制。例如,定期对数据库进行Backup,维护管理数据库死锁问题和维护数据库内数据的一致性问题。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1