火车站售票系统需求分析
- 格式: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)系统软件结构图:
火车站售票管理系统
售票系统 查询系统 调度功能 维护功能 统计功能
销 改 退 车 时 售 运 车 终
车 已 退 售 报
售 签 票 次 刻 票 价 辆 点
次 售 票 票 表
车 查 查 情 修 修 站
修 车 表 系 打
票 询 询 况 改 改 修
改 票 统 印
查 改 表
询
五.程序模块设计