铁路售票管理系统软件设计方案.docx
- 文档编号:8387185
- 上传时间:2023-01-31
- 格式:DOCX
- 页数:77
- 大小:751.13KB
铁路售票管理系统软件设计方案.docx
《铁路售票管理系统软件设计方案.docx》由会员分享,可在线阅读,更多相关《铁路售票管理系统软件设计方案.docx(77页珍藏版)》请在冰豆网上搜索。
铁路售票管理系统软件设计方案
铁路售票管理系统软件设计方案
1.1编写目的
本文档的编制的目的是说明对程序系统的设计考虑。
本文档的使用者包括项目管理
人员、软件设计人员、软件质量控制人员以及软件维护人员。
1.2背景
软件系统的名称:
铁路售票管理系统
本软件产品是一项独立的软件,而且全部内容自含。
实现网络化铁路售票管理。
一般用户、售票员、系统管理员等用户都可以通过上网来进行铁路车票业务的管理,实现网络化售票业务。
构建标准的铁路车票,火车管理基础数据库。
构建起火车信息,车票信息,特殊用户信息等基础数据库。
实现列车及车票信息查询、登录系统及信息管理、车票的销售与退票列车及车票管理等子系统的流程化管理。
开发者:
哈工大计算机学院05级2班开发小组;
用户:
一般用户(旅客等),售票员,系统管理员
设计说明书的书写者:
哈工大计算机学院05级2班开发小组
1.3定义
术语名称(缩写)
术语全称
含义
C/S
Client/service
客户端/服务端结构
最终用户
最终用户
系统开发后的最终使用者
一般用户
一般用户
需购买火车票进行业务的人群即旅客
售票员
售票员
车站及代售点的所有售票员
系统管理员
系统管理员
具有对不同用户进行管理,输入用户的各种信息、管理用户权限、
维护数据库等权限的用户
2系统需求概述
2.1业务目标
实现网络化铁路售票管理。
一般用户、售票员、系统管理员等用户都可以通过上网来进行铁路车票业务的管理,实现网络化售票业务。
构建标准的铁路车票,火车管理基础数据库。
构建起火车信息,车票信息,特殊用户信息等基础数据库。
实现列车及车票信息查询、登录系统及信息管理、车票的销售与退票列车及车票管理等子系统的流程化管理。
2.2运行环境及设计约束
设备:
采用Intel应用服务器
运行时内存要求:
1MB;
安装所需硬盘:
5MB;
操作系统:
Windows2000/XP/Vista
支持软件:
SQLServer2008,Eclipse
设计约束:
(1)系统的开发必需采用B/S的体系结构
(2)能够在intelX86系统芯片组正常使用,保证双核CPU下同样能够正常使用。
(3)提供与售票站点(包括火车站及代售点)的铁路售票系统接口
(4)使用JAVA编程语言及SQL数据库来进行系统实现
(5)遵循GB8566计算机软件开发规范
(6)遵循GB8567计算机软件产品开发文件编制指南
(7)遵循GB/T11457软件工程术语
2.3功能需求
铁路售票管理系统包括四个子系统:
列车信息及车票信息查询系统,登录系统及信息管理系统,火车票销售及退票系统,列车及车票管理系统。
●列车信息及车票查询系统
Ø列车查询按车次或目的站信息来查询列车的静态信息
Ø车票查询按车次或目的站信息来查询车票的静态信息
Ø车次查询按已知车次来查询列车及车票信息
Ø目的站查询按已知目的站来查询需要的列车及车票信息
●登录系统及信息管理子系统
Ø一般用户登录一般用户进行登录系统界面
Ø售票员登录售票员输入用户名与密码进行登录系统,获得售票员应有的售票系统相关的权限
Ø系统管理员登陆系统管理员输入用户名与密码进行登录系统,获得系统管理员应有的售票系统相关的权限
Ø信息管理售票员及系统管理员对自己的个人信息如密码,工作单位等进行修改,管理
Ø增加售票员系统管理员对售票员进行增加,赋予其售票权限
Ø删除售票员系统管理员对售票员进行删除,取消其售票权限
●车票的销售与退票子系统
Ø车票销售根据旅客要求的车次及日期进行车票的销售
Ø车票退票根据旅客退票要求进行退票
●列车及车票管理子系统
Ø列车增加系统管理员向整个铁道部增加火车线路,增加火车
Ø列车删除系统管理员对已存在路线进行取消,删除列车
Ø车票填充将某一日期的可销售的火车票数量增加
Ø车票删除将某一日期过期的可销售的火车票数减少,清0
2.4非功能性需求
(1)系统应具有开放性:
考虑到铁路部门的运行不仅与各区域相关,受区域管辖,调配,而且它必须受国家铁路中心集中管辖,在特定的时期国家需采取特殊措施,对整个国家内的各子区域进行宏观调控,对整个铁路运输进行合理调度,尽量使旅客达到满意程度。
本系统必须具有良好的开放性,既要满足现有集成需求,又要为将来系统的扩展预留接口。
(2)应随着铁路售票部门业务的不断完善,系统的更新势在难免,因此系统应该具有
很好的跨平台性、可维护性、可扩充性、易使用性。
当用户需求,如操作方式、运行环境、
数据结构以及其他软件接口等发生变化时,设计的软件要求能做适当的调整。
(3)系统应具有高可靠性:
系统在功能完整的同时,应具有良好的可靠性。
作为支持铁路售票部门的工作,有效调度区域的铁路客运,系统必须具有高效可靠性,以保证数据的安全和系统的稳定运行。
(4)系统对用户操作的相应时间应小于1秒,最终用户对时间具有较高的要求,如查询列车信息及车票信息时,需要较快的查询速度,否则会给最终用户带来不便。
(5)系统应易于操作和维护:
系统应面向用户进行设计。
系统的使用者对计算机了解
程度不同,因此系统的操作应该尽量简单、方便,用户界面友好,使用户能够易学易用。
(6)系统应具有较强的安全保密性:
系统应提供安全可靠的数据存储服务,拒绝未被
授权的人员访问、篡改数据信息的企图,而只向被授权的用户提供与其权限一致的数据服务。
3系统设计
3.1功能模块清单
铁路售票管理系统的设计类清单:
表1设计类清单
层次名称
模块名称
模块类型
模块功能的简要描述
用户界面层
trainTicketQueryInterface
边界类
按车次或目的站方式来查询列车火车票信息的查询界面
logInInterface
边界类
最终用户登录界面
ticketSalerInterface
边界类
售票员界面
administratorInterface
边界类
系统管理员界面
ticketsManagingInterface
边界类
售票员票务管理界面
trainAndTicketsManagerInterface
边界类
列车及车票管理界面
业务逻辑层
informationManager
控制类
信息管理
ticketsManager
控制类
车票管理
TrainAndTicketsManager
控制类
列车及车票管理
数据层
AllTrainInfo
实体类
所有列车的总表信息
SingalTrainInfo
实体类
单车的列车相关信息
Tickets
实体类
车票的相关信息
ticketSaler
实体类
售票员的个人信息
administrator
实体类
系统管理员的个人信息
3.2体系结构设计
通过对系统功能目标、用户群以及数据需求的分析,考虑到铁路售票管理系统流程涉及范围广泛、基本数据表现形式多样等特点,本系统采用C/S方式的体系结构。
对于系统中的大多数用户如一般用户,主要以信息查询为主,主要利用该软件查询列车及车票信息。
且售票员及系统管理员需要对列车及车票等信息进行处理,更改,故总体而言最终用户对软件的运行速度要求较高,故采用C/S方式来构架铁路管理系统,而且利用服务器实现信息查询与检索。
保证了其应用的通用性和跨平台性。
并且维护和升级工作都在服务器端进行,不许对客户端进行任何改变,故大大降低了开发和维护成本使用简单、界面友好,所有的用户界面都统一在用户界面端上消肿,客户端不再负责数据库的存取以及复杂数据的计算等任务,只负责显示,让中间业务逻辑层担负数据存储及复杂数据计算等任务,充分发挥了业务逻辑层服务器的强大作用,这样就大大降低了对客户端的要求。
系统灵活,系统的三部分模块各自相对独立使得修改更容易,可以用不同厂家的产品来组成性能更加的系统保障系统的安全性适用于信息发布,这使得传统系统的功能有所扩展。
用户表示层图1
业务逻辑层图2
数据访问层图3
C/S方式的三层结构它将应用程序结构划分三层独立的包,包括用户表示层、业务逻辑层、数据访问层。
其中将实现人机界面的所有表单和组件放在表示层,将所有业务规则和逻辑的实现封装在负责业务逻辑组件中,将所有和数据库的交互封装在数据访问组件中。
表示层提供最终用户的的用户界面。
包括窗体主要用于最终客户端应用程序和技术
主要用于一般用户(旅客),售票员及系统管理员与铁路售票系统交互的使用,进行列车及车票信息查询界面,及售票员售票,退票业务界面等功能。
业务层抽象出主要的业务逻辑有按车次或目的站进行列车及车票信息查询、最终用户登录、个人信息管理、售票员售票退票业务的管理、系统管理员对列车及车票的管理及系统维护。
数据层主要利用实现对数据的操作,负责将存储在这些数据库中的数据公开给业务层。
数据访问包中包含的类及其之间的关系如图2所示(其他包中包含的类及其之间的关系略)。
所有的数据访问类都定义了一个基类DBCommon,该基类包含属性DBConnectionString,通过该属性可以获得数据库连接字符串。
还包括一个方法GetDataView,可以实现在数据库中执行查询获得一个DataView。
这些属性和方法被所有的数据访问类继承,可以直接使用。
这些数据层的类包括员工类及其衍生的售票员类及系统管理员类,主要存储员工类子类的个人信息记录及一些权限信息,火车类主要存储列车的总体列表信息及单车的所有车次及车票的相关信息。
3.3功能模块与需求之间的追溯关系
系统中各个功能模块与需求之间的追溯关系如表2—4所示。
表2功能需求与功能模块之间的追溯关系
trainTicketQuery
Interface
login
Interface
ticketSaler
Interface
administratorInterface
ticketsManaging
Interface
列车及车票信息查询
√
登录系统及信息管理
√
车票的销售与退票
√
√
√
列车及车票管理
√
√
表3功能需求与功能模块之间的追溯关系
trainAndTickets
ManagerInterface
information
Manager
tickets
Manager
trainAndTickets
Manager
列车及车票信息查询
登录系统及信息管理
√
车票的销售与退票
√
列车及车票管理
√
√
表4功能需求与功能模块之间的追溯关系
train
tickets
ticketSaler
administrator
列车及车票信息查询
√
√
登录系统及信息管理
√
√
√
√
车票的销售与退票
√
√
√
列车及车票管理
√
√
√
3.4接口设计
3.4.1用户接口
系统中用户及使用的功能如下:
(1)一般用户(旅客):
通过查询界面,来获得列车及车票信息。
(2)售票员:
通过登录界面,进入到售票员界面,可以进行信息更新及进行售票员权限内的查询及售票,退票操作。
(3)系统管理员:
通过登录界面,进入系统管理员界面,可以进行信息更新,对列车进行增删及对车票进行增删,及对售票员权限进行控制,添加或删除售票员操作及维护数据库等。
系统中用户及使用的功能模块清单如表5所示。
表5系统中用户及使用的功能模块清单
用户
模块
使用方式
输入信息
反馈信息
一般用户
列车及车票信息查询界面
图形化界面
车次或目的站
最终反馈单车信息或车票信息
售票员
列车及车票信息查询界面
图形化界面
车次或目的站
最终反馈单车信息或车票信息
登录界面
图形化界面
用户名,密码
售票员界面
售票员界面
图形化界面
个人信息
更新后的个人信息
车票管理界面
图形化界面
车次或目的站
车票数目增加或减少相应数目
系统管理员
列车及车票信息查询界面
图形化界面
车次或目的站
最终反馈单车信息或车票信息
登录界面
图形化界面
用户名,密码
系统管理员界面
系统管理员界面
图形化界面
个人信息及售票员工号
更新后的个人信息及增加或删除售票员
列车及车票管理界面
图形化界面
列车车次及列车与车票信息
增加或删除列车或车票,进行数据库更新
3.4.2与其他软件、硬件的接口
本系统同外界的其他应用软件、硬件之间的接口:
(1)与铁路财务处的财务系统的接口。
●接口实现方式:
web服务
●接口数据传递:
铁路售票部门必须向当地铁路财务处的财务系统提供员工(售票员及系统管理员)的个人信息
具体数据结构:
售票员信息(用户ID用户密码用户姓名工资工号工作表现等)
系统管理员信息(用户ID用户密码用户姓名工资工号工作表现等)
当地铁路财务处的财务系统提供员工(售票员及系统管理员)工资信息及奖金信息
具体数据结构
员工工资信息(用户ID用户姓名工号工资奖金等)
●通讯协议:
HTTP
(2)与全国的整个铁路部门的售票系统的接口。
●接口实现方式:
web服务
●接口数据传递:
1)铁路售票管理系统须向全国整个铁路售票系统提供该地区的火车售票信息来让其宏观控制该地区的列车数量,调节整个客运流的情况。
具体数据结构:
列车的信息表(车次,终到时间,类别,空调,途经站,始发站,发车时间,硬座总数,软座总数硬卧总数,软卧总数,途经发车时间,途经到达时间,硬座价格,软座价格硬卧价格,软卧价格,里程)
车票的信息表(车票编号车次发车时间始发站车厢号车位号类别硬座当前票数软座当前票数硬卧当前票数软卧当前票数当前票总数总金额)
当前火车站客流量(滞留人数,目的站)
2)全国整个铁路售票系统向该地区提供新增列车情况及增加目的站为该地的火车情况
具体数据结构:
列车的信息表(车次,终到时间,类别,空调,途经站,始发站,发车时间,硬座总数,软座总数硬卧总数,软卧总数,途经发车时间,途经到达时间,硬座价格,软座价格硬卧价格,软卧价格,里程)
车票的信息表(车票编号车次发车时间始发站车厢号车位号类别硬座当前票数软座当前票数硬卧当前票数软卧当前票数当前票总数总金额)
●通讯协议:
HTTP
本系统与各支持软件之间的接口。
●与操作系统之间:
由于采用.NetFramework所提供的类库为接口,因此不直接访问操作系统API。
●与中间件之间:
采用web服务和com技术对组件进行封装。
●与数据库之间:
采用的是SQLServer2005数据库,数据层利用ADO.NET实现对数据的操作。
3.5系统物理设计
系统的配置图如图所示。
用户界面包安装在Web服务器,业务逻辑包安装在应用服务器,数据访问包安装在数据库服务器。
数据库服务器与应用服务器通信,并向其提供数据库服务。
应用服务器与Web服务器通信,并向其提供应用服务。
从而实现多级分布的部署方式,实现更好的可伸缩性和安全性,满足C/S应用系统的需求。
铁路售票管理系统的配置图:
图4铁路售票管理系统的配置图
4对象设计
4.1系统对象模型
根据整个铁路售票管理系统总的分析,将列车及车票信息查询子系统,登录系统及信息管理子系统,车票的销售与退票子系统,列车及车票管理子系统等子系统划分为如下几个实体类:
用户类,列车类,车票类,登录类及信息管理类等5大类,根据各系统的功能需求及实现要求,将各子系统中的操作函数划分到5大类中,来合理实现系统的要求,从而完成整个系统。
4.1.1铁路售票系统总类图:
图5 铁路售票管理系统总类图
4.1.2用户类及类图
系统中的用户类,可以划分为一般一般用户,售票员和系统管理人员类,它们都是人员类的子类,继承人员类的所有属性和方法。
由于一般用户的信息无须记录,任何人都可以使用此软件,故一般用户信息无须存储。
各用户类说明如下:
表用户类说明
类名
属性概述
属性
方法
Staff
人员类,用于人员管理
ID
getID
setID
password
getpassword
setpassword
username
getUsername
setUsername
salary
getSalary
trainQueryNumber()
trainQueryDest()
ticketQueryNumber()
ticketQueryDest()
ticketSaler
售票员
workNumber
ticketsSell()
ticketsRefund()
administrator
系统管理员
addTicketsSaler()
deleteTicketsaler()
findTicketsSaler()
modifySalerInfo()
addTrain()
deleteTrain()
addTickets()
deleteTickets()
setSalary()
图6用户类及其子类类图
4.1.3列车类、车票类及登陆类
类名
用途概述
属性
方法
train
火车的总体信息及单列火车的信息,及获得火车相关的一些信息
number
getSingleTrainInfo()
arriveTime
kongtiao
tujingzhan
shifazhan
fachetime
yzshu
rzshu
ywshu
rwshu
tjfachetime
tjdaodatime
yzprice
rzprice
ywprice
rwprice
licheng
type
ticket
单列火车车票的信息,及获得车票相关的一些信息
bianhao
number
fachetime
shifazhan
chexiangnum
cheweinum
yznumber
rznumber
ywnumber
rwnumber
totalNumber
totalMoney
type
logIn
软件主界面,包括用户登录、最终用户查询功能
ID
administratorLogIn()
password
ticketsSalerLogIn()
zhongdianzhan
ticketsList()
number
errorWarning()
4.2对象描述
4.2.1火车类train
名称:
train
用途:
火车类,火车各类信息存储及获取
持久性:
需要永久存储;
属性描述:
属性名
属性作用
可见性
数据类型
缺省值
约束条件
number
车次
private
int
“”
不空,值唯一
arriveTime
终到时间
private
time
“”
2008<=year
1<=month<=12
1<=day<=31
0<=hour<=23
0<=minitue<=59
0<=second<=59
kongtiao
空调
private
string
“”
不空,值唯一
tujingzhan
途经站
private
string
“”
shifazhan
始发站
private
string
“”
不空,值唯一
fachetime
发车时间
private
time
“”
2008<=year
1<=month<=12
1<=day<=31
0<=hour<=23
0<=minitue<=59
0<=second<=59
yzshu
硬座总数
private
int
“”
>=0
rzshu
软座总数
private
int
“”
>=0
ywshu
硬卧总数
private
int
“”
>=0
rwshu
软卧总数
private
int
“”
>=0
tjfachetime
途经发车时间
private
time
“”
2008<=year
1<=month<=12
1<=day<=31
0<=hour<=23
0<=minitue<=59
0<=second<=59
tjdaodatime
途经到达时间
private
time
“”
2008<=year
1<=month<=12
1<=day<=31
0<=hour<=23
0<=minitue<=59
0<=second<=59
yzprice
硬座价格
private
int
“”
>=0
rzprice
软座价格
private
int
“”
>=0
ywprice
硬卧价格
private
int
“”
>=0
rwprice
软卧价格
private
int
“”
>=0
licheng
里程
private
int
“”
>=0
type
车的类型
private
string
“”
不空,值唯一
操作描述:
操作名:
getSingleTrainInfo
操作用途:
通过车次在列车列表中获得单车信息
可见性:
public
参数列表:
车次:
number
返回值类型:
bool
前置条件:
该车次在数据库中存在,即number对应列车信息在数据库中存在
后置条件:
显示出单车的信息
读取的属性:
numberjintingzhanleibiezhongdianzhanstartzhantjfachetime
tjdaodatimefachetimezhongdaotimeyzpricerzpriceywprice
rwpricelicheng
修改的属性:
无
该操作调用的
其他操作
trainQueryNumber
调用该类的
其他操作:
无
处理逻辑概
述:
通过number查询该单车数据库中是否存在,如果存在则返回火车的车次,始发站,终点站,及座位价格等信息,否则返回NULL。
4.2.2车票类
名称:
train
用途:
火车类,火车各类信息存储及获取
持久性:
需要永久存储;
属性描述:
属性名
属性作用
可见性
数据类型
缺省值
约束条件
bianhao
车票编号
private
int
“”
不空,值唯一
number
车次
private
int
“”
不空,值唯一
fachetime
发车时间
private
time
“”
2008<=year
1<=month<=12
1<=day<=31
0<=hour<=23
0<=
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 铁路 售票 管理 系统软件 设计方案