火车站售票系统需求分析

  • 格式:doc
  • 大小:105.50 KB
  • 文档页数:9

课程设计名称: 数据库设计

专 业 班 级 :

学 生 姓 名 :

指 导 教 师 :王

课程设计时间:2011年06月

信息工程专业课程设计任务书

目录

一.需求分析

3

(1) 功能需求

3

售票功能

3

查询功能

3

调度功能

3

维护功能

3

统计功能

4

(2 )数据流图

4

数据字典

4

二.概念结构设计

5

E—R图

5 三. 逻辑结构设计

5

关系模式

5

外模式

6

四.物理结构设计

8

(1)实验环境:

8

(2)系统软件结构图:

8

一.需求分析

系统应具有售票、查询、管理和维护等功能,系统管理员可以进行对车次的更改、票价的变动及调度功能,票价的修改可以通过修改运价来进行,车次调度可通过对发车时刻表的修改来进行,维护功能即可对表进行修改。

(1) 功能需求

经过分析后确定系统应具备以下功能:

(1) 售票功能

1 销售车票

任一售票员均可以售权限范围内车次的客票,权限可按

班次、车属等属性由管理员设置。可售全票、半票。

2 退票

退票时由退票员输入客票的编号,计算机将根据退票时的时间,自动确定退票手续费的比例,也可由系统管理员指手续费比例。

对不合法的客票(如已办理退票手续的客票、超过规定时间的客票、没有售出的客票、已经作废的客票、不属于权限范围内售出的票等),计算机将自动识别,不予退票。 3 改签

顾客需要更改车票,把原本的车票退掉,然后在销售给顾客他所余的车票,价格方面多退少补。

(2) 查询功能

1 车次查询,可以查询各个班次和票情况。

2 时刻表查询:查询任一时刻的班次和票情况。

3 售票情况查询:查询已售票和剩余票数的情况 。

4 退票查询: 查询退票历史记录。

(3)、调度功能

1 运价修改:只有管理员有这一权限,根据各种调整票价。

2 车辆修改:对车辆信息进行调度和增删改功能。

3 终点站修改:对车次终点站的调度和修改。

4 车次修改:对各个车次实施调度和调整

(4)、维护功能

1 车票表修改:管理员针对实际情况对车票表的修改和维护

2 预订车票表修改:管理员根据车票的预定情况对该表进行修改和维护

3 退票表修改:该功能由管理员根据退票情况进行修改

4 密码修改:售票员可以根据个人修改自己的登入密码

(5)、统计功能

1 售票统计:可按车次,售票员对已售出票情况进行统计

2 报表打印:对当天和该月的售票情况及盈利情况做表

(2 )数据流图

车次表

使用结构化分析方法,确定系统的数据主要是运价、车次、终点站名、发车时间和车票,对数据的操作主要有运价修改、车次修改、终点站修改、发车时间修改、售票及打印,可以确定系统的处理逻辑和流程,得到如下所示的系统数据流图。 退票

退票表

退票后写入

决定

退票后删除售票表数据

改签

售票表

车次修改

着关系

先退

运价表

运价修改

修改 决定

改票

售票

售票员

出售车票

发车修改

系统管理员

修改

修改

修改

发车时刻表 终点站名表

终点站修改

决定

决定

数据字典:

经过分析可以得到以下数据流条目:

车辆表=车次+车辆编号+车型+座位数

终点站名表=车站编号+站名+里程

发车表=车次+车站编号+发车时间+到达时间

售票表=票号+乘车日期+车次+票价+半价+工号+车站编号+座位类型

退票表=票号+退票时间+票价+应退款

售票员编号=工号+姓名+密码

车票表=车次+车站编号+座位类型+票价+车厢号+座位号

发车表+车次+车站编号+出发时间+到达时间

二.概念结构设计

E—R图:

车辆编号

到达时间

出发时间

里程

车型

车次

车 票

计费

车站名

座位数

车辆

站点

开往

车站编号

m n

乘车日期 1 1

车站编号

售票

姓名

座位类型

售票员

密码

m m

退票

票价

车次

n

工号

车厢号

座位号

应退款

退票时间

票价

车厢号

三. 逻辑结构设计

1) 关系模式

主键“ ”;

外键“ ”;

主键加外键“ ”;

1. 车辆表(车次,车辆编号,车型,座位数)

2. 发车表(车次,车站编号,出发时间,到达时间)

3. 站点表(车站编号,车站名,里程)

4. 售票员(工号,姓名,密码)

5.

售票表(票号,工号,车次,车站编号,座位类型,半价,票价,乘车日期)

6. 车票表(车次,车站编号,座位类型,票价,车厢号,座位号,)

7. 退票表(票号,退票时间,票价,应付款) 1) 外模式:

车辆表:

字段名 类型 长度 小数点 允许空 主/外键

车次(trainID) varchar 15 主

车辆编号(trainNumber) varchar 15

车型(trainType) Varchar 15

座位数(seatSum) Int

发车表:

字段名 类型 长度 小数点 允许空 主/外键

车次(trainID) Varchar 15 非 主,外

车站编号(stationID) Varchar 15 非 主,外

出车时间(startTime) Time

到达时间(arrivedTime) Time

站点表:

字段名 类型 长度 小数点 允许空 主/外键

车站编号(stationID) Varchar 15 非 主

车站名(stationName) Varchar 30

里程(tange) Int

售票员表:

字段名 类型 长度 小数点 允许空 主/外键

工号(empID) Varchar 15 非 主

姓名(empName) varchar 15

密码(empPassword) Varchar 20

8. 售票表:

字段名 类型 长度 小数点 允许空 主/外键 票号(ticketID) Varchar 15 非 主,外

工号(empID) Varchar 15 非 外

车次(trainID) Varchar 15 主,外

车站编号(stationID) Varchar 15 非 外

车厢号(carriageNumber) Varchar 15

座位号(seatNumber) Varchar 15

座位类型(ticketType) Varchar 15

乘车日期(rideTime) Datetime 非

车票表:

字段名 类型 长度 小数点 允许空 主/外键

车次(trainID) Varchar 15 非 主,外

车站编号(stationID) Varchar 15 非 主,外

票价(ticketPrice) Decimal 10 2

车厢号(carriageNumber) Varchar 15

座位号(seatNumber) Varchar 15

座位类型(seatType) varchar 15

退票表:

字段名 类型 长度 小数点 允许空 主/外键

票号(ticketID) Int 4 非 主,外

退票时间(returnTime) Datetime 非

票价(ticketPrice) Decimal 10 2 非

应退款(shouldPay) Decimal 10 2 非

四.物理结构设计 (1)实验环境:

WindowsXP,jsp,mysql

(2)系统软件结构图:

火车站售票管理系统

售票系统 查询系统 调度功能 维护功能 统计功能

销 改 退 车 时 售 运 车 终

车 已 退 售 报

售 签 票 次 刻 票 价 辆 点

次 售 票 票 表

车 查 查 情 修 修 站

修 车 表 系 打

票 询 询 况 改 改 修

改 票 统 印

查 改 表

五.程序模块设计